diff --git a/.factorypath b/.factorypath new file mode 100644 index 0000000..22b58cf --- /dev/null +++ b/.factorypath @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..f811f6a --- /dev/null +++ b/.gitattributes @@ -0,0 +1,5 @@ +# Disable autocrlf on generated files, they always generate with LF +# Add any extra files or paths here to make git stop saying they +# are changed when only line endings change. +src/generated/**/.cache/cache text eol=lf +src/generated/**/*.json text eol=lf diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2ded9a7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,27 @@ +# eclipse +bin +*.launch +.settings +.metadata +.classpath +.project + +# idea +out +*.ipr +*.iws +*.iml +.idea + +# gradle +build +.gradle + +# other +eclipse +run + +# Files from Forge MDK +forge*changelog.txt +/.apt_generated/ +/Users/ diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..0c24f84 --- /dev/null +++ b/build.gradle @@ -0,0 +1,171 @@ +buildscript { + repositories { + maven { url = 'https://files.minecraftforge.net/maven' } + jcenter() + mavenCentral() + maven {url='https://dist.creeper.host/Sponge/maven'} + } + dependencies { + classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '3.+', changing: true + classpath 'org.spongepowered:mixingradle:0.7-SNAPSHOT' + } +} +apply plugin: 'net.minecraftforge.gradle' +// Only edit below this line, the above code adds and enables the necessary things for Forge to be setup. +apply plugin: 'eclipse' +apply plugin: 'maven-publish' +apply plugin: 'org.spongepowered.mixin' + +version = '1.0' +group = 'redd90.betternether' // http://maven.apache.org/guides/mini/guide-naming-conventions.html +archivesBaseName = 'betternether' + +sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8' // Need this here so eclipse task generates correctly. + +println('Java: ' + System.getProperty('java.version') + ' JVM: ' + System.getProperty('java.vm.version') + '(' + System.getProperty('java.vendor') + ') Arch: ' + System.getProperty('os.arch')) +minecraft { + // The mappings can be changed at any time, and must be in the following format. + // snapshot_YYYYMMDD Snapshot are built nightly. + // stable_# Stables are built at the discretion of the MCP team. + // Use non-default mappings at your own risk. they may not always work. + // Simply re-run your setup task after changing the mappings to update your workspace. + mappings channel: 'snapshot', version: '20201028-1.16.3' + // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable. + + accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') + + // Default run configurations. + // These can be tweaked, removed, or duplicated as needed. + runs { + client { + property 'mixin.env.disableRefMap', 'true' + workingDirectory project.file('run') + arg "-mixin.config=betternether.mixins.json" + + // Recommended logging data for a userdev environment + property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP' + + // Recommended logging level for the console + property 'forge.logging.console.level', 'debug' + + mods { + betternether { + source sourceSets.main + } + } + } + + server { + property 'mixin.env.disableRefMap', 'true' + workingDirectory project.file('run') + arg "-mixin.config=betternether.mixins.json" + + // Recommended logging data for a userdev environment + property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP' + + // Recommended logging level for the console + property 'forge.logging.console.level', 'debug' + + mods { + betternether { + source sourceSets.main + } + } + } + + data { + property 'mixin.env.disableRefMap', 'true' + workingDirectory project.file('run') + arg "-mixin.config=betternether.mixins.json" + + // Recommended logging data for a userdev environment + property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP' + + // Recommended logging level for the console + property 'forge.logging.console.level', 'debug' + + // Specify the modid for data generation, where to output the resulting resource, and where to look for existing resources. + args '--mod', 'betternether', '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/') + + mods { + betternether { + source sourceSets.main + } + } + } + } +} + +// Include resources generated by data generators. +sourceSets.main.resources { srcDir 'src/generated/resources' } + +repositories{ + maven {url = "https://repo.spongepowered.org/maven/"} + maven {url = 'https://dist.creeper.host/Sponge/maven'} +} + +dependencies { + // Specify the version of Minecraft to use, If this is any group other then 'net.minecraft' it is assumed + // that the dep is a ForgeGradle 'patcher' dependency. And it's patches will be applied. + // The userdev artifact is a special name and will get all sorts of transformations applied to it. + minecraft 'net.minecraftforge:forge:1.16.4-35.1.13' + compile 'org.spongepowered:mixin:0.8' + // You may put jars on which you depend on in ./libs or you may define them like so.. + // compile "some.group:artifact:version:classifier" + // compile "some.group:artifact:version" + + // Real examples + // compile 'com.mod-buildcraft:buildcraft:6.0.8:dev' // adds buildcraft to the dev env + // compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env + + // The 'provided' configuration is for optional dependencies that exist at compile-time but might not at runtime. + // provided 'com.mod-buildcraft:buildcraft:6.0.8:dev' + + // These dependencies get remapped to your current MCP mappings + // deobf 'com.mod-buildcraft:buildcraft:6.0.8:dev' + + // For more info... + // http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html + // http://www.gradle.org/docs/current/userguide/dependency_management.html + +} + +// Example for how to get properties into the manifest for reading by the runtime.. +jar { + manifest { + attributes([ + "Specification-Title": "betternether", + "Specification-Vendor": "Redd90", + "Specification-Version": "1", // We are version 1 of ourselves + "Implementation-Title": project.name, + "Implementation-Version": "${version}", + "Implementation-Vendor" :"Redd90", + "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"), + "MixinConfigs": "betternether.mixins.json", + "MixinConnector":"redd90.betternether.mixin.MixinConnector" + ]) + } +} + +// Example configuration to allow publishing using the maven-publish task +// This is the preferred method to reobfuscate your jar file +jar.finalizedBy('reobfJar') +// However if you are in a multi-project build, dev time needs unobfed jar files, so you can delay the obfuscation until publishing by doing +//publish.dependsOn('reobfJar') + +publishing { + publications { + mavenJava(MavenPublication) { + artifact jar + } + } + repositories { + maven { + url "file:///${project.projectDir}/mcmodsrepo" + } + } +} + +mixin { + add sourceSets.main, "${modid}.refmap.json" +} \ No newline at end of file diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..0c5c8ec --- /dev/null +++ b/gradle.properties @@ -0,0 +1,10 @@ +# Sets default memory used for gradle commands. Can be overridden by user or command line properties. +# This is required to provide enough memory for the Minecraft decompilation process. +org.gradle.jvmargs=-Xmx3G +org.gradle.daemon=false +org.gradle.java.home=C:\\Program Files\\Java\\jdk-12.0.2 + +mod_version=1.0 +modid=betternether +mc_version=1.16.4 +forge_version=35.1.13 \ 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 0000000..7a3265e 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..1d5b29f --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.3-bin.zip diff --git a/gradlew b/gradlew new file mode 100644 index 0000000..cccdd3d --- /dev/null +++ b/gradlew @@ -0,0 +1,172 @@ +#!/usr/bin/env sh + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# 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 + ;; + 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" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..f955316 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,84 @@ +@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= + +@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 init + +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 init + +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 + +:init +@rem Get command-line arguments, handling Windows variants + +if not "%OS%" == "Windows_NT" goto win9xME_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* + +: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 %CMD_LINE_ARGS% + +: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! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/src/generated/resources/.cache/cache b/src/generated/resources/.cache/cache new file mode 100644 index 0000000..5dd5e5b --- /dev/null +++ b/src/generated/resources/.cache/cache @@ -0,0 +1,576 @@ +7fa0dfa9a0b883c8254f241fb56628141cc11e22 data/minecraft/advancements/recipes/betternether/anchor_tree_bark_from_anchor_tree_log.json +e0908b06d66f354f1cb63c71fbd3dbb3a559a90d data/minecraft/advancements/recipes/betternether/anchor_tree_button_from_anchor_tree_planks.json +4cfe6eec913915b61570f2510e3580779aa0d87d data/minecraft/advancements/recipes/betternether/anchor_tree_door_from_anchor_tree_planks.json +6cbc1ad2f8d2721f88f89ef3633490ef064735fd data/minecraft/advancements/recipes/betternether/anchor_tree_fence_from_anchor_tree_planks.json +6e03faa68e22c47585cf3773598776ea955ced28 data/minecraft/advancements/recipes/betternether/anchor_tree_gate_from_anchor_tree_planks.json +d4297d4133d379dcc9c3b5455470b17113b412eb data/minecraft/advancements/recipes/betternether/anchor_tree_ladder_from_anchor_tree_planks.json +857d85f42563a74a177343bd228a4f632def8f45 data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_bark.json +ccf18b553c1a6e1359356e8007f9904d5a367e7b data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_log.json +eaa162e38bcd3290bd80d9b6326035a1796e2f34 data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_striped_bark_anchor_tree.json +ae9e98cbc77fd21369e1c8222eb2bc271aea12aa data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_striped_log_anchor_tree.json +6d8ee57db709de01427e8bc85e6b2ef70c371ba5 data/minecraft/advancements/recipes/betternether/anchor_tree_plate_from_anchor_tree_planks.json +66ca4126f5bddbc453e2b8ffc2ae6ecf0b73e60b data/minecraft/advancements/recipes/betternether/anchor_tree_slab_from_anchor_tree_planks.json +502a2aa17f68f9ed34e423638a512e4f3b930121 data/minecraft/advancements/recipes/betternether/anchor_tree_stairs_from_anchor_tree_planks.json +d554380266139f8ab679af1ea1f0ab757c3e3f49 data/minecraft/advancements/recipes/betternether/anchor_tree_trapdoor_from_anchor_tree_planks.json +eb6ecc39361f68110eac821e08a3caf6a54e407e data/minecraft/advancements/recipes/betternether/bar_stool_acacia_from_acacia_slab.json +d746cf14029e90a33ffbdb07bff3e043c7590631 data/minecraft/advancements/recipes/betternether/bar_stool_anchor_tree_from_anchor_tree_slab.json +b724da326a62eedfd7a7caac30f294fdb288e7ba data/minecraft/advancements/recipes/betternether/bar_stool_birch_from_birch_slab.json +54f90ab47281067b6ea7bef0be384e03365c0547 data/minecraft/advancements/recipes/betternether/bar_stool_cincinnasite_from_cincinnasite_slab.json +1ccb9577583c1b683a7454e29fc03c595cde2989 data/minecraft/advancements/recipes/betternether/bar_stool_crimson_from_crimson_slab.json +a013cca84495071abc260d87909d1d0758d1dcd9 data/minecraft/advancements/recipes/betternether/bar_stool_dark_oak_from_dark_oak_slab.json +31775e45e2ee26ee8d45f9c81f9a85ddfaabd491 data/minecraft/advancements/recipes/betternether/bar_stool_jungle_from_jungle_slab.json +16e6e80edf64206c9441ee48d3956ab285f09517 data/minecraft/advancements/recipes/betternether/bar_stool_mushroom_fir_from_mushroom_fir_slab.json +c875c3fbcf4e850232946e97b9f8096f50eb4226 data/minecraft/advancements/recipes/betternether/bar_stool_mushroom_from_mushroom_slab.json +6eadb58dff6537502a80fb604792c5a7911be036 data/minecraft/advancements/recipes/betternether/bar_stool_nether_sakura_from_nether_sakura_slab.json +7b9ae203e930212a286adacd65843c03e44e6077 data/minecraft/advancements/recipes/betternether/bar_stool_oak_from_oak_slab.json +9ede50d1f2bebfc45a5c1f843e6fc883a5a20853 data/minecraft/advancements/recipes/betternether/bar_stool_reeds_from_reeds_slab.json +8d38fb34eb469d52afcbc4aea71efc8953de8d63 data/minecraft/advancements/recipes/betternether/bar_stool_rubeus_from_rubeus_slab.json +8a53cb80a7d70c34e4ad2f145a35a9e09cb09e43 data/minecraft/advancements/recipes/betternether/bar_stool_spruce_from_spruce_slab.json +e4f924aef9df749f4563014d2f0ea376beb0e8bd data/minecraft/advancements/recipes/betternether/bar_stool_stalagnate_from_stalagnate_planks_slab.json +a97a89ce206017f892db439ac6dca41fa34f2c61 data/minecraft/advancements/recipes/betternether/bar_stool_warped_from_warped_slab.json +06134110a19c08b7d6754b1881e4264aba7fbde1 data/minecraft/advancements/recipes/betternether/bar_stool_wart_from_wart_slab.json +2f8549f5732d5f8f0bad05bf92650c988b3b85f5 data/minecraft/advancements/recipes/betternether/bar_stool_willow_from_willow_slab.json +9814c422e15f4e7135ef12c631a0453a2474cd8e data/minecraft/advancements/recipes/betternether/barrel_anchor_tree_from_anchor_tree_planks.json +ca6737e02c516b734cbe570ce167f9a1be4a0368 data/minecraft/advancements/recipes/betternether/barrel_crimson_from_crimson_planks.json +2c24666fe9cc36ffc81e4947a617c37210fbb38d data/minecraft/advancements/recipes/betternether/barrel_mushroom_fir_from_mushroom_fir_planks.json +eb349f6fa10c1f942281c9deb4654764bc87fe5d data/minecraft/advancements/recipes/betternether/barrel_mushroom_from_mushroom_planks.json +d9b29ba067779fdbadaa24cbf5cb1489cd94c9a3 data/minecraft/advancements/recipes/betternether/barrel_nether_sakura_from_nether_sakura_planks.json +e4b4b7c62c7fc190a4630575bb909ce5e257e2ed data/minecraft/advancements/recipes/betternether/barrel_reed_from_reeds_block.json +f1038934bab5c13a247a70e45537a8368dccc371 data/minecraft/advancements/recipes/betternether/barrel_rubeus_from_rubeus_planks.json +ecddc89128e7b5c81718334868486b8ed192c336 data/minecraft/advancements/recipes/betternether/barrel_stalagnate_from_stalagnate_planks.json +b3f310c919e3b845e1dd211e84588aab8c020b82 data/minecraft/advancements/recipes/betternether/barrel_warped_from_warped_planks.json +158a25ada7f229858320ec0ccad2dc7c428f80e7 data/minecraft/advancements/recipes/betternether/barrel_wart_from_wart_planks.json +5c398de1f4e382fd5f19edd97a44f51d2f2f9d29 data/minecraft/advancements/recipes/betternether/barrel_willow_from_willow_planks.json +f3c714628b858404df3fa269e4896fb8cfc31966 data/minecraft/advancements/recipes/betternether/basalt_bricks_from_polished_basalt.json +558d5165fc479400ceda01fb2f286df686d94778 data/minecraft/advancements/recipes/betternether/basalt_bricks_slab_from_basalt_bricks.json +d3e30af21eb0c22ad37c9bc0b55f5f7f18e4c193 data/minecraft/advancements/recipes/betternether/basalt_bricks_stairs_from_basalt_bricks.json +9711de71d6c04fb7cc32db437719931f8e329f1d data/minecraft/advancements/recipes/betternether/basalt_bricks_wall_from_basalt_bricks.json +9a389ea94b61587d6182eb656f6a0d886532ceb3 data/minecraft/advancements/recipes/betternether/basalt_furnace_from_basalt.json +39e789435cf481776519e7179efc454272281c7a data/minecraft/advancements/recipes/betternether/basalt_slab_from_basalt.json +01e809e8e55c390eec8c7600801b793357b06ae1 data/minecraft/advancements/recipes/betternether/basalt_stalactite_from_basalt.json +c3990944bc35cd55fbc4586e06763feaa015083c data/minecraft/advancements/recipes/betternether/blackstone_furnace_from_blackstone.json +669c6a4dfe6d48a172d2a4200ee22cc1582e0f33 data/minecraft/advancements/recipes/betternether/blackstone_stalactite_from_blackstone.json +395c023d2bfef2c526cfa64a7c2561afcb539f05 data/minecraft/advancements/recipes/betternether/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json +ba10e77553891dbaf56ec7e03167a21350dcfe2c data/minecraft/advancements/recipes/betternether/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json +7f56337523422861337a9fec3ad11b1c813171eb data/minecraft/advancements/recipes/betternether/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json +c4b2779c1d196e2275a2058878151475233b7425 data/minecraft/advancements/recipes/betternether/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json +a4e3df2746ec352763ba2e43bb2f054732a96f09 data/minecraft/advancements/recipes/betternether/bone_button_from_bone_block.json +3f313692db7cb0e3b3b29092eaebf0ff139df3dc data/minecraft/advancements/recipes/betternether/bone_plate_from_bone_block.json +26685768695c5e8d1c5c3657c919ecd6f03ef922 data/minecraft/advancements/recipes/betternether/bone_slab_from_bone_block.json +f0138c12723f97a85056c9fa97a95b4be4c2f131 data/minecraft/advancements/recipes/betternether/bone_stairs_from_bone_block.json +86dba2e4af8a781534325c7e660cfab9b0cb7b7b data/minecraft/advancements/recipes/betternether/bone_stalactite_from_bone_block.json +3be954dab4327bbb7cc5f0edb177b871f8a8028e data/minecraft/advancements/recipes/betternether/bone_wall_from_bone_block.json +b4e94cf643aa1792e9750f1e4db3f30578af8832 data/minecraft/advancements/recipes/betternether/bricks_fire_bowl_from_nether_brick_tile_large.json +610e371a395716ebaf584f175eb6e110ab9247f5 data/minecraft/advancements/recipes/betternether/bricks_fire_bowl_soul_from_nether_brick_tile_large.json +16157f417257788b4290cae5cde7197a92d7a9aa data/minecraft/advancements/recipes/betternether/chair_acacia_from_acacia_slab.json +5a4d3f8c8149e26d9bf07f4ebfc312f1f895b3bb data/minecraft/advancements/recipes/betternether/chair_anchor_tree_from_anchor_tree_slab.json +4c5b424be45845f5a9ab43040d10fd2ac6ae21e7 data/minecraft/advancements/recipes/betternether/chair_birch_from_birch_slab.json +a71d9372e93ab77e297ca3cbef8710d41d404da7 data/minecraft/advancements/recipes/betternether/chair_cincinnasite_from_cincinnasite_slab.json +b64299cd91ec89d82a87160750b2862dcf5c99c1 data/minecraft/advancements/recipes/betternether/chair_crimson_from_crimson_slab.json +b75c32828ad4ab5775402266f9172c6c43262c96 data/minecraft/advancements/recipes/betternether/chair_dark_oak_from_dark_oak_slab.json +eab4bc7896d389ff89c4ee656e74ae9172ae8076 data/minecraft/advancements/recipes/betternether/chair_jungle_from_jungle_slab.json +ce9aae5c0878ef71b5ad9eb4a2ed2d3ca537e24b data/minecraft/advancements/recipes/betternether/chair_mushroom_fir_from_mushroom_fir_slab.json +29b20e7a99727720ff6cabe0b017dd4c9a474de6 data/minecraft/advancements/recipes/betternether/chair_mushroom_from_mushroom_slab.json +dd21c7aefcb932417d60cad7b855602aed9131f1 data/minecraft/advancements/recipes/betternether/chair_nether_sakura_from_nether_sakura_slab.json +f4fe67c3c53f43bc1b6bb29ff4c0c25b9406de0f data/minecraft/advancements/recipes/betternether/chair_oak_from_oak_slab.json +84f70714366b30ded4af00ae41aeeeff2ed7c057 data/minecraft/advancements/recipes/betternether/chair_reeds_from_reeds_slab.json +62009596b89a041fa8ec277110db8415e90cf143 data/minecraft/advancements/recipes/betternether/chair_rubeus_from_rubeus_slab.json +e1cb886092f5121a3bcaa371893601ab8ae4f246 data/minecraft/advancements/recipes/betternether/chair_spruce_from_spruce_slab.json +4ca99217f7dd09117da5d79f1e3616a9ef1cfb1d data/minecraft/advancements/recipes/betternether/chair_stalagnate_from_stalagnate_planks_slab.json +cb6dd92322d5b6de7489a184308cb7ad6577759b data/minecraft/advancements/recipes/betternether/chair_warped_from_warped_slab.json +a6c2336b20a1b313bdf44791361954e64b38c753 data/minecraft/advancements/recipes/betternether/chair_wart_from_wart_slab.json +67e6efaeb3488cd87b3398d666993c322662ea12 data/minecraft/advancements/recipes/betternether/chair_willow_from_willow_slab.json +32f6890fd4a422b2d6ac03da363676211c2fdd0a data/minecraft/advancements/recipes/betternether/chest_anchor_tree_from_anchor_tree_planks.json +5ae882826468f245d6ae34b91ccda99af2003c59 data/minecraft/advancements/recipes/betternether/chest_crimson_from_crimson_planks.json +a187d769e8d21960dd0ef0ec54f1381e06970059 data/minecraft/advancements/recipes/betternether/chest_mushroom_fir_from_mushroom_fir_planks.json +f1b89aafa0134d04df6cb319559ec002dc42f48f data/minecraft/advancements/recipes/betternether/chest_mushroom_from_mushroom_planks.json +7eff1734fd205802fc470485def94722c9e72c44 data/minecraft/advancements/recipes/betternether/chest_nether_sakura_from_nether_sakura_planks.json +f5754d382a43543dd7ca841e36bdc9650f8fe5d0 data/minecraft/advancements/recipes/betternether/chest_reed_from_reeds_block.json +48171136b51cd18a8df008e5fa75bc583d9f5a7a data/minecraft/advancements/recipes/betternether/chest_rubeus_from_rubeus_planks.json +2e0439cc573a22468abecd2c981ef3fe58f666a0 data/minecraft/advancements/recipes/betternether/chest_stalagnate_from_stalagnate_planks.json +067ea86cf21e487170ab563fd47fa16562639d2f data/minecraft/advancements/recipes/betternether/chest_warped_from_warped_planks.json +561009e95b75c02cf94360672c1dc5fe7ed26572 data/minecraft/advancements/recipes/betternether/chest_wart_from_wart_planks.json +366ff1d6df7134a69c17a5716de72aab4025ca4f data/minecraft/advancements/recipes/betternether/chest_willow_from_willow_planks.json +0a0a6e27af183fdd35f41883d2ef039e0bec7334 data/minecraft/advancements/recipes/betternether/cincinnasite_fire_bowl_from_cincinnasite_forged.json +2ecb01c4ed595b84857f26851563de87bd976ed5 data/minecraft/advancements/recipes/betternether/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json +08bd7679f24bf1ce336a9eb736352c6ff57f0b09 data/minecraft/advancements/recipes/betternether/cincinnasite_plate_from_cincinnasite_forged.json +e46c2a9f93c902a281105298ddbaec1779930078 data/minecraft/advancements/recipes/betternether/cincinnasite_slab_from_cincinnasite_forged.json +01abae6b3c258278500e6faba3f0592ac78c7723 data/minecraft/advancements/recipes/betternether/cincinnasite_stairs_from_cincinnasite_forged.json +bf310abc746c5fe60b749111ae1d9a3b2920e911 data/minecraft/advancements/recipes/betternether/cincinnasite_wall_from_cincinnasite_forged.json +388652fb1f4d1ea01a4cd51a86296f22901d2078 data/minecraft/advancements/recipes/betternether/crafting_table_anchor_tree_from_anchor_tree_planks.json +d44a3b74001144e39bb2752e1bac9a36fa889d03 data/minecraft/advancements/recipes/betternether/crafting_table_crimson_from_crimson_planks.json +7d3840504f7bde5a7d8d1f51d3db8fbe7680b477 data/minecraft/advancements/recipes/betternether/crafting_table_mushroom_fir_from_mushroom_fir_planks.json +c8be81f64de0d30fed52bbe68c7915c29ac77982 data/minecraft/advancements/recipes/betternether/crafting_table_mushroom_from_mushroom_planks.json +58e55ce242dadc5e52d42df00172b4a6fd3c5e68 data/minecraft/advancements/recipes/betternether/crafting_table_nether_sakura_from_nether_sakura_planks.json +6e4b6618ab6c9bd4050a185f452fdaafd0a5523c data/minecraft/advancements/recipes/betternether/crafting_table_reed_from_reeds_block.json +29b703bf94dc25939731be4b63feb344c6f562ad data/minecraft/advancements/recipes/betternether/crafting_table_rubeus_from_rubeus_planks.json +785fb5559cb04db65ef477f3664d6cd619cd440e data/minecraft/advancements/recipes/betternether/crafting_table_stalagnate_from_stalagnate_planks.json +cad5101df28fccb065113d1900c32b54003ef65e data/minecraft/advancements/recipes/betternether/crafting_table_warped_from_warped_planks.json +aa560078782452112d29bfbcc645f1410f1a0743 data/minecraft/advancements/recipes/betternether/crafting_table_wart_from_wart_planks.json +3616220aea980ba20c5299e027ac039f16f30936 data/minecraft/advancements/recipes/betternether/crafting_table_willow_from_willow_planks.json +4d9bc3fbcd136dfb74bd6aafabad375668602526 data/minecraft/advancements/recipes/betternether/crimson_ladder_from_crimson_planks.json +6b791bb405885fce0570cc9f7a061f56f109b0a3 data/minecraft/advancements/recipes/betternether/glowstone_stalactite_from_glowstone.json +068e07f7c67a558607da1c54d52d91b6986907fc data/minecraft/advancements/recipes/betternether/mushroom_button_from_mushroom_planks.json +aa99aa3540ea5a05fccd5397a32b6ac7e417ad27 data/minecraft/advancements/recipes/betternether/mushroom_door_from_mushroom_planks.json +8f604c572fd9cd09a87cf86ea4f96a68ba80b337 data/minecraft/advancements/recipes/betternether/mushroom_fence_from_mushroom_planks.json +c17e181aa99d4f9ed09c1bd0ddac9980c5aeedf9 data/minecraft/advancements/recipes/betternether/mushroom_fir_button_from_mushroom_fir_planks.json +f8533e526d078c3699df6d7492a1d3a6051345b8 data/minecraft/advancements/recipes/betternether/mushroom_fir_door_from_mushroom_fir_planks.json +5607c52fae2f8ab527e7284cdfcd42bf00a5ddc3 data/minecraft/advancements/recipes/betternether/mushroom_fir_fence_from_mushroom_fir_planks.json +dee52da82ac801f5f3ce9c9ad10a4d2dbafd82cc data/minecraft/advancements/recipes/betternether/mushroom_fir_gate_from_mushroom_fir_planks.json +0ced1d92bbe8b448fbdf10bc47b87074b5e48885 data/minecraft/advancements/recipes/betternether/mushroom_fir_ladder_from_mushroom_fir_planks.json +78df5c82891b00606c561cfbde17c6d2739a6d2f data/minecraft/advancements/recipes/betternether/mushroom_fir_log_from_mushroom_fir_stem.json +b92701bb2d65bc90cd213580ad982e6415500ddd data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_log.json +26a38dea24588378e3d2acb7877c6903896d147f data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_stem.json +cca2f5bbb8749ef96d6a982c0fd9c019ef04fa1c data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_wood.json +34d083848ee8f8954199f932cbde6a6568b54838 data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_striped_log_mushroom_fir.json +316ff20beda7f8bab460ee12141cdf475a90d7a1 data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_striped_wood_mushroom_fir.json +99e934e25e985e8d5cd264fe029de087d039b741 data/minecraft/advancements/recipes/betternether/mushroom_fir_plate_from_mushroom_fir_planks.json +d5a7a5ddcac240404a8fbc51ceb520908878883e data/minecraft/advancements/recipes/betternether/mushroom_fir_slab_from_mushroom_fir_planks.json +3b880b64660b675ba92f5ab70009ee087d217493 data/minecraft/advancements/recipes/betternether/mushroom_fir_stairs_from_mushroom_fir_planks.json +f257b2ec2cd7226b29a0e8ef12651d48c9789228 data/minecraft/advancements/recipes/betternether/mushroom_fir_trapdoor_from_mushroom_fir_planks.json +334687d02e309c7630a69d19c7073af7c6cd872b data/minecraft/advancements/recipes/betternether/mushroom_fir_wood_from_mushroom_fir_log.json +e3750e62c04a2e0d71353dea549a5a188a910387 data/minecraft/advancements/recipes/betternether/mushroom_gate_from_mushroom_planks.json +a5284269708944e1189191a518874fa4be3f33d5 data/minecraft/advancements/recipes/betternether/mushroom_ladder_from_mushroom_planks.json +833b774a5c34da920de9a48c7aef39c1f1d5f93c data/minecraft/advancements/recipes/betternether/mushroom_planks_from_mushroom_stem.json +ee27c989cc1dbe39dd878d776af293ccc6b1a5a9 data/minecraft/advancements/recipes/betternether/mushroom_plate_from_mushroom_planks.json +ac8361314f67eedceed86b4341536a57d07bee50 data/minecraft/advancements/recipes/betternether/mushroom_slab_from_mushroom_planks.json +b53390f9717eb8b5763fe0ac15859794e75013ce data/minecraft/advancements/recipes/betternether/mushroom_stairs_from_mushroom_planks.json +1ef613745d3afb6b5cde29ff8013e7d2efc217b6 data/minecraft/advancements/recipes/betternether/mushroom_trapdoor_from_mushroom_planks.json +e04ae18dbaa1a86fafdf08ca77bdc10d6e3504da data/minecraft/advancements/recipes/betternether/nether_brick_tile_slab_from_nether_brick_tile_small.json +2666dbde1103ce732039e41fc809495b5c370f15 data/minecraft/advancements/recipes/betternether/nether_brick_tile_stairs_from_nether_brick_tile_small.json +c95876ab9473c37994b92e917a96c7686a5265f5 data/minecraft/advancements/recipes/betternether/nether_brick_wall_from_nether_brick_tile_large.json +5375215bf4b0958b89617af724eaf1a7df9b81b8 data/minecraft/advancements/recipes/betternether/nether_ruby_slab_from_nether_ruby_block.json +49945f86dd19bf4d09a184dc4fad1e773507059e data/minecraft/advancements/recipes/betternether/nether_ruby_stairs_from_nether_ruby_block.json +7671ddd59a381c0664bf26f36dfb34d4a01b18e4 data/minecraft/advancements/recipes/betternether/nether_sakura_bark_from_nether_sakura_log.json +a401ba43b49587aa1c06cb051f58a79641b9689a data/minecraft/advancements/recipes/betternether/nether_sakura_button_from_nether_sakura_planks.json +e660698b7d2da4bb1aeca4818963d0c5481ebd09 data/minecraft/advancements/recipes/betternether/nether_sakura_door_from_nether_sakura_planks.json +3de2dd967de8d3a129afd73757eb816d643300c3 data/minecraft/advancements/recipes/betternether/nether_sakura_fence_from_nether_sakura_planks.json +abdf6ad077980e1c493cd9406c994e8347f0ed7d data/minecraft/advancements/recipes/betternether/nether_sakura_gate_from_nether_sakura_planks.json +2feb2a2f1afd732b54cdf5b26346ad55b4466997 data/minecraft/advancements/recipes/betternether/nether_sakura_ladder_from_nether_sakura_planks.json +2f48bf31c30d7a96ad55562ade2c2a857d8a073b data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_bark.json +0b477e165e54260cde2f1a6d891b834e632b96ae data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_log.json +fbd223e1d3b9dacfdb98a2210f9d9194eb7cf57e data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_striped_bark_nether_sakura.json +e48ad2c5286a23fa7fdc5885d7157197180fda4e data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_striped_log_nether_sakura.json +0c40a2e5161e268c42816c0aeac93ec7e6ee9837 data/minecraft/advancements/recipes/betternether/nether_sakura_plate_from_nether_sakura_planks.json +e87f6baa7d29d3bcf8dd947aa1f7937b3a32282e data/minecraft/advancements/recipes/betternether/nether_sakura_slab_from_nether_sakura_planks.json +b78550ea3eed9ed89d5fa7c0eb9112e2e56c7cf1 data/minecraft/advancements/recipes/betternether/nether_sakura_stairs_from_nether_sakura_planks.json +5eec17463a848a8db37d6993f49964f1e640d11d data/minecraft/advancements/recipes/betternether/nether_sakura_trapdoor_from_nether_sakura_planks.json +6e09ef9d8d6cea10b02e8b8c383dfbc4edb06b9d data/minecraft/advancements/recipes/betternether/netherite_fire_bowl_from_netherite_block.json +55a96c7be31356792565d5634ea320dfb441d786 data/minecraft/advancements/recipes/betternether/netherite_fire_bowl_soul_from_netherite_block.json +b1de7754ca19558fcabbc498dbcd756430d400d7 data/minecraft/advancements/recipes/betternether/netherrack_furnace_from_netherrack.json +e713becfdf1d2e1d5181e53bea919e442195ff7f data/minecraft/advancements/recipes/betternether/netherrack_stalactite_from_netherrack.json +d192a1038817fc7dd9b8d7fcdd2657227c444ff8 data/minecraft/advancements/recipes/betternether/obsidian_bricks_slab_from_obsidian_bricks.json +4fcde1a8ae773672fd7e5847945180f6a24b8f5e data/minecraft/advancements/recipes/betternether/obsidian_bricks_stairs_from_obsidian_bricks.json +035c3c7d232d4a411c5eaac3a5eef699798b9777 data/minecraft/advancements/recipes/betternether/obsidian_tile_slab_from_obsidian_tile_small.json +01e9d84bb0b8f2d546564df636795dbf0ab1b3d8 data/minecraft/advancements/recipes/betternether/obsidian_tile_stairs_from_obsidian_tile_small.json +f4723846c7243dc3e6253e0a0071262afd1047a5 data/minecraft/advancements/recipes/betternether/reeds_button_from_reeds_block.json +ee4da387402316eb0e7d0065ec5d24fa5a76b2f1 data/minecraft/advancements/recipes/betternether/reeds_door_from_reeds_block.json +c1450e82d14ffa5e1802397ffa11fa55bc080545 data/minecraft/advancements/recipes/betternether/reeds_fence_from_reeds_block.json +ed21490fe04dfae05099f16889a7c8997766ceb9 data/minecraft/advancements/recipes/betternether/reeds_gate_from_reeds_block.json +faea2f52d0ee716052ca34ea66c149e98a13ef00 data/minecraft/advancements/recipes/betternether/reeds_ladder_from_reeds_block.json +f45d20fa53c6d8fc351f995199505af91f425e08 data/minecraft/advancements/recipes/betternether/reeds_plate_from_reeds_block.json +d581ec171cb0b0ef12fb6d5828f2cb6dfb03c815 data/minecraft/advancements/recipes/betternether/reeds_slab_from_reeds_block.json +8f70df5b508d7181b4a8da45e183a5df0fe8eaf5 data/minecraft/advancements/recipes/betternether/reeds_stairs_from_reeds_block.json +ec25803d0b3b2894b241d339d860605399aa83b3 data/minecraft/advancements/recipes/betternether/reeds_trapdoor_from_reeds_block.json +73dcb8e93216b1a1c721b51ff5db97b00fd0d386 data/minecraft/advancements/recipes/betternether/roof_tile_cincinnasite_from_cincinnasite_forged.json +175aa4e87910854ea46ee6e1041b37fb74f3fefb data/minecraft/advancements/recipes/betternether/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json +41d849256c04c1a149034facf0ff0b3221d85372 data/minecraft/advancements/recipes/betternether/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json +a321cff883cd97e6b04905b11d51a3180801f96f data/minecraft/advancements/recipes/betternether/roof_tile_nether_bricks_from_nether_bricks.json +aab5dc6963c28241e5d389e9afca4aa07e3ff6eb data/minecraft/advancements/recipes/betternether/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json +de11e6bba31dd88412115866a160e1c3c98f73ae data/minecraft/advancements/recipes/betternether/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json +5cb3ac97e43a94fdaa726d5f8033bbdc847e944c data/minecraft/advancements/recipes/betternether/roof_tile_reeds_from_reeds_block.json +5aae8fd51325dfa3762fbbaa0987493ddce70395 data/minecraft/advancements/recipes/betternether/roof_tile_reeds_slab_from_roof_tile_reeds.json +befeabeaabd30b134369d011a829d3dd5b64d407 data/minecraft/advancements/recipes/betternether/roof_tile_reeds_stairs_from_roof_tile_reeds.json +a9cf4d1650afd20095f55d83a8f849689e63cad9 data/minecraft/advancements/recipes/betternether/roof_tile_stalagnate_from_stalagnate_planks.json +88b756a01b40019796780655f3c24cf6eab8d550 data/minecraft/advancements/recipes/betternether/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json +db175c3675bbe9a93007c77e1451c1e5eabb87f2 data/minecraft/advancements/recipes/betternether/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json +55d7b4a8331ec021df0571e6b122aec7b84143fe data/minecraft/advancements/recipes/betternether/roof_tile_wart_from_wart_planks.json +afe65c1b7c0dfe27cce9431dbb0a230701817316 data/minecraft/advancements/recipes/betternether/roof_tile_wart_slab_from_roof_tile_wart.json +3bffea5dcad40054d5b1969a79ddcfc81d286522 data/minecraft/advancements/recipes/betternether/roof_tile_wart_stairs_from_roof_tile_wart.json +4eada6f02061c7e500827fadbd423156af02262b data/minecraft/advancements/recipes/betternether/roof_tile_willow_from_willow_planks.json +ff1e109af92a01015915ff8fd5eb083639f4a392 data/minecraft/advancements/recipes/betternether/roof_tile_willow_slab_from_roof_tile_willow.json +b8876adfcda13ed19f8b5a354b208a087e1d3458 data/minecraft/advancements/recipes/betternether/roof_tile_willow_stairs_from_roof_tile_willow.json +41e6180f2b374739ee589c77635c23929bc816f3 data/minecraft/advancements/recipes/betternether/rubeus_bark_from_rubeus_log.json +784a3084a1d2b00d1cb21940d74e7e167d43fc3d data/minecraft/advancements/recipes/betternether/rubeus_button_from_rubeus_planks.json +6b9788c47aa430934ce8af94372857c9cf53788e data/minecraft/advancements/recipes/betternether/rubeus_door_from_rubeus_planks.json +37179c35dc486b21b7b441ecc34e1f3328c79d10 data/minecraft/advancements/recipes/betternether/rubeus_fence_from_rubeus_planks.json +edb7dcba2aa7e4a4b246fa4e9128d22570c69c48 data/minecraft/advancements/recipes/betternether/rubeus_gate_from_rubeus_planks.json +b8d8ece15696cdf65b3540a03392e55642048f21 data/minecraft/advancements/recipes/betternether/rubeus_ladder_from_rubeus_planks.json +581b546c59e8ad740d2c6d5dd84ad05af0a18265 data/minecraft/advancements/recipes/betternether/rubeus_planks_from_rubeus_bark.json +99f76035f09c1d1ebd28fde1fe5777da5815b7bb data/minecraft/advancements/recipes/betternether/rubeus_planks_from_rubeus_log.json +913281e913d614b648659294f74647f4d6ac6325 data/minecraft/advancements/recipes/betternether/rubeus_planks_from_striped_bark_rubeus.json +93d91fd2b6cc4642c0c386afc451bfdc410053bb data/minecraft/advancements/recipes/betternether/rubeus_planks_from_striped_log_rubeus.json +f99ca40638b1229df70271b050ab59a517a613d3 data/minecraft/advancements/recipes/betternether/rubeus_plate_from_rubeus_planks.json +5c15dfdb490b049b2814654ce572eb1935c90633 data/minecraft/advancements/recipes/betternether/rubeus_slab_from_rubeus_planks.json +e0edd2763c9a4a4a0e38917fe76d65cb8052ef2d data/minecraft/advancements/recipes/betternether/rubeus_stairs_from_rubeus_planks.json +8f230fdc2d4010da56cf816f460c710e91a50ae4 data/minecraft/advancements/recipes/betternether/rubeus_trapdoor_from_rubeus_planks.json +1340b44eb95720311c95ddc0c30377d496ddf379 data/minecraft/advancements/recipes/betternether/sign_anchor_tree_from_anchor_tree_planks.json +19660a514ddfb2dbce9d23510cabfcd685956a81 data/minecraft/advancements/recipes/betternether/sign_mushroom_fir_from_mushroom_fir_planks.json +14ae5e090d3a46b02d0cbec427b9732cd5268e25 data/minecraft/advancements/recipes/betternether/sign_mushroom_from_mushroom_planks.json +6de3346cf4ffdfe06d6684f8b2da53b96e0f490e data/minecraft/advancements/recipes/betternether/sign_nether_sakura_from_nether_sakura_planks.json +fe679188711e7e5607a1bc91c542edd5cfcad138 data/minecraft/advancements/recipes/betternether/sign_reed_from_reeds_block.json +8c25e0d98de80866fb4ba2bfcb238173ca4250c4 data/minecraft/advancements/recipes/betternether/sign_rubeus_from_rubeus_planks.json +5c33d35ed1a5600d7c4969c6a7d9d04502db8d3c data/minecraft/advancements/recipes/betternether/sign_stalagnate_from_stalagnate_planks.json +2ad21ea1e2b53772f07865e22efad62eb6b66a5f data/minecraft/advancements/recipes/betternether/sign_wart_from_wart_planks.json +da8027bb5631525d909b8a56b06a17d567dc6b41 data/minecraft/advancements/recipes/betternether/sign_willow_from_willow_planks.json +4094f91fa686568f8d59529d36a6ceef9ab97069 data/minecraft/advancements/recipes/betternether/soul_sandstone_chiseled_from_soul_sandstone_smooth.json +0dfcbec4a67374f5c97871ddb574301ca63ad732 data/minecraft/advancements/recipes/betternether/soul_sandstone_cut_from_soul_sandstone.json +42119bcebf6aec0bcb16ebb9c7ae3f5322db23ca data/minecraft/advancements/recipes/betternether/soul_sandstone_cut_slab_from_soul_sandstone_cut.json +fc96d10d7d04aabafb60e511866d4642b25b9f4b data/minecraft/advancements/recipes/betternether/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json +f487f9c5ce4ec206dfc30acc6013f33ead33822a data/minecraft/advancements/recipes/betternether/soul_sandstone_slab_from_soul_sandstone.json +2b9ad225f2644163947751b1e19fa5765ffc1fb0 data/minecraft/advancements/recipes/betternether/soul_sandstone_smooth_from_soul_sandstone_cut.json +1dd0d537adb652eb6efb598935136689438cd9e9 data/minecraft/advancements/recipes/betternether/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json +5a646cc5022017ea22f6d50aa24fc7a4d77f1fb6 data/minecraft/advancements/recipes/betternether/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json +f3eed368d3fcdd94b19980c21f4b9e41dfd6de73 data/minecraft/advancements/recipes/betternether/soul_sandstone_stairs_from_soul_sandstone.json +a5056111365d269b03cc43ca453e6afc0c24ec60 data/minecraft/advancements/recipes/betternether/soul_sandstone_wall_from_soul_sandstone_cut.json +d64fcb341650aa6facb9031997cb87011a9ea3c8 data/minecraft/advancements/recipes/betternether/stalagnate_bark_from_stalagnate_log.json +71b8394579c301692622e429beeae33c6f66e656 data/minecraft/advancements/recipes/betternether/stalagnate_ladder_from_stalagnate_planks.json +36d8bfd4a89def27b7fe4f74934b69db642c60ae data/minecraft/advancements/recipes/betternether/stalagnate_log_from_stalagnate_stem.json +df213cd2e9b532f313fddbf914bf21fc15eba9cf data/minecraft/advancements/recipes/betternether/stalagnate_planks_button_from_stalagnate_planks.json +86e5d1c09daa651418d3ef126a7b2b5486f750f8 data/minecraft/advancements/recipes/betternether/stalagnate_planks_door_from_stalagnate_planks.json +2eda63ab5bc1566c50507840d632395bc6068dfb data/minecraft/advancements/recipes/betternether/stalagnate_planks_fence_from_stalagnate_planks.json +04d59c8fd07516ff364c2689e4a5cc3804a155ec data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_bark.json +f46439743cbbae4451bf8d551012366b3af425b3 data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_log.json +56b096276d54dba40bd4942b9fde5f8d64f36cc0 data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_stem.json +66719b234d3d3b8da07c64b300456218e597c3ad data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_striped_bark_stalagnate.json +6daf1a1b3476eb394e5e1f13e250dad31f2fef88 data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_striped_log_stalagnate.json +7938a34ff803b076aff04451d62215be3dc818f6 data/minecraft/advancements/recipes/betternether/stalagnate_planks_gate_from_stalagnate_planks.json +d5f3fa82ec327042cdcda6cd6601798ac11b1738 data/minecraft/advancements/recipes/betternether/stalagnate_planks_plate_from_stalagnate_planks.json +2860016cf06ac909d698e09dadb961f8f327f24c data/minecraft/advancements/recipes/betternether/stalagnate_planks_slab_from_stalagnate_planks.json +3e11fdee0d2bc0fc6129e6cc1ed97e3db94b5002 data/minecraft/advancements/recipes/betternether/stalagnate_planks_stairs_from_stalagnate_planks.json +ac38296aefecd5190f6579fcfdcc54c5c975247d data/minecraft/advancements/recipes/betternether/stalagnate_planks_trapdoor_from_stalagnate_planks.json +ed80ee2ae981c5afa2d2f364bda2913c43dc44d1 data/minecraft/advancements/recipes/betternether/taburet_acacia_from_acacia_slab.json +8170202e4dc40a6af33797e08eb17b89a6319a3a data/minecraft/advancements/recipes/betternether/taburet_anchor_tree_from_anchor_tree_slab.json +cf15fac8fdb181ded55c6b3a075ac6acc68747e8 data/minecraft/advancements/recipes/betternether/taburet_birch_from_birch_slab.json +288e655895c870160f45240c9e8706f483af1358 data/minecraft/advancements/recipes/betternether/taburet_cincinnasite_from_cincinnasite_slab.json +790d4c4a1c7229e2df414924141daa410623af12 data/minecraft/advancements/recipes/betternether/taburet_crimson_from_crimson_slab.json +a091b6cff8755f0ceb37e4454421113e51344abb data/minecraft/advancements/recipes/betternether/taburet_dark_oak_from_dark_oak_slab.json +35a3e1ab354c9aeb17e2d2e7bc747ad9b61ee02f data/minecraft/advancements/recipes/betternether/taburet_jungle_from_jungle_slab.json +ae5f5ca02ffe947ef14ff5629e55b431cba8695b data/minecraft/advancements/recipes/betternether/taburet_mushroom_fir_from_mushroom_fir_slab.json +c91e3c1f1771171e2824bf033dd9ae19d9ff50e2 data/minecraft/advancements/recipes/betternether/taburet_mushroom_from_mushroom_slab.json +f85bde404da6e1503958b14a3ce18b78fcb578ae data/minecraft/advancements/recipes/betternether/taburet_nether_sakura_from_nether_sakura_slab.json +9f4fdc9fe80177d910684c3d64897e42e27d1cdd data/minecraft/advancements/recipes/betternether/taburet_oak_from_oak_slab.json +cfe24998d6639038dab4faa13fce24a17bbd68e7 data/minecraft/advancements/recipes/betternether/taburet_reeds_from_reeds_slab.json +3d227b530dba9af072f99b95a5598ad7436352cb data/minecraft/advancements/recipes/betternether/taburet_rubeus_from_rubeus_slab.json +04e97c9531dfaa7541519e9774dbdc5be35a61fe data/minecraft/advancements/recipes/betternether/taburet_spruce_from_spruce_slab.json +65735e57309a476a4e5866a1ef478d4a9c9b2e39 data/minecraft/advancements/recipes/betternether/taburet_stalagnate_from_stalagnate_planks_slab.json +c78f7ece01056f643e04992893097d4616a3a2ab data/minecraft/advancements/recipes/betternether/taburet_warped_from_warped_slab.json +703e35e3847421fc0ec1786657d00e3dcebede6b data/minecraft/advancements/recipes/betternether/taburet_wart_from_wart_slab.json +1fa6e9f40af3334298d8676326cd4b467efb326d data/minecraft/advancements/recipes/betternether/taburet_willow_from_willow_slab.json +9a837646a0bdfe46ed1b25a23bd3fa382b5f52ac data/minecraft/advancements/recipes/betternether/warped_ladder_from_warped_planks.json +bb26a5cd0f54614382524c154b00292ff7faabef data/minecraft/advancements/recipes/betternether/wart_bark_from_wart_log.json +07bd69524bcda5c8b4cd352fd4a8a2e451f9876b data/minecraft/advancements/recipes/betternether/wart_button_from_wart_planks.json +b220b21cf6eab86741394b6a8602c8f3a6fc8346 data/minecraft/advancements/recipes/betternether/wart_door_from_wart_planks.json +b8fcf1a19d183fb2f280f9d037bc33953b17a62b data/minecraft/advancements/recipes/betternether/wart_fence_from_wart_planks.json +fa0513cce9935988f3c00bb8ac5aa74990d04fd0 data/minecraft/advancements/recipes/betternether/wart_gate_from_wart_planks.json +f81a988df0479cd9a4989536409b2846dd46a237 data/minecraft/advancements/recipes/betternether/wart_ladder_from_wart_planks.json +270c5bd36b8979a42ea7f9c7316251489c943089 data/minecraft/advancements/recipes/betternether/wart_planks_from_striped_bark_wart.json +89952de7d8120443697140a48291ffd3d2249f06 data/minecraft/advancements/recipes/betternether/wart_planks_from_striped_log_wart.json +ce5b6e0ebe33061b6e837bad696a2d52bf558188 data/minecraft/advancements/recipes/betternether/wart_planks_from_wart_bark.json +1297da0c764b9d1dac248cf489c11ae840a947b0 data/minecraft/advancements/recipes/betternether/wart_planks_from_wart_log.json +5a486e00ae65ff67c98a34f300bdfde6aa419bba data/minecraft/advancements/recipes/betternether/wart_plate_from_wart_planks.json +f39fff1849cc98ea36200c0ff27636c06db9301e data/minecraft/advancements/recipes/betternether/wart_slab_from_wart_planks.json +451b46c80346aec9a5e8ad4555e211756135c485 data/minecraft/advancements/recipes/betternether/wart_stairs_from_wart_planks.json +59ddcf95e093977bac90dd2eb6b9022384250554 data/minecraft/advancements/recipes/betternether/wart_trapdoor_from_wart_planks.json +7657dde5940a3d0ef545a69a7e59800851f31e86 data/minecraft/advancements/recipes/betternether/willow_bark_from_willow_log.json +2c335861daa7a893ae67d48873042dc84a08ba98 data/minecraft/advancements/recipes/betternether/willow_button_from_willow_planks.json +fb808c1a340cbbe7e8642c33c0e86c0d730fc985 data/minecraft/advancements/recipes/betternether/willow_door_from_willow_planks.json +e49f12c1166687c220df73ecdfb7a61fd78a3d9d data/minecraft/advancements/recipes/betternether/willow_fence_from_willow_planks.json +08a4d44a581c25b955ed189cc3ac0b5863daadc6 data/minecraft/advancements/recipes/betternether/willow_gate_from_willow_planks.json +c272385159d060fe70e8a2cadc3182f36f28b7d8 data/minecraft/advancements/recipes/betternether/willow_ladder_from_willow_planks.json +c16f08a3ea827f2242796378320410974339628f data/minecraft/advancements/recipes/betternether/willow_planks_from_striped_bark_willow.json +3dd307636b8a6ab222575f2c94f2d2ac229040a1 data/minecraft/advancements/recipes/betternether/willow_planks_from_striped_log_willow.json +4d430d7013a4ce01c08214dd2d97beb19be28442 data/minecraft/advancements/recipes/betternether/willow_planks_from_willow_bark.json +3c5d2a493fc8724a655092dd9ab297304278654c data/minecraft/advancements/recipes/betternether/willow_planks_from_willow_log.json +ffce405b57ae8506e738eb99709405b917862f55 data/minecraft/advancements/recipes/betternether/willow_plate_from_willow_planks.json +55b06d7b51351f329a8f724c3f7528e02bb0560b data/minecraft/advancements/recipes/betternether/willow_slab_from_willow_planks.json +272edcb97d0844548ec6b868c0002782152e4ae8 data/minecraft/advancements/recipes/betternether/willow_stairs_from_willow_planks.json +467462c6731c7312b7997824e6937d106cac72e6 data/minecraft/advancements/recipes/betternether/willow_trapdoor_from_willow_planks.json +270e2342ddfd5fa0d9a3082843c5388c145c4b87 data/minecraft/recipes/anchor_tree_bark_from_anchor_tree_log.json +3f484dcb30ff95a3950391922b87047e02cdd9cc data/minecraft/recipes/anchor_tree_button_from_anchor_tree_planks.json +1084df1ac97960bf6512215b813bf7e4f7b031a2 data/minecraft/recipes/anchor_tree_door_from_anchor_tree_planks.json +efefe8fac0b7d5220343aab9fde4c15959dc4dc9 data/minecraft/recipes/anchor_tree_fence_from_anchor_tree_planks.json +a4bab1f9a8c48587b3c800ae32d7797835e19f6b data/minecraft/recipes/anchor_tree_gate_from_anchor_tree_planks.json +a3c2927246fe74bd178632f8eea288c255ee77a8 data/minecraft/recipes/anchor_tree_ladder_from_anchor_tree_planks.json +ec995e744a8573b03d9c803bd401d37a7aa50a2b data/minecraft/recipes/anchor_tree_planks_from_anchor_tree_bark.json +2423669d598bd338d8bc7af1c52cb2edcdc777fc data/minecraft/recipes/anchor_tree_planks_from_anchor_tree_log.json +2f183398f991f1603b4f4262d6a44d654cf085a4 data/minecraft/recipes/anchor_tree_planks_from_striped_bark_anchor_tree.json +3acf8a770201b10d122e7a9a05783fa5b31f54bd data/minecraft/recipes/anchor_tree_planks_from_striped_log_anchor_tree.json +8fb2835a22df0ef017994a7470bc3fc797a32cb5 data/minecraft/recipes/anchor_tree_plate_from_anchor_tree_planks.json +fc77357b2e9b9e21bb3527fd2b2bdcb05963dad8 data/minecraft/recipes/anchor_tree_slab_from_anchor_tree_planks.json +c98d5416126d4c933553cae519e516d38d1c43b1 data/minecraft/recipes/anchor_tree_stairs_from_anchor_tree_planks.json +e28bfc44d03a2bc736d3fa07bc00a2a2319149a7 data/minecraft/recipes/anchor_tree_trapdoor_from_anchor_tree_planks.json +12f292f8427226b0b98b636e41a31c63e87c3575 data/minecraft/recipes/bar_stool_acacia_from_acacia_slab.json +ab5fd4f88935a1c8e52b46eda4be1849a1b12945 data/minecraft/recipes/bar_stool_anchor_tree_from_anchor_tree_slab.json +990ac9fd5b4c4c326dd91dbe1c73083557d1d484 data/minecraft/recipes/bar_stool_birch_from_birch_slab.json +7f76f42a5ce8a4c98c05388864677b7923f960c4 data/minecraft/recipes/bar_stool_cincinnasite_from_cincinnasite_slab.json +326294361335e1e875181be38f5eec5be5ad344c data/minecraft/recipes/bar_stool_crimson_from_crimson_slab.json +050df027992d3e27fc9ff378144fa932afb134f7 data/minecraft/recipes/bar_stool_dark_oak_from_dark_oak_slab.json +dbf43f21e2275d58837c552b2ecfbf218932677c data/minecraft/recipes/bar_stool_jungle_from_jungle_slab.json +bff85f2fa02454a79531ffdfb72eebd6c360d603 data/minecraft/recipes/bar_stool_mushroom_fir_from_mushroom_fir_slab.json +7242a0508b17f90445201ba65e60d70b6c54b2ad data/minecraft/recipes/bar_stool_mushroom_from_mushroom_slab.json +bf830ea69e607140e15c23a1126c06bed230fe3b data/minecraft/recipes/bar_stool_nether_sakura_from_nether_sakura_slab.json +e2830c740a9ae8c9df5e58d32a6a106206ee6cef data/minecraft/recipes/bar_stool_oak_from_oak_slab.json +20bbb6696045148d71dace1b34c5e82766f432cb data/minecraft/recipes/bar_stool_reeds_from_reeds_slab.json +f68675c5a7112798a89d6ee3265837cdf550ee0c data/minecraft/recipes/bar_stool_rubeus_from_rubeus_slab.json +4e1b4634674d96bf6b66bb62c8f5d1f5e1962a41 data/minecraft/recipes/bar_stool_spruce_from_spruce_slab.json +26e8dba822ed3096b3c1c1f07d18411a84975a2f data/minecraft/recipes/bar_stool_stalagnate_from_stalagnate_planks_slab.json +915e2e5414683f599d6ad2702661f365e8c4fac2 data/minecraft/recipes/bar_stool_warped_from_warped_slab.json +150eb60eb4a785e36516ecc83a463a1b73c8eb4f data/minecraft/recipes/bar_stool_wart_from_wart_slab.json +b24cdfde1aca0e9ff5bea9ca860707c65810ae9f data/minecraft/recipes/bar_stool_willow_from_willow_slab.json +ce01d9911aef2ba837020b3258d63cb54c165183 data/minecraft/recipes/barrel_anchor_tree_from_anchor_tree_planks.json +da76c5174a4659fdb58bfc671979cd4d7addcf6f data/minecraft/recipes/barrel_crimson_from_crimson_planks.json +c43bd8ff7c3a12debe34a44a2e79b69980142c85 data/minecraft/recipes/barrel_mushroom_fir_from_mushroom_fir_planks.json +3ea4f0d1dc89fb0d9c6caa73cd8a73084cd55a65 data/minecraft/recipes/barrel_mushroom_from_mushroom_planks.json +090763dcd16ee67a1c15f04805ba51d718fea711 data/minecraft/recipes/barrel_nether_sakura_from_nether_sakura_planks.json +f1cc1aec889a3df26ce532d75266ac334ad25fb6 data/minecraft/recipes/barrel_reed_from_reeds_block.json +160ccfdbf0f295f87ca26f5cd5337f39862c9df9 data/minecraft/recipes/barrel_rubeus_from_rubeus_planks.json +3e1d25160db03b8739045e7dca58837d8ec7f958 data/minecraft/recipes/barrel_stalagnate_from_stalagnate_planks.json +528f263423ca5ccc9bc9aa74eb79d6d43e70940e data/minecraft/recipes/barrel_warped_from_warped_planks.json +c12e679ebbeac3990f153d5368a2f29774fc084f data/minecraft/recipes/barrel_wart_from_wart_planks.json +a6eb971e97c467841f77ea56e792d33b07288802 data/minecraft/recipes/barrel_willow_from_willow_planks.json +3e41c08276344ea1bcaed75d05b52575638a45b3 data/minecraft/recipes/basalt_bricks_from_polished_basalt.json +47e9d65601006fbfa4309b067343df451cb5eed1 data/minecraft/recipes/basalt_bricks_slab_from_basalt_bricks.json +3d183d41c8e905ae92dab93f4fb3ad8ef4839471 data/minecraft/recipes/basalt_bricks_stairs_from_basalt_bricks.json +39b4e7919a2ab346280edd070addf5a057aa374d data/minecraft/recipes/basalt_bricks_wall_from_basalt_bricks.json +33acdf8cbe93d90a1aa8e59b7cb18f9ae02899c1 data/minecraft/recipes/basalt_furnace_from_basalt.json +83b6854214049b308528a4cc24d9855bf69d393e data/minecraft/recipes/basalt_slab_from_basalt.json +73e4e8a4574608c944daa98d79c744bad335bf2c data/minecraft/recipes/basalt_stalactite_from_basalt.json +83a6b1f3debdaec4cee35c1972bf0ebb7155d957 data/minecraft/recipes/blackstone_furnace_from_blackstone.json +67ca6477d9e996c7ecd87352ae5cfe1579bc3f68 data/minecraft/recipes/blackstone_stalactite_from_blackstone.json +816e1663eb07f8777ef3d7349f6877fb49bda64d data/minecraft/recipes/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json +14657e5fd0b7dbe38212a3279e80330b89eb1972 data/minecraft/recipes/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json +7861e4c711bfb5dd564b48eb8d3fac74251893e8 data/minecraft/recipes/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json +7b42ded31fbefca01bfd873cd15e8c51d9beb0ef data/minecraft/recipes/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json +6817b3bbdb69695c9d64cf4aef2c3034224940fb data/minecraft/recipes/bone_button_from_bone_block.json +83ba05827be2ee9ef72f8ece470d7df31ea8d1d8 data/minecraft/recipes/bone_plate_from_bone_block.json +382f9517a31774dec2b98989ef7a2224152b001b data/minecraft/recipes/bone_slab_from_bone_block.json +d289a47a6210bc9b65a88da87fb92b5194c42ff9 data/minecraft/recipes/bone_stairs_from_bone_block.json +f30bb142ff45d476c6497411b0741f1807e89e44 data/minecraft/recipes/bone_stalactite_from_bone_block.json +9793445ff90125d3c699e3be570fff76c76abab5 data/minecraft/recipes/bone_wall_from_bone_block.json +be708199a2bd1df7f9531681d3fbcff9ce412966 data/minecraft/recipes/bricks_fire_bowl_from_nether_brick_tile_large.json +b25c36f4747f0ca5ef071501521b38f62883a22f data/minecraft/recipes/bricks_fire_bowl_soul_from_nether_brick_tile_large.json +f6bd5fdbba5f8682c25d4dd186d266aec8d3425a data/minecraft/recipes/chair_acacia_from_acacia_slab.json +e4ffe43279baeb087878b06c8006d75e1b374bb9 data/minecraft/recipes/chair_anchor_tree_from_anchor_tree_slab.json +228c228065e782818675c2e134374d815e6653cd data/minecraft/recipes/chair_birch_from_birch_slab.json +43d687b0cb57e594aae45ecbe1e19680ccca8ee2 data/minecraft/recipes/chair_cincinnasite_from_cincinnasite_slab.json +e76b179cc0fe8899e40d8ce89843e01b0fbb012a data/minecraft/recipes/chair_crimson_from_crimson_slab.json +93982caef1f222a195c3bfd1929fb83e193678e9 data/minecraft/recipes/chair_dark_oak_from_dark_oak_slab.json +aa68970a684ea492c116a815ed2ffa90a9339924 data/minecraft/recipes/chair_jungle_from_jungle_slab.json +47d858716e8151a5e98b23649cd83a9a90e60302 data/minecraft/recipes/chair_mushroom_fir_from_mushroom_fir_slab.json +38a263b4292d271e0f5041b1a4d8c1514ceaaf3d data/minecraft/recipes/chair_mushroom_from_mushroom_slab.json +00ef9a6ea5b13e325226efd16780da69f7a3c0fe data/minecraft/recipes/chair_nether_sakura_from_nether_sakura_slab.json +ec18d9870efd57bd6c3945eb21e196c613856bb4 data/minecraft/recipes/chair_oak_from_oak_slab.json +b587f2d51d426b375d1f6f235f10beb9169aa833 data/minecraft/recipes/chair_reeds_from_reeds_slab.json +d031b966d66ce850d9b4cee6c2eb65ec859bb30d data/minecraft/recipes/chair_rubeus_from_rubeus_slab.json +c24ffca3949db1993da2ea8f73c517c6009376c5 data/minecraft/recipes/chair_spruce_from_spruce_slab.json +52556d187f24e51c53e79f5ffc6ba42807e922a3 data/minecraft/recipes/chair_stalagnate_from_stalagnate_planks_slab.json +ccf21a10310ed1ef68dd20ea6f88c358fbaafabc data/minecraft/recipes/chair_warped_from_warped_slab.json +292d97eeb2864005dec2ff0dbbccb79360f1942c data/minecraft/recipes/chair_wart_from_wart_slab.json +924ea406c07a3c45bc1e7b98f19cb7b4a8163711 data/minecraft/recipes/chair_willow_from_willow_slab.json +07bb47c7b37b7d4d07ac4b832c98183605733a36 data/minecraft/recipes/chest_anchor_tree_from_anchor_tree_planks.json +76af413f5788fc2e863848731ca8c8e86086f4a9 data/minecraft/recipes/chest_crimson_from_crimson_planks.json +82cd59c597bd3410163b6c15292334cb06a4399e data/minecraft/recipes/chest_mushroom_fir_from_mushroom_fir_planks.json +4a6b851c5997deff0ce570c8c827a0ed446e0394 data/minecraft/recipes/chest_mushroom_from_mushroom_planks.json +b23016ce744114ba00d950474207e8db72ffb529 data/minecraft/recipes/chest_nether_sakura_from_nether_sakura_planks.json +bd7f0ac47e86ddaef258746e67000ba4725624bc data/minecraft/recipes/chest_reed_from_reeds_block.json +f417fb3f51752f6de2cfe75a5896fd7e6c47dd2d data/minecraft/recipes/chest_rubeus_from_rubeus_planks.json +03e71a58914d672b3b0ac6fb5377aa5260b69ea5 data/minecraft/recipes/chest_stalagnate_from_stalagnate_planks.json +96ec1a99c19da511f84b7e3f0982429daedaa8f2 data/minecraft/recipes/chest_warped_from_warped_planks.json +82b335075bfff40364aea47199f7166127aa8753 data/minecraft/recipes/chest_wart_from_wart_planks.json +a6721124a4d143ae7f6e56cf645a1734d0ecb3c8 data/minecraft/recipes/chest_willow_from_willow_planks.json +097af43b6845f92ddcd354c616e37dde969a4b77 data/minecraft/recipes/cincinnasite_fire_bowl_from_cincinnasite_forged.json +35331689d8519aaa7a521057b0eecd08f26c9dac data/minecraft/recipes/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json +08452a13ff9a692e06cbf508abcae94c0d57dd28 data/minecraft/recipes/cincinnasite_plate_from_cincinnasite_forged.json +1a27a456177beab9d6e98af21dd33cba36e90a91 data/minecraft/recipes/cincinnasite_slab_from_cincinnasite_forged.json +fb53de5cc1da4504632ccd671f7c77052f0d6e0b data/minecraft/recipes/cincinnasite_stairs_from_cincinnasite_forged.json +b24308e4e2845bbdd58b81d99271561ad8245519 data/minecraft/recipes/cincinnasite_wall_from_cincinnasite_forged.json +85a52289e653e46715774cd169f34221ffe0fca0 data/minecraft/recipes/crafting_table_anchor_tree_from_anchor_tree_planks.json +110e12012d83ea556f6906a8ba5db0a31956e7a7 data/minecraft/recipes/crafting_table_crimson_from_crimson_planks.json +2c2c798ad3bca983aa338b53bdd82fc601f21a2f data/minecraft/recipes/crafting_table_mushroom_fir_from_mushroom_fir_planks.json +0ce14322acb1a109ff77047c99c996b4d58ede23 data/minecraft/recipes/crafting_table_mushroom_from_mushroom_planks.json +33d7a323d4681fef8a503c985bc7f1daeafc12ce data/minecraft/recipes/crafting_table_nether_sakura_from_nether_sakura_planks.json +06667185c51f52868bd8834a30283e2dfb697e52 data/minecraft/recipes/crafting_table_reed_from_reeds_block.json +bcaedbb1599eeb0af381d6c5c40294e5109dd870 data/minecraft/recipes/crafting_table_rubeus_from_rubeus_planks.json +15283206be98addf25de69da6aee8c70b0ae96a3 data/minecraft/recipes/crafting_table_stalagnate_from_stalagnate_planks.json +4b79e0887450b1efe941f9e54650c1331345ee7b data/minecraft/recipes/crafting_table_warped_from_warped_planks.json +bfd4e2306c1fbce3782a4d540381331ae24f256c data/minecraft/recipes/crafting_table_wart_from_wart_planks.json +16a6b212a1e809f36817f8ce0dd2d067690fc540 data/minecraft/recipes/crafting_table_willow_from_willow_planks.json +2a8fd6589e4b435dc5a2cbcd6cf20b60768d4dfa data/minecraft/recipes/crimson_ladder_from_crimson_planks.json +f9e4c03f2a5eb18d7c642208b25a317ea843ffac data/minecraft/recipes/glowstone_stalactite_from_glowstone.json +f6ce39b73435285015002514a135e8e188254d68 data/minecraft/recipes/mushroom_button_from_mushroom_planks.json +7e065475d24e85c7bbcff1bec5b9a70f9c6d0be6 data/minecraft/recipes/mushroom_door_from_mushroom_planks.json +75b394e77fda763818aa5f14721a0f85f743ac15 data/minecraft/recipes/mushroom_fence_from_mushroom_planks.json +08d101ec12a22bca08134212f99ab45870a9572e data/minecraft/recipes/mushroom_fir_button_from_mushroom_fir_planks.json +217c605283ea5f34581cd7862634c4e26bab8a85 data/minecraft/recipes/mushroom_fir_door_from_mushroom_fir_planks.json +80f10d2a3a3b94e6ca858c6a56afb4d1cf795231 data/minecraft/recipes/mushroom_fir_fence_from_mushroom_fir_planks.json +c95b9853287ffa6d44e44d2ded3635314097b165 data/minecraft/recipes/mushroom_fir_gate_from_mushroom_fir_planks.json +a4fa1e049e698c6a99ec8e26b8b05b400feb8a1b data/minecraft/recipes/mushroom_fir_ladder_from_mushroom_fir_planks.json +85a7c44da2fe297a0b504bd6638d161410b095cc data/minecraft/recipes/mushroom_fir_log_from_mushroom_fir_stem.json +b278b2b83bbbf4659b59894e2aebffd0c4a9631b data/minecraft/recipes/mushroom_fir_planks_from_mushroom_fir_log.json +fd321bf84678ddcb26f4a6c1b9c3a857e27675c9 data/minecraft/recipes/mushroom_fir_planks_from_mushroom_fir_stem.json +4a6d826c2cb29285ffdc9654780aeb3456db855d data/minecraft/recipes/mushroom_fir_planks_from_mushroom_fir_wood.json +09d797e24e970b9444baf76afb4afa539e2b8d15 data/minecraft/recipes/mushroom_fir_planks_from_striped_log_mushroom_fir.json +0d8b4efd476d794473df94b17a480bbacea256ff data/minecraft/recipes/mushroom_fir_planks_from_striped_wood_mushroom_fir.json +74c372cae4c0ce11cd6190526a6879460da59509 data/minecraft/recipes/mushroom_fir_plate_from_mushroom_fir_planks.json +d95f799e490dcee8f18a6ea212874475570ab078 data/minecraft/recipes/mushroom_fir_slab_from_mushroom_fir_planks.json +834d1352375c9fae8645819fe916e5ee4b88df9f data/minecraft/recipes/mushroom_fir_stairs_from_mushroom_fir_planks.json +d9681ab15cbaaccb1197101a2a9080f46ddcc96a data/minecraft/recipes/mushroom_fir_trapdoor_from_mushroom_fir_planks.json +084708d22b3f2768fc09530062d9dd655f030320 data/minecraft/recipes/mushroom_fir_wood_from_mushroom_fir_log.json +b2e2c38400006973077b076cf199c83ef93df42b data/minecraft/recipes/mushroom_gate_from_mushroom_planks.json +868703469cdb0f8b29845fd7503300f33b91268a data/minecraft/recipes/mushroom_ladder_from_mushroom_planks.json +f005d4d91eb94f843a3966a6f902d722a11d481a data/minecraft/recipes/mushroom_planks_from_mushroom_stem.json +1f0bf0d2a2dcd9c445e647a25e53da9586104d20 data/minecraft/recipes/mushroom_plate_from_mushroom_planks.json +e0e1fbe3a17ba63be4cfca9aaf053cec18fbb3cd data/minecraft/recipes/mushroom_slab_from_mushroom_planks.json +cdff007e27b49182e7bf8ece12d1d66240debe6a data/minecraft/recipes/mushroom_stairs_from_mushroom_planks.json +2c04174e7e0cc4b3650bbefd10cbf0ffcbf3d8d2 data/minecraft/recipes/mushroom_trapdoor_from_mushroom_planks.json +95b90fbed9e8229257e0cb0dc875a1229e632d72 data/minecraft/recipes/nether_brick_tile_slab_from_nether_brick_tile_small.json +773e4c7a26d1117ae618ace62f21a365bc2baf6e data/minecraft/recipes/nether_brick_tile_stairs_from_nether_brick_tile_small.json +8876461d85e0e6cfc09291fb5724337fc5452237 data/minecraft/recipes/nether_brick_wall_from_nether_brick_tile_large.json +27a251320d9798d251dae2c48490458f054abf6e data/minecraft/recipes/nether_ruby_slab_from_nether_ruby_block.json +f4ec59b59fc42d9714b0f569d5eff5ed3cc822ef data/minecraft/recipes/nether_ruby_stairs_from_nether_ruby_block.json +1a8d3f378097ae2a856b273900c2979a8cd897c9 data/minecraft/recipes/nether_sakura_bark_from_nether_sakura_log.json +0fea362146bc56f456769c4b71f2e9401c4acef9 data/minecraft/recipes/nether_sakura_button_from_nether_sakura_planks.json +e891fa13c0feab9955bdf1cc182833a62aacf545 data/minecraft/recipes/nether_sakura_door_from_nether_sakura_planks.json +1b7650a1c9f37134279beec9899ba2f282209433 data/minecraft/recipes/nether_sakura_fence_from_nether_sakura_planks.json +6b906da2c79a327ea508c06f21afdd729bf76af7 data/minecraft/recipes/nether_sakura_gate_from_nether_sakura_planks.json +7de53ca4b271fc64343393c4b1107a73af7fd39e data/minecraft/recipes/nether_sakura_ladder_from_nether_sakura_planks.json +5379a65234de529939ffe278928f3d28604dc240 data/minecraft/recipes/nether_sakura_planks_from_nether_sakura_bark.json +7ed15d2f68b31f85a81d7027a02aa5bd9c14e58c data/minecraft/recipes/nether_sakura_planks_from_nether_sakura_log.json +1308dbe3ff971a55b6040e4cff9326a41a2bedec data/minecraft/recipes/nether_sakura_planks_from_striped_bark_nether_sakura.json +566d1aed9235da6d1954384e729b3496051e232f data/minecraft/recipes/nether_sakura_planks_from_striped_log_nether_sakura.json +38cd3076ef25602466d85d514b39876483f7ba2e data/minecraft/recipes/nether_sakura_plate_from_nether_sakura_planks.json +3546f0f8f14483312faa8d9a1062b53879eea8be data/minecraft/recipes/nether_sakura_slab_from_nether_sakura_planks.json +63c33677c1d28afc736ada5b79cd656cc4f4d2dc data/minecraft/recipes/nether_sakura_stairs_from_nether_sakura_planks.json +462e10725be0a74c269dc7f9af0b1c29e2f70203 data/minecraft/recipes/nether_sakura_trapdoor_from_nether_sakura_planks.json +0b54df5e8a3f23ef51ca73821cc19643cf159a17 data/minecraft/recipes/netherite_fire_bowl_from_netherite_block.json +59ad8870dcd371c54e5256b1021fa4b88a58f637 data/minecraft/recipes/netherite_fire_bowl_soul_from_netherite_block.json +11f3ade63a2ebc34ff96b4c5b2cf12a24d20fbce data/minecraft/recipes/netherrack_furnace_from_netherrack.json +8cb4c6a9a017a676b1a10e2fe590d9deb246eb3c data/minecraft/recipes/netherrack_stalactite_from_netherrack.json +0fd8e9cce0e65a46ebde85aeee038f8bf227a387 data/minecraft/recipes/obsidian_bricks_slab_from_obsidian_bricks.json +8474d46f8da141725a838bf3c4cf4e39f3dc4f85 data/minecraft/recipes/obsidian_bricks_stairs_from_obsidian_bricks.json +8a9c8d2f5f74e79620203cd38af20737bda0a52b data/minecraft/recipes/obsidian_tile_slab_from_obsidian_tile_small.json +1a1bab7102781639a7c94efa39825d658fcb76d3 data/minecraft/recipes/obsidian_tile_stairs_from_obsidian_tile_small.json +ffe0e1f899e4a527e17b8f30c1c874ddd46fa979 data/minecraft/recipes/reeds_button_from_reeds_block.json +4e7ca60f7a0990fdd2a337afef2e5b32ef5dda0e data/minecraft/recipes/reeds_door_from_reeds_block.json +1fe9ccfbde633a4541670c609acf632ce136aa97 data/minecraft/recipes/reeds_fence_from_reeds_block.json +9ac23e023581f6561a48740c7ae19211812bf5f3 data/minecraft/recipes/reeds_gate_from_reeds_block.json +e7d66166d80cd37b7e0557662efcda57cb36a466 data/minecraft/recipes/reeds_ladder_from_reeds_block.json +a82afde6bca3a7d3acbcf9ed8dd0e65b141553bb data/minecraft/recipes/reeds_plate_from_reeds_block.json +a7c43e8e3b396e41d5a483a329f147e752a32bea data/minecraft/recipes/reeds_slab_from_reeds_block.json +3a8c515861a738298957ac3357c71f0820710356 data/minecraft/recipes/reeds_stairs_from_reeds_block.json +00bc0a9aa3b30f847a4b697eb247a21c2848670b data/minecraft/recipes/reeds_trapdoor_from_reeds_block.json +8c93c97fb3426a6e6fc06eef38b0a87840e40172 data/minecraft/recipes/roof_tile_cincinnasite_from_cincinnasite_forged.json +b4b13b6198f12d59ecafdb8fe747817e48ab830e data/minecraft/recipes/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json +160fa0bee112fcf434e91c49fb746f4354cbc2f7 data/minecraft/recipes/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json +5cc0d3bfe98b6de9dc37622b561a1d3bdc0506aa data/minecraft/recipes/roof_tile_nether_bricks_from_nether_bricks.json +9c7901e84827c1b6d3121c39b2403d46179f1b99 data/minecraft/recipes/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json +d68ac0bd2f0464dd8f5d52f44f59b81cdb68d216 data/minecraft/recipes/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json +b4afede2debef147b344bbf3a65fe6b232fffde0 data/minecraft/recipes/roof_tile_reeds_from_reeds_block.json +a9acfbe05c700ed7399d021660d4c10938b87926 data/minecraft/recipes/roof_tile_reeds_slab_from_roof_tile_reeds.json +db1aabbeb5cb8e08e663ca43eb3d31b651682ed7 data/minecraft/recipes/roof_tile_reeds_stairs_from_roof_tile_reeds.json +997d31a723db5e824560ec03485083bcf0c9eb6c data/minecraft/recipes/roof_tile_stalagnate_from_stalagnate_planks.json +7875c6dfb31cdbefd13a53f3e0fbadf74ae8ac2b data/minecraft/recipes/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json +0fcf8b4d4e8a26ddc6f810d0cfe33af21496049c data/minecraft/recipes/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json +8df01322b79d51a472d9994fe2f85a35c9825b43 data/minecraft/recipes/roof_tile_wart_from_wart_planks.json +da0ae6b52447fd8c6b620d9091e3d043e1b38a23 data/minecraft/recipes/roof_tile_wart_slab_from_roof_tile_wart.json +2cf8b22ff5273423e81f60e63dc427af5f245084 data/minecraft/recipes/roof_tile_wart_stairs_from_roof_tile_wart.json +8b7a2b1f58af4f8e075cbb1de3e02643ba2ddfbb data/minecraft/recipes/roof_tile_willow_from_willow_planks.json +01a50d9c55837483dfad2953103380f0ad738250 data/minecraft/recipes/roof_tile_willow_slab_from_roof_tile_willow.json +9d8cd5e45b40ec612f8342a737eba5853edadae5 data/minecraft/recipes/roof_tile_willow_stairs_from_roof_tile_willow.json +9962cf3ea69a6ae8ed341e7cb9fc73cbabfec607 data/minecraft/recipes/rubeus_bark_from_rubeus_log.json +4a7a0f0a1e7faf3d854b86c4d1c881ee3da5550a data/minecraft/recipes/rubeus_button_from_rubeus_planks.json +4231b3f9ac49ab41eb4097b6e75e7315bf46988c data/minecraft/recipes/rubeus_door_from_rubeus_planks.json +f56395ec84c4552d1f1c884a85f5b850f2827040 data/minecraft/recipes/rubeus_fence_from_rubeus_planks.json +9cbb4a5e593e4cb76a1c538e8a4027d446fcbd1d data/minecraft/recipes/rubeus_gate_from_rubeus_planks.json +ca1fa12696cf3bc894a5ff8a9bc3af4caa3659c2 data/minecraft/recipes/rubeus_ladder_from_rubeus_planks.json +c51bf407100f0393bfdb7a50b4ce3d92d223deeb data/minecraft/recipes/rubeus_planks_from_rubeus_bark.json +2cb6c93987c6d23b3f6fb0da7e416937f1e6d98e data/minecraft/recipes/rubeus_planks_from_rubeus_log.json +1ddaa727fb43701365ad534b6c6a9bb448fbc0ec data/minecraft/recipes/rubeus_planks_from_striped_bark_rubeus.json +ced67a1a90d0ea7fbe06fa24d09e73b4d1bede9b data/minecraft/recipes/rubeus_planks_from_striped_log_rubeus.json +5e680f1d089b6afe3ee8cedbeb4a8ff3c0185e09 data/minecraft/recipes/rubeus_plate_from_rubeus_planks.json +41ce8e0e0ac50058e0c33e229ef4b8822c0ad161 data/minecraft/recipes/rubeus_slab_from_rubeus_planks.json +62283c055daec4b7d539a6245997346a3c1e8aea data/minecraft/recipes/rubeus_stairs_from_rubeus_planks.json +91c2e9fe63f5b76905d5d790226593f92ea7143b data/minecraft/recipes/rubeus_trapdoor_from_rubeus_planks.json +a5ba63732e73ccbe7bf0027be8f993905f3a1218 data/minecraft/recipes/sign_anchor_tree_from_anchor_tree_planks.json +17418d3a890721bafabaad7835e56153c7b143f2 data/minecraft/recipes/sign_mushroom_fir_from_mushroom_fir_planks.json +b6a183155dfb31a1afcfe45abd165b0aa812b1c1 data/minecraft/recipes/sign_mushroom_from_mushroom_planks.json +0bbe5d72a00f3f7c7b3fc0b9bce1abe4a21b52ab data/minecraft/recipes/sign_nether_sakura_from_nether_sakura_planks.json +a3a3ec7770cd85ffda336091423c488e50d87f08 data/minecraft/recipes/sign_reed_from_reeds_block.json +6eb85f8165e2bb578e905cceef62fab02b16457d data/minecraft/recipes/sign_rubeus_from_rubeus_planks.json +e82cdf1cf627f6d6a65871de12a4c83b4aed53e4 data/minecraft/recipes/sign_stalagnate_from_stalagnate_planks.json +26bfe69ebbb0b9abbd0f88dfb287514c2ab88afd data/minecraft/recipes/sign_wart_from_wart_planks.json +10122522ce4ed7fcb744e0fa071266ff6409dd12 data/minecraft/recipes/sign_willow_from_willow_planks.json +fe676b4130ecf7efbdd8b5898ec62c90dc952b6f data/minecraft/recipes/soul_sandstone_chiseled_from_soul_sandstone_smooth.json +4d8d9feee3fe433edeee4a253c7872afb11467eb data/minecraft/recipes/soul_sandstone_cut_from_soul_sandstone.json +76b4195181a9ef512b04d37843089b54acc62be8 data/minecraft/recipes/soul_sandstone_cut_slab_from_soul_sandstone_cut.json +86c6809d117da26da0bbea8598e12dc1a806458b data/minecraft/recipes/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json +9a8d9820d4c70767e812b21099d8a510112f8ca6 data/minecraft/recipes/soul_sandstone_slab_from_soul_sandstone.json +692e994f512fcc8ad29344d99501bcc0772a4263 data/minecraft/recipes/soul_sandstone_smooth_from_soul_sandstone_cut.json +5ecb02361340b373a4efd21f9c8b7c2a0195b6df data/minecraft/recipes/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json +23d71439da40c850143846353b7065b2bf6c3a87 data/minecraft/recipes/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json +c20fcd1edfe7207dd48f1f61b8ae55b01c2b3d99 data/minecraft/recipes/soul_sandstone_stairs_from_soul_sandstone.json +fa44f0bc5ed6854d72b6e07016c28fb665aee0a8 data/minecraft/recipes/soul_sandstone_wall_from_soul_sandstone_cut.json +0fbce8e04f1676a57ff5e17382d113adb70833d6 data/minecraft/recipes/stalagnate_bark_from_stalagnate_log.json +7eb67e3f14598d56721c40ed886405f8a0ecfed6 data/minecraft/recipes/stalagnate_ladder_from_stalagnate_planks.json +aea13cde8f52ac5e24b6b393eb19188a1f21f674 data/minecraft/recipes/stalagnate_log_from_stalagnate_stem.json +49ad029c244ced78b1e3ee55ac79b93dc17f4339 data/minecraft/recipes/stalagnate_planks_button_from_stalagnate_planks.json +3a7f1e20dce8e98604b60ffe2ad2086eee649274 data/minecraft/recipes/stalagnate_planks_door_from_stalagnate_planks.json +c160463cc6ce88bbefe4b7138a68afe3cc536104 data/minecraft/recipes/stalagnate_planks_fence_from_stalagnate_planks.json +d2bf551d8963b9a35a50e209db09fedf18f57756 data/minecraft/recipes/stalagnate_planks_from_stalagnate_bark.json +52c2e2043e15d87f03d95d16e24dd6eedf1dee37 data/minecraft/recipes/stalagnate_planks_from_stalagnate_log.json +b650b64fd83d048210ce4df73cb2edaee4bb7ccc data/minecraft/recipes/stalagnate_planks_from_stalagnate_stem.json +968abc9fea36823aa636f77ca5f3b411833c5a4d data/minecraft/recipes/stalagnate_planks_from_striped_bark_stalagnate.json +0e184b4fad8c4744417f02e882ce860d9effa22d data/minecraft/recipes/stalagnate_planks_from_striped_log_stalagnate.json +765b2995377bffa0169b06aedf5d7b7129b178e6 data/minecraft/recipes/stalagnate_planks_gate_from_stalagnate_planks.json +47df5af52e6e8d338db9c4542d49c44c95efa12c data/minecraft/recipes/stalagnate_planks_plate_from_stalagnate_planks.json +ff4fe2685b828872284da28b8f85389c68d15938 data/minecraft/recipes/stalagnate_planks_slab_from_stalagnate_planks.json +dd6ef2d098c52ea8fed556eea026b459ba00e751 data/minecraft/recipes/stalagnate_planks_stairs_from_stalagnate_planks.json +a9f3e2f7b841b52f27c4022bd2d2b8d61f645257 data/minecraft/recipes/stalagnate_planks_trapdoor_from_stalagnate_planks.json +8bd9a4a34a37da3b73fdb1bae22a0c2d767cbe4d data/minecraft/recipes/taburet_acacia_from_acacia_slab.json +b95e37896414ae5e47b843ef694f249730f03f5b data/minecraft/recipes/taburet_anchor_tree_from_anchor_tree_slab.json +41edd21a590e9a1e81e623be979ae3d1848b4119 data/minecraft/recipes/taburet_birch_from_birch_slab.json +5367ff99b75138f040d548a559ab74b06b2e92f3 data/minecraft/recipes/taburet_cincinnasite_from_cincinnasite_slab.json +699216ee290cee408ea191a4d8168d8f2007cbbf data/minecraft/recipes/taburet_crimson_from_crimson_slab.json +a1a035a725f6b6e2b0dcbce323a7c15a11d9d4cb data/minecraft/recipes/taburet_dark_oak_from_dark_oak_slab.json +e5fcebf16e8fd99a14d745d4173e0edb43d20f40 data/minecraft/recipes/taburet_jungle_from_jungle_slab.json +6d1ca394c06fe5a5d700803fa08cd2f18aeb059f data/minecraft/recipes/taburet_mushroom_fir_from_mushroom_fir_slab.json +0b59892d43841c91e3ded6ad981b54efe0427859 data/minecraft/recipes/taburet_mushroom_from_mushroom_slab.json +cc9d176d3b7644527b11a2835c1276b0f90db53e data/minecraft/recipes/taburet_nether_sakura_from_nether_sakura_slab.json +b2dc6c62eb36a72ac16453e353a7de4d97de5dfa data/minecraft/recipes/taburet_oak_from_oak_slab.json +af01193ee15f7922c38b2822ba4c9830708fcdb9 data/minecraft/recipes/taburet_reeds_from_reeds_slab.json +b3436fb3041ffe86c2fd1e41561e2d644258369a data/minecraft/recipes/taburet_rubeus_from_rubeus_slab.json +89d28655a7cf2d5c5f1345643d7ec94c5189bc94 data/minecraft/recipes/taburet_spruce_from_spruce_slab.json +d63bfe96a5cb3c159b9276c980066cce065199ea data/minecraft/recipes/taburet_stalagnate_from_stalagnate_planks_slab.json +dadc0a22228b174d7646a23a6f330cef26095ec6 data/minecraft/recipes/taburet_warped_from_warped_slab.json +2f4227cc52ef83b56b1218773e1f2dd28ae73a69 data/minecraft/recipes/taburet_wart_from_wart_slab.json +b63d9fdae1aa4c9ccff2d92b9674c3171ea004e8 data/minecraft/recipes/taburet_willow_from_willow_slab.json +05d4296766605ca26b779f1a6021d6cd7c998c3d data/minecraft/recipes/warped_ladder_from_warped_planks.json +a669c90b56afc3b681075d37fd4f668a7141abe0 data/minecraft/recipes/wart_bark_from_wart_log.json +5727c50a4ca7ab9741f9fec11a3d74cb9b01b4a0 data/minecraft/recipes/wart_button_from_wart_planks.json +1ca5838f54ee170308b0061ea7fc88396d94224d data/minecraft/recipes/wart_door_from_wart_planks.json +997e2aaeba6e3b1455c3e7c3805fb809bcbae381 data/minecraft/recipes/wart_fence_from_wart_planks.json +91053b238c6bb12221ea0dbff18787d79fb79da6 data/minecraft/recipes/wart_gate_from_wart_planks.json +c4a49ee016d87d5f7961652509ad22b072c19abd data/minecraft/recipes/wart_ladder_from_wart_planks.json +e448316e6a9119a346e38806d7838c76a3192192 data/minecraft/recipes/wart_planks_from_striped_bark_wart.json +9969cb8e925a9376ef7eafe759fa38b66b808d77 data/minecraft/recipes/wart_planks_from_striped_log_wart.json +21c6d9e3d8ea97d2db7287ad07646ad7485d8fcf data/minecraft/recipes/wart_planks_from_wart_bark.json +5a0b3bb79d7c445507ef143848c9272bb6069317 data/minecraft/recipes/wart_planks_from_wart_log.json +73586c66484eecc5a661575db837050dc733fad5 data/minecraft/recipes/wart_plate_from_wart_planks.json +378a3c8849eaf963c962a788dda684242ba0957a data/minecraft/recipes/wart_slab_from_wart_planks.json +15973153a665166ce9746178e0e43aec5e0e4f89 data/minecraft/recipes/wart_stairs_from_wart_planks.json +7fbe3d0f8a4c1d62c1919e9b69757e001cf42658 data/minecraft/recipes/wart_trapdoor_from_wart_planks.json +5a67c27290e77579ee94a93ed88ff9de06a5e181 data/minecraft/recipes/willow_bark_from_willow_log.json +7c45b5aca084aa8805a25353034f00bb64a71631 data/minecraft/recipes/willow_button_from_willow_planks.json +889aa959747ac71c22c36f726f3eac812336b66e data/minecraft/recipes/willow_door_from_willow_planks.json +b0ea2048d701d6f9c333d9e7d112b6efee7cd9d9 data/minecraft/recipes/willow_fence_from_willow_planks.json +ebefb265022466f9bc424f8c8c50b6715af722c3 data/minecraft/recipes/willow_gate_from_willow_planks.json +ec488a22435be32319ac13cf706ee0f68c6a1671 data/minecraft/recipes/willow_ladder_from_willow_planks.json +310fe711f83118d43f41f7fde7311ee4c848d901 data/minecraft/recipes/willow_planks_from_striped_bark_willow.json +e9471e7f0a65083a88cec37b4b65573be1bec659 data/minecraft/recipes/willow_planks_from_striped_log_willow.json +68fcff91b35b692889d3ed35d530220e2da22418 data/minecraft/recipes/willow_planks_from_willow_bark.json +bb76eff3679d1baf36e7758d39b01f328da8c69c data/minecraft/recipes/willow_planks_from_willow_log.json +11016dec857f41eaae6c730fe0f636bfdaac081a data/minecraft/recipes/willow_plate_from_willow_planks.json +b6f361bf481e0bf670a07670a6ebf98500b0e310 data/minecraft/recipes/willow_slab_from_willow_planks.json +2c57e3fef1d492f8937728e0dbc8224e620452a5 data/minecraft/recipes/willow_stairs_from_willow_planks.json +f968a4d5061d958dd6eb707bc7815b6d67a8310a data/minecraft/recipes/willow_trapdoor_from_willow_planks.json diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_bark_from_anchor_tree_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_bark_from_anchor_tree_log.json new file mode 100644 index 0000000..046e90e --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_bark_from_anchor_tree_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_bark_from_anchor_tree_log" + ] + }, + "criteria": { + "anchor_tree_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_bark_from_anchor_tree_log" + } + } + }, + "requirements": [ + [ + "anchor_tree_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_button_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_button_from_anchor_tree_planks.json new file mode 100644 index 0000000..8a38cd6 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_button_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_button_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_button_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_door_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_door_from_anchor_tree_planks.json new file mode 100644 index 0000000..363030c --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_door_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_door_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_door_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_fence_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_fence_from_anchor_tree_planks.json new file mode 100644 index 0000000..b607bdd --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_fence_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_fence_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_fence_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_gate_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_gate_from_anchor_tree_planks.json new file mode 100644 index 0000000..c95aa6d --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_gate_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_gate_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_gate_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_ladder_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_ladder_from_anchor_tree_planks.json new file mode 100644 index 0000000..cbf548d --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_ladder_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_ladder_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_ladder_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_bark.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_bark.json new file mode 100644 index 0000000..45623e3 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_bark.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_planks_from_anchor_tree_bark" + ] + }, + "criteria": { + "anchor_tree_bark": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_bark" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_planks_from_anchor_tree_bark" + } + } + }, + "requirements": [ + [ + "anchor_tree_bark", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_log.json new file mode 100644 index 0000000..8fd3ccf --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_planks_from_anchor_tree_log" + ] + }, + "criteria": { + "anchor_tree_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_planks_from_anchor_tree_log" + } + } + }, + "requirements": [ + [ + "anchor_tree_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_striped_bark_anchor_tree.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_striped_bark_anchor_tree.json new file mode 100644 index 0000000..0b76d87 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_striped_bark_anchor_tree.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_planks_from_striped_bark_anchor_tree" + ] + }, + "criteria": { + "striped_bark_anchor_tree": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_bark_anchor_tree" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_planks_from_striped_bark_anchor_tree" + } + } + }, + "requirements": [ + [ + "striped_bark_anchor_tree", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_striped_log_anchor_tree.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_striped_log_anchor_tree.json new file mode 100644 index 0000000..395ad16 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_planks_from_striped_log_anchor_tree.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_planks_from_striped_log_anchor_tree" + ] + }, + "criteria": { + "striped_log_anchor_tree": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_anchor_tree" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_planks_from_striped_log_anchor_tree" + } + } + }, + "requirements": [ + [ + "striped_log_anchor_tree", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_plate_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_plate_from_anchor_tree_planks.json new file mode 100644 index 0000000..9d87d0b --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_plate_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_plate_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_plate_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_slab_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_slab_from_anchor_tree_planks.json new file mode 100644 index 0000000..e0ecf01 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_slab_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_slab_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_slab_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_stairs_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_stairs_from_anchor_tree_planks.json new file mode 100644 index 0000000..a4ff6ac --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_stairs_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_stairs_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_stairs_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_trapdoor_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_trapdoor_from_anchor_tree_planks.json new file mode 100644 index 0000000..d8d0ccd --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/anchor_tree_trapdoor_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_trapdoor_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_trapdoor_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_acacia_from_acacia_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_acacia_from_acacia_slab.json new file mode 100644 index 0000000..5a652db --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_acacia_from_acacia_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_acacia_from_acacia_slab" + ] + }, + "criteria": { + "acacia_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:acacia_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_acacia_from_acacia_slab" + } + } + }, + "requirements": [ + [ + "acacia_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_anchor_tree_from_anchor_tree_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_anchor_tree_from_anchor_tree_slab.json new file mode 100644 index 0000000..4cc2505 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_anchor_tree_from_anchor_tree_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_anchor_tree_from_anchor_tree_slab" + ] + }, + "criteria": { + "anchor_tree_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_anchor_tree_from_anchor_tree_slab" + } + } + }, + "requirements": [ + [ + "anchor_tree_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_birch_from_birch_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_birch_from_birch_slab.json new file mode 100644 index 0000000..8d743b3 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_birch_from_birch_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_birch_from_birch_slab" + ] + }, + "criteria": { + "birch_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:birch_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_birch_from_birch_slab" + } + } + }, + "requirements": [ + [ + "birch_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_cincinnasite_from_cincinnasite_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_cincinnasite_from_cincinnasite_slab.json new file mode 100644 index 0000000..2cb7c78 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_cincinnasite_from_cincinnasite_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_cincinnasite_from_cincinnasite_slab" + ] + }, + "criteria": { + "cincinnasite_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_cincinnasite_from_cincinnasite_slab" + } + } + }, + "requirements": [ + [ + "cincinnasite_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_crimson_from_crimson_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_crimson_from_crimson_slab.json new file mode 100644 index 0000000..a028508 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_crimson_from_crimson_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_crimson_from_crimson_slab" + ] + }, + "criteria": { + "crimson_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_crimson_from_crimson_slab" + } + } + }, + "requirements": [ + [ + "crimson_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_dark_oak_from_dark_oak_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_dark_oak_from_dark_oak_slab.json new file mode 100644 index 0000000..3e46e01 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_dark_oak_from_dark_oak_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_dark_oak_from_dark_oak_slab" + ] + }, + "criteria": { + "dark_oak_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:dark_oak_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_dark_oak_from_dark_oak_slab" + } + } + }, + "requirements": [ + [ + "dark_oak_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_jungle_from_jungle_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_jungle_from_jungle_slab.json new file mode 100644 index 0000000..d5c2169 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_jungle_from_jungle_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_jungle_from_jungle_slab" + ] + }, + "criteria": { + "jungle_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:jungle_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_jungle_from_jungle_slab" + } + } + }, + "requirements": [ + [ + "jungle_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_mushroom_fir_from_mushroom_fir_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_mushroom_fir_from_mushroom_fir_slab.json new file mode 100644 index 0000000..7674b64 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_mushroom_fir_from_mushroom_fir_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_mushroom_fir_from_mushroom_fir_slab" + ] + }, + "criteria": { + "mushroom_fir_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_mushroom_fir_from_mushroom_fir_slab" + } + } + }, + "requirements": [ + [ + "mushroom_fir_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_mushroom_from_mushroom_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_mushroom_from_mushroom_slab.json new file mode 100644 index 0000000..752a960 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_mushroom_from_mushroom_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_mushroom_from_mushroom_slab" + ] + }, + "criteria": { + "mushroom_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_mushroom_from_mushroom_slab" + } + } + }, + "requirements": [ + [ + "mushroom_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_nether_sakura_from_nether_sakura_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_nether_sakura_from_nether_sakura_slab.json new file mode 100644 index 0000000..10e1e1b --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_nether_sakura_from_nether_sakura_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_nether_sakura_from_nether_sakura_slab" + ] + }, + "criteria": { + "nether_sakura_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_nether_sakura_from_nether_sakura_slab" + } + } + }, + "requirements": [ + [ + "nether_sakura_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_oak_from_oak_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_oak_from_oak_slab.json new file mode 100644 index 0000000..3639be0 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_oak_from_oak_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_oak_from_oak_slab" + ] + }, + "criteria": { + "oak_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:oak_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_oak_from_oak_slab" + } + } + }, + "requirements": [ + [ + "oak_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_reeds_from_reeds_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_reeds_from_reeds_slab.json new file mode 100644 index 0000000..43fe0a7 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_reeds_from_reeds_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_reeds_from_reeds_slab" + ] + }, + "criteria": { + "reeds_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_reeds_from_reeds_slab" + } + } + }, + "requirements": [ + [ + "reeds_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_rubeus_from_rubeus_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_rubeus_from_rubeus_slab.json new file mode 100644 index 0000000..acd37c2 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_rubeus_from_rubeus_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_rubeus_from_rubeus_slab" + ] + }, + "criteria": { + "rubeus_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_rubeus_from_rubeus_slab" + } + } + }, + "requirements": [ + [ + "rubeus_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_spruce_from_spruce_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_spruce_from_spruce_slab.json new file mode 100644 index 0000000..59a8d92 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_spruce_from_spruce_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_spruce_from_spruce_slab" + ] + }, + "criteria": { + "spruce_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:spruce_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_spruce_from_spruce_slab" + } + } + }, + "requirements": [ + [ + "spruce_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_stalagnate_from_stalagnate_planks_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_stalagnate_from_stalagnate_planks_slab.json new file mode 100644 index 0000000..a374d90 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_stalagnate_from_stalagnate_planks_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_stalagnate_from_stalagnate_planks_slab" + ] + }, + "criteria": { + "stalagnate_planks_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_stalagnate_from_stalagnate_planks_slab" + } + } + }, + "requirements": [ + [ + "stalagnate_planks_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_warped_from_warped_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_warped_from_warped_slab.json new file mode 100644 index 0000000..c62733d --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_warped_from_warped_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_warped_from_warped_slab" + ] + }, + "criteria": { + "warped_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_warped_from_warped_slab" + } + } + }, + "requirements": [ + [ + "warped_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_wart_from_wart_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_wart_from_wart_slab.json new file mode 100644 index 0000000..3e55e90 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_wart_from_wart_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_wart_from_wart_slab" + ] + }, + "criteria": { + "wart_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_wart_from_wart_slab" + } + } + }, + "requirements": [ + [ + "wart_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_willow_from_willow_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_willow_from_willow_slab.json new file mode 100644 index 0000000..f791bff --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bar_stool_willow_from_willow_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_willow_from_willow_slab" + ] + }, + "criteria": { + "willow_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_willow_from_willow_slab" + } + } + }, + "requirements": [ + [ + "willow_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_anchor_tree_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..abda78c --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_anchor_tree_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_anchor_tree_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_crimson_from_crimson_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_crimson_from_crimson_planks.json new file mode 100644 index 0000000..cafcfec --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_crimson_from_crimson_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_crimson_from_crimson_planks" + ] + }, + "criteria": { + "crimson_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_crimson_from_crimson_planks" + } + } + }, + "requirements": [ + [ + "crimson_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_mushroom_fir_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..6175641 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_mushroom_fir_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_mushroom_fir_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_mushroom_from_mushroom_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..8a6c687 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_mushroom_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_mushroom_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_mushroom_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_nether_sakura_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..4412b9e --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_nether_sakura_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_nether_sakura_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_reed_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_reed_from_reeds_block.json new file mode 100644 index 0000000..3fc2636 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_reed_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_reed_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_reed_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_rubeus_from_rubeus_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..b5f35c9 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_rubeus_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_rubeus_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_rubeus_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_stalagnate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..5da5ced --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_stalagnate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_stalagnate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_warped_from_warped_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_warped_from_warped_planks.json new file mode 100644 index 0000000..7bf9f41 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_warped_from_warped_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_warped_from_warped_planks" + ] + }, + "criteria": { + "warped_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_warped_from_warped_planks" + } + } + }, + "requirements": [ + [ + "warped_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_wart_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_wart_from_wart_planks.json new file mode 100644 index 0000000..0fd5707 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_wart_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_wart_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_wart_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_willow_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_willow_from_willow_planks.json new file mode 100644 index 0000000..2b772cd --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/barrel_willow_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_willow_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_willow_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_bricks_from_polished_basalt.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_bricks_from_polished_basalt.json new file mode 100644 index 0000000..cd31b9f --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_bricks_from_polished_basalt.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_bricks_from_polished_basalt" + ] + }, + "criteria": { + "polished_basalt": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:polished_basalt" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_bricks_from_polished_basalt" + } + } + }, + "requirements": [ + [ + "polished_basalt", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_bricks_slab_from_basalt_bricks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_bricks_slab_from_basalt_bricks.json new file mode 100644 index 0000000..b2af3ea --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_bricks_slab_from_basalt_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_bricks_slab_from_basalt_bricks" + ] + }, + "criteria": { + "basalt_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:basalt_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_bricks_slab_from_basalt_bricks" + } + } + }, + "requirements": [ + [ + "basalt_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_bricks_stairs_from_basalt_bricks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_bricks_stairs_from_basalt_bricks.json new file mode 100644 index 0000000..586addd --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_bricks_stairs_from_basalt_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_bricks_stairs_from_basalt_bricks" + ] + }, + "criteria": { + "basalt_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:basalt_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_bricks_stairs_from_basalt_bricks" + } + } + }, + "requirements": [ + [ + "basalt_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_bricks_wall_from_basalt_bricks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_bricks_wall_from_basalt_bricks.json new file mode 100644 index 0000000..4272e9e --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_bricks_wall_from_basalt_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_bricks_wall_from_basalt_bricks" + ] + }, + "criteria": { + "basalt_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:basalt_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_bricks_wall_from_basalt_bricks" + } + } + }, + "requirements": [ + [ + "basalt_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_furnace_from_basalt.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_furnace_from_basalt.json new file mode 100644 index 0000000..18366ba --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_furnace_from_basalt.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_furnace_from_basalt" + ] + }, + "criteria": { + "basalt": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:basalt" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_furnace_from_basalt" + } + } + }, + "requirements": [ + [ + "basalt", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_slab_from_basalt.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_slab_from_basalt.json new file mode 100644 index 0000000..c84999c --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_slab_from_basalt.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_slab_from_basalt" + ] + }, + "criteria": { + "basalt": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:basalt" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_slab_from_basalt" + } + } + }, + "requirements": [ + [ + "basalt", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_stalactite_from_basalt.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_stalactite_from_basalt.json new file mode 100644 index 0000000..da18337 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/basalt_stalactite_from_basalt.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_stalactite_from_basalt" + ] + }, + "criteria": { + "basalt": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:basalt" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_stalactite_from_basalt" + } + } + }, + "requirements": [ + [ + "basalt", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/blackstone_furnace_from_blackstone.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/blackstone_furnace_from_blackstone.json new file mode 100644 index 0000000..781c655 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/blackstone_furnace_from_blackstone.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:blackstone_furnace_from_blackstone" + ] + }, + "criteria": { + "blackstone": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:blackstone" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:blackstone_furnace_from_blackstone" + } + } + }, + "requirements": [ + [ + "blackstone", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/blackstone_stalactite_from_blackstone.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/blackstone_stalactite_from_blackstone.json new file mode 100644 index 0000000..4bff546 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/blackstone_stalactite_from_blackstone.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:blackstone_stalactite_from_blackstone" + ] + }, + "criteria": { + "blackstone": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:blackstone" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:blackstone_stalactite_from_blackstone" + } + } + }, + "requirements": [ + [ + "blackstone", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json new file mode 100644 index 0000000..649f4c5 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:blue_obsidian_bricks_slab_from_blue_obsidian_bricks" + ] + }, + "criteria": { + "blue_obsidian_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:blue_obsidian_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:blue_obsidian_bricks_slab_from_blue_obsidian_bricks" + } + } + }, + "requirements": [ + [ + "blue_obsidian_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json new file mode 100644 index 0000000..228dfae --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:blue_obsidian_bricks_stairs_from_blue_obsidian_bricks" + ] + }, + "criteria": { + "blue_obsidian_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:blue_obsidian_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:blue_obsidian_bricks_stairs_from_blue_obsidian_bricks" + } + } + }, + "requirements": [ + [ + "blue_obsidian_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json new file mode 100644 index 0000000..0fdb318 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:blue_obsidian_tile_slab_from_blue_obsidian_tile_small" + ] + }, + "criteria": { + "blue_obsidian_tile_small": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:blue_obsidian_tile_small" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:blue_obsidian_tile_slab_from_blue_obsidian_tile_small" + } + } + }, + "requirements": [ + [ + "blue_obsidian_tile_small", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json new file mode 100644 index 0000000..91f6bcb --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:blue_obsidian_tile_stairs_from_blue_obsidian_tile_small" + ] + }, + "criteria": { + "blue_obsidian_tile_small": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:blue_obsidian_tile_small" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:blue_obsidian_tile_stairs_from_blue_obsidian_tile_small" + } + } + }, + "requirements": [ + [ + "blue_obsidian_tile_small", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_button_from_bone_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_button_from_bone_block.json new file mode 100644 index 0000000..19cb002 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_button_from_bone_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bone_button_from_bone_block" + ] + }, + "criteria": { + "bone_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:bone_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bone_button_from_bone_block" + } + } + }, + "requirements": [ + [ + "bone_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_plate_from_bone_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_plate_from_bone_block.json new file mode 100644 index 0000000..5548f48 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_plate_from_bone_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bone_plate_from_bone_block" + ] + }, + "criteria": { + "bone_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:bone_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bone_plate_from_bone_block" + } + } + }, + "requirements": [ + [ + "bone_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_slab_from_bone_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_slab_from_bone_block.json new file mode 100644 index 0000000..c4d21df --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_slab_from_bone_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bone_slab_from_bone_block" + ] + }, + "criteria": { + "bone_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:bone_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bone_slab_from_bone_block" + } + } + }, + "requirements": [ + [ + "bone_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_stairs_from_bone_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_stairs_from_bone_block.json new file mode 100644 index 0000000..abb3a34 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_stairs_from_bone_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bone_stairs_from_bone_block" + ] + }, + "criteria": { + "bone_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:bone_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bone_stairs_from_bone_block" + } + } + }, + "requirements": [ + [ + "bone_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_stalactite_from_bone_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_stalactite_from_bone_block.json new file mode 100644 index 0000000..c43ea76 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_stalactite_from_bone_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bone_stalactite_from_bone_block" + ] + }, + "criteria": { + "bone_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:bone_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bone_stalactite_from_bone_block" + } + } + }, + "requirements": [ + [ + "bone_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_wall_from_bone_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_wall_from_bone_block.json new file mode 100644 index 0000000..cb2ff57 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bone_wall_from_bone_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bone_wall_from_bone_block" + ] + }, + "criteria": { + "bone_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:bone_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bone_wall_from_bone_block" + } + } + }, + "requirements": [ + [ + "bone_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bricks_fire_bowl_from_nether_brick_tile_large.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bricks_fire_bowl_from_nether_brick_tile_large.json new file mode 100644 index 0000000..161fac3 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bricks_fire_bowl_from_nether_brick_tile_large.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bricks_fire_bowl_from_nether_brick_tile_large" + ] + }, + "criteria": { + "nether_brick_tile_large": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_brick_tile_large" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bricks_fire_bowl_from_nether_brick_tile_large" + } + } + }, + "requirements": [ + [ + "nether_brick_tile_large", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/bricks_fire_bowl_soul_from_nether_brick_tile_large.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bricks_fire_bowl_soul_from_nether_brick_tile_large.json new file mode 100644 index 0000000..ba08e75 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/bricks_fire_bowl_soul_from_nether_brick_tile_large.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bricks_fire_bowl_soul_from_nether_brick_tile_large" + ] + }, + "criteria": { + "nether_brick_tile_large": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_brick_tile_large" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bricks_fire_bowl_soul_from_nether_brick_tile_large" + } + } + }, + "requirements": [ + [ + "nether_brick_tile_large", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_acacia_from_acacia_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_acacia_from_acacia_slab.json new file mode 100644 index 0000000..a3bd1a3 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_acacia_from_acacia_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_acacia_from_acacia_slab" + ] + }, + "criteria": { + "acacia_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:acacia_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_acacia_from_acacia_slab" + } + } + }, + "requirements": [ + [ + "acacia_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_anchor_tree_from_anchor_tree_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_anchor_tree_from_anchor_tree_slab.json new file mode 100644 index 0000000..e670974 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_anchor_tree_from_anchor_tree_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_anchor_tree_from_anchor_tree_slab" + ] + }, + "criteria": { + "anchor_tree_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_anchor_tree_from_anchor_tree_slab" + } + } + }, + "requirements": [ + [ + "anchor_tree_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_birch_from_birch_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_birch_from_birch_slab.json new file mode 100644 index 0000000..cf974fd --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_birch_from_birch_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_birch_from_birch_slab" + ] + }, + "criteria": { + "birch_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:birch_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_birch_from_birch_slab" + } + } + }, + "requirements": [ + [ + "birch_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_cincinnasite_from_cincinnasite_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_cincinnasite_from_cincinnasite_slab.json new file mode 100644 index 0000000..6b43394 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_cincinnasite_from_cincinnasite_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_cincinnasite_from_cincinnasite_slab" + ] + }, + "criteria": { + "cincinnasite_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_cincinnasite_from_cincinnasite_slab" + } + } + }, + "requirements": [ + [ + "cincinnasite_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_crimson_from_crimson_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_crimson_from_crimson_slab.json new file mode 100644 index 0000000..5790032 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_crimson_from_crimson_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_crimson_from_crimson_slab" + ] + }, + "criteria": { + "crimson_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_crimson_from_crimson_slab" + } + } + }, + "requirements": [ + [ + "crimson_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_dark_oak_from_dark_oak_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_dark_oak_from_dark_oak_slab.json new file mode 100644 index 0000000..d8fa59c --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_dark_oak_from_dark_oak_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_dark_oak_from_dark_oak_slab" + ] + }, + "criteria": { + "dark_oak_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:dark_oak_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_dark_oak_from_dark_oak_slab" + } + } + }, + "requirements": [ + [ + "dark_oak_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_jungle_from_jungle_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_jungle_from_jungle_slab.json new file mode 100644 index 0000000..4326c5d --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_jungle_from_jungle_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_jungle_from_jungle_slab" + ] + }, + "criteria": { + "jungle_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:jungle_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_jungle_from_jungle_slab" + } + } + }, + "requirements": [ + [ + "jungle_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_mushroom_fir_from_mushroom_fir_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_mushroom_fir_from_mushroom_fir_slab.json new file mode 100644 index 0000000..ed0b635 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_mushroom_fir_from_mushroom_fir_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_mushroom_fir_from_mushroom_fir_slab" + ] + }, + "criteria": { + "mushroom_fir_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_mushroom_fir_from_mushroom_fir_slab" + } + } + }, + "requirements": [ + [ + "mushroom_fir_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_mushroom_from_mushroom_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_mushroom_from_mushroom_slab.json new file mode 100644 index 0000000..6a0b25a --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_mushroom_from_mushroom_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_mushroom_from_mushroom_slab" + ] + }, + "criteria": { + "mushroom_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_mushroom_from_mushroom_slab" + } + } + }, + "requirements": [ + [ + "mushroom_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_nether_sakura_from_nether_sakura_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_nether_sakura_from_nether_sakura_slab.json new file mode 100644 index 0000000..aa60f4c --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_nether_sakura_from_nether_sakura_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_nether_sakura_from_nether_sakura_slab" + ] + }, + "criteria": { + "nether_sakura_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_nether_sakura_from_nether_sakura_slab" + } + } + }, + "requirements": [ + [ + "nether_sakura_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_oak_from_oak_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_oak_from_oak_slab.json new file mode 100644 index 0000000..aa4fef0 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_oak_from_oak_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_oak_from_oak_slab" + ] + }, + "criteria": { + "oak_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:oak_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_oak_from_oak_slab" + } + } + }, + "requirements": [ + [ + "oak_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_reeds_from_reeds_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_reeds_from_reeds_slab.json new file mode 100644 index 0000000..0f0c662 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_reeds_from_reeds_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_reeds_from_reeds_slab" + ] + }, + "criteria": { + "reeds_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_reeds_from_reeds_slab" + } + } + }, + "requirements": [ + [ + "reeds_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_rubeus_from_rubeus_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_rubeus_from_rubeus_slab.json new file mode 100644 index 0000000..aa4add7 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_rubeus_from_rubeus_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_rubeus_from_rubeus_slab" + ] + }, + "criteria": { + "rubeus_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_rubeus_from_rubeus_slab" + } + } + }, + "requirements": [ + [ + "rubeus_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_spruce_from_spruce_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_spruce_from_spruce_slab.json new file mode 100644 index 0000000..05f9217 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_spruce_from_spruce_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_spruce_from_spruce_slab" + ] + }, + "criteria": { + "spruce_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:spruce_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_spruce_from_spruce_slab" + } + } + }, + "requirements": [ + [ + "spruce_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_stalagnate_from_stalagnate_planks_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_stalagnate_from_stalagnate_planks_slab.json new file mode 100644 index 0000000..2acde93 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_stalagnate_from_stalagnate_planks_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_stalagnate_from_stalagnate_planks_slab" + ] + }, + "criteria": { + "stalagnate_planks_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_stalagnate_from_stalagnate_planks_slab" + } + } + }, + "requirements": [ + [ + "stalagnate_planks_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_warped_from_warped_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_warped_from_warped_slab.json new file mode 100644 index 0000000..8587fe0 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_warped_from_warped_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_warped_from_warped_slab" + ] + }, + "criteria": { + "warped_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_warped_from_warped_slab" + } + } + }, + "requirements": [ + [ + "warped_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_wart_from_wart_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_wart_from_wart_slab.json new file mode 100644 index 0000000..b652faf --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_wart_from_wart_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_wart_from_wart_slab" + ] + }, + "criteria": { + "wart_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_wart_from_wart_slab" + } + } + }, + "requirements": [ + [ + "wart_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_willow_from_willow_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_willow_from_willow_slab.json new file mode 100644 index 0000000..613ccb2 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chair_willow_from_willow_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_willow_from_willow_slab" + ] + }, + "criteria": { + "willow_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_willow_from_willow_slab" + } + } + }, + "requirements": [ + [ + "willow_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_anchor_tree_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..58f875c --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_anchor_tree_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_anchor_tree_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_crimson_from_crimson_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_crimson_from_crimson_planks.json new file mode 100644 index 0000000..44f1108 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_crimson_from_crimson_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_crimson_from_crimson_planks" + ] + }, + "criteria": { + "crimson_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_crimson_from_crimson_planks" + } + } + }, + "requirements": [ + [ + "crimson_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_mushroom_fir_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..0813e25 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_mushroom_fir_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_mushroom_fir_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_mushroom_from_mushroom_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..88dd367 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_mushroom_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_mushroom_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_mushroom_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_nether_sakura_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..b260820 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_nether_sakura_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_nether_sakura_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_reed_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_reed_from_reeds_block.json new file mode 100644 index 0000000..0063ca2 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_reed_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_reed_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_reed_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_rubeus_from_rubeus_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..99c5ba8 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_rubeus_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_rubeus_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_rubeus_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_stalagnate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..337f7a7 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_stalagnate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_stalagnate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_warped_from_warped_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_warped_from_warped_planks.json new file mode 100644 index 0000000..14fc41b --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_warped_from_warped_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_warped_from_warped_planks" + ] + }, + "criteria": { + "warped_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_warped_from_warped_planks" + } + } + }, + "requirements": [ + [ + "warped_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_wart_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_wart_from_wart_planks.json new file mode 100644 index 0000000..eb370bb --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_wart_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_wart_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_wart_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_willow_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_willow_from_willow_planks.json new file mode 100644 index 0000000..ae5e3ce --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/chest_willow_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_willow_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_willow_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_fire_bowl_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_fire_bowl_from_cincinnasite_forged.json new file mode 100644 index 0000000..6d77da3 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_fire_bowl_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:cincinnasite_fire_bowl_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:cincinnasite_fire_bowl_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json new file mode 100644 index 0000000..0efd0c4 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:cincinnasite_fire_bowl_soul_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:cincinnasite_fire_bowl_soul_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_plate_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_plate_from_cincinnasite_forged.json new file mode 100644 index 0000000..d03f138 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_plate_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:cincinnasite_plate_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:cincinnasite_plate_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_slab_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_slab_from_cincinnasite_forged.json new file mode 100644 index 0000000..261a735 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_slab_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:cincinnasite_slab_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:cincinnasite_slab_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_stairs_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_stairs_from_cincinnasite_forged.json new file mode 100644 index 0000000..46b156f --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_stairs_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:cincinnasite_stairs_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:cincinnasite_stairs_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_wall_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_wall_from_cincinnasite_forged.json new file mode 100644 index 0000000..d0a89d0 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/cincinnasite_wall_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:cincinnasite_wall_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:cincinnasite_wall_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_anchor_tree_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..6515888 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_anchor_tree_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_anchor_tree_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_crimson_from_crimson_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_crimson_from_crimson_planks.json new file mode 100644 index 0000000..1f9a8fe --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_crimson_from_crimson_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_crimson_from_crimson_planks" + ] + }, + "criteria": { + "crimson_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_crimson_from_crimson_planks" + } + } + }, + "requirements": [ + [ + "crimson_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_mushroom_fir_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..23ba714 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_mushroom_fir_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_mushroom_fir_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_mushroom_from_mushroom_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..b0ab33d --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_mushroom_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_mushroom_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_mushroom_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_nether_sakura_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..234cd6d --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_nether_sakura_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_nether_sakura_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_reed_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_reed_from_reeds_block.json new file mode 100644 index 0000000..8545eeb --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_reed_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_reed_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_reed_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_rubeus_from_rubeus_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..02b4e9b --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_rubeus_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_rubeus_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_rubeus_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_stalagnate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..2669bf4 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_stalagnate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_stalagnate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_warped_from_warped_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_warped_from_warped_planks.json new file mode 100644 index 0000000..bd20863 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_warped_from_warped_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_warped_from_warped_planks" + ] + }, + "criteria": { + "warped_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_warped_from_warped_planks" + } + } + }, + "requirements": [ + [ + "warped_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_wart_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_wart_from_wart_planks.json new file mode 100644 index 0000000..00754e8 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_wart_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_wart_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_wart_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_willow_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_willow_from_willow_planks.json new file mode 100644 index 0000000..3fbf3af --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crafting_table_willow_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_willow_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_willow_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/crimson_ladder_from_crimson_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crimson_ladder_from_crimson_planks.json new file mode 100644 index 0000000..22f87eb --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/crimson_ladder_from_crimson_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crimson_ladder_from_crimson_planks" + ] + }, + "criteria": { + "crimson_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crimson_ladder_from_crimson_planks" + } + } + }, + "requirements": [ + [ + "crimson_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/glowstone_stalactite_from_glowstone.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/glowstone_stalactite_from_glowstone.json new file mode 100644 index 0000000..81d3dbb --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/glowstone_stalactite_from_glowstone.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:glowstone_stalactite_from_glowstone" + ] + }, + "criteria": { + "glowstone": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:glowstone" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:glowstone_stalactite_from_glowstone" + } + } + }, + "requirements": [ + [ + "glowstone", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_button_from_mushroom_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_button_from_mushroom_planks.json new file mode 100644 index 0000000..44bc339 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_button_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_button_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_button_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_door_from_mushroom_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_door_from_mushroom_planks.json new file mode 100644 index 0000000..2f203d8 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_door_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_door_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_door_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fence_from_mushroom_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fence_from_mushroom_planks.json new file mode 100644 index 0000000..7c4a568 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fence_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fence_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fence_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_button_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_button_from_mushroom_fir_planks.json new file mode 100644 index 0000000..1f90883 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_button_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_button_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_button_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_door_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_door_from_mushroom_fir_planks.json new file mode 100644 index 0000000..a9a3af3 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_door_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_door_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_door_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_fence_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_fence_from_mushroom_fir_planks.json new file mode 100644 index 0000000..979d5cb --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_fence_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_fence_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_fence_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_gate_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_gate_from_mushroom_fir_planks.json new file mode 100644 index 0000000..dc860ec --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_gate_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_gate_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_gate_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_ladder_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_ladder_from_mushroom_fir_planks.json new file mode 100644 index 0000000..f29ae39 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_ladder_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_ladder_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_ladder_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_log_from_mushroom_fir_stem.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_log_from_mushroom_fir_stem.json new file mode 100644 index 0000000..8002d29 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_log_from_mushroom_fir_stem.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_log_from_mushroom_fir_stem" + ] + }, + "criteria": { + "mushroom_fir_stem": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_stem" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_log_from_mushroom_fir_stem" + } + } + }, + "requirements": [ + [ + "mushroom_fir_stem", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_log.json new file mode 100644 index 0000000..866c4f9 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_planks_from_mushroom_fir_log" + ] + }, + "criteria": { + "mushroom_fir_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_planks_from_mushroom_fir_log" + } + } + }, + "requirements": [ + [ + "mushroom_fir_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_stem.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_stem.json new file mode 100644 index 0000000..686ba3a --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_stem.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_planks_from_mushroom_fir_stem" + ] + }, + "criteria": { + "mushroom_fir_stem": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_stem" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_planks_from_mushroom_fir_stem" + } + } + }, + "requirements": [ + [ + "mushroom_fir_stem", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_wood.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_wood.json new file mode 100644 index 0000000..7b32c79 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_wood.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_planks_from_mushroom_fir_wood" + ] + }, + "criteria": { + "mushroom_fir_wood": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_wood" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_planks_from_mushroom_fir_wood" + } + } + }, + "requirements": [ + [ + "mushroom_fir_wood", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_striped_log_mushroom_fir.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_striped_log_mushroom_fir.json new file mode 100644 index 0000000..df3ce16 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_striped_log_mushroom_fir.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_planks_from_striped_log_mushroom_fir" + ] + }, + "criteria": { + "striped_log_mushroom_fir": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_mushroom_fir" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_planks_from_striped_log_mushroom_fir" + } + } + }, + "requirements": [ + [ + "striped_log_mushroom_fir", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_striped_wood_mushroom_fir.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_striped_wood_mushroom_fir.json new file mode 100644 index 0000000..eccb440 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_planks_from_striped_wood_mushroom_fir.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_planks_from_striped_wood_mushroom_fir" + ] + }, + "criteria": { + "striped_wood_mushroom_fir": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_wood_mushroom_fir" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_planks_from_striped_wood_mushroom_fir" + } + } + }, + "requirements": [ + [ + "striped_wood_mushroom_fir", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_plate_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_plate_from_mushroom_fir_planks.json new file mode 100644 index 0000000..a0b39b0 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_plate_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_plate_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_plate_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_slab_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_slab_from_mushroom_fir_planks.json new file mode 100644 index 0000000..413bca3 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_slab_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_slab_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_slab_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_stairs_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_stairs_from_mushroom_fir_planks.json new file mode 100644 index 0000000..11547c6 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_stairs_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_stairs_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_stairs_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_trapdoor_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_trapdoor_from_mushroom_fir_planks.json new file mode 100644 index 0000000..ecae080 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_trapdoor_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_trapdoor_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_trapdoor_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_wood_from_mushroom_fir_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_wood_from_mushroom_fir_log.json new file mode 100644 index 0000000..6ff6716 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_fir_wood_from_mushroom_fir_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_wood_from_mushroom_fir_log" + ] + }, + "criteria": { + "mushroom_fir_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_wood_from_mushroom_fir_log" + } + } + }, + "requirements": [ + [ + "mushroom_fir_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_gate_from_mushroom_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_gate_from_mushroom_planks.json new file mode 100644 index 0000000..d089228 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_gate_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_gate_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_gate_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_ladder_from_mushroom_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_ladder_from_mushroom_planks.json new file mode 100644 index 0000000..100902e --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_ladder_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_ladder_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_ladder_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_planks_from_mushroom_stem.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_planks_from_mushroom_stem.json new file mode 100644 index 0000000..6cfdf32 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_planks_from_mushroom_stem.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_planks_from_mushroom_stem" + ] + }, + "criteria": { + "mushroom_stem": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_stem" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_planks_from_mushroom_stem" + } + } + }, + "requirements": [ + [ + "mushroom_stem", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_plate_from_mushroom_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_plate_from_mushroom_planks.json new file mode 100644 index 0000000..ad02a7a --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_plate_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_plate_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_plate_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_slab_from_mushroom_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_slab_from_mushroom_planks.json new file mode 100644 index 0000000..10c258d --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_slab_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_slab_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_slab_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_stairs_from_mushroom_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_stairs_from_mushroom_planks.json new file mode 100644 index 0000000..2f7c3de --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_stairs_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_stairs_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_stairs_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_trapdoor_from_mushroom_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_trapdoor_from_mushroom_planks.json new file mode 100644 index 0000000..6af2693 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/mushroom_trapdoor_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_trapdoor_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_trapdoor_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_brick_tile_slab_from_nether_brick_tile_small.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_brick_tile_slab_from_nether_brick_tile_small.json new file mode 100644 index 0000000..dd23b3b --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_brick_tile_slab_from_nether_brick_tile_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_brick_tile_slab_from_nether_brick_tile_small" + ] + }, + "criteria": { + "nether_brick_tile_small": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_brick_tile_small" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_brick_tile_slab_from_nether_brick_tile_small" + } + } + }, + "requirements": [ + [ + "nether_brick_tile_small", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_brick_tile_stairs_from_nether_brick_tile_small.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_brick_tile_stairs_from_nether_brick_tile_small.json new file mode 100644 index 0000000..20ff83f --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_brick_tile_stairs_from_nether_brick_tile_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_brick_tile_stairs_from_nether_brick_tile_small" + ] + }, + "criteria": { + "nether_brick_tile_small": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_brick_tile_small" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_brick_tile_stairs_from_nether_brick_tile_small" + } + } + }, + "requirements": [ + [ + "nether_brick_tile_small", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_brick_wall_from_nether_brick_tile_large.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_brick_wall_from_nether_brick_tile_large.json new file mode 100644 index 0000000..80853a8 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_brick_wall_from_nether_brick_tile_large.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_brick_wall_from_nether_brick_tile_large" + ] + }, + "criteria": { + "nether_brick_tile_large": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_brick_tile_large" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_brick_wall_from_nether_brick_tile_large" + } + } + }, + "requirements": [ + [ + "nether_brick_tile_large", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_ruby_slab_from_nether_ruby_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_ruby_slab_from_nether_ruby_block.json new file mode 100644 index 0000000..65367c6 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_ruby_slab_from_nether_ruby_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_ruby_slab_from_nether_ruby_block" + ] + }, + "criteria": { + "nether_ruby_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_ruby_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_ruby_slab_from_nether_ruby_block" + } + } + }, + "requirements": [ + [ + "nether_ruby_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_ruby_stairs_from_nether_ruby_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_ruby_stairs_from_nether_ruby_block.json new file mode 100644 index 0000000..b36e780 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_ruby_stairs_from_nether_ruby_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_ruby_stairs_from_nether_ruby_block" + ] + }, + "criteria": { + "nether_ruby_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_ruby_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_ruby_stairs_from_nether_ruby_block" + } + } + }, + "requirements": [ + [ + "nether_ruby_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_bark_from_nether_sakura_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_bark_from_nether_sakura_log.json new file mode 100644 index 0000000..f812914 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_bark_from_nether_sakura_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_bark_from_nether_sakura_log" + ] + }, + "criteria": { + "nether_sakura_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_bark_from_nether_sakura_log" + } + } + }, + "requirements": [ + [ + "nether_sakura_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_button_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_button_from_nether_sakura_planks.json new file mode 100644 index 0000000..6a977ca --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_button_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_button_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_button_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_door_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_door_from_nether_sakura_planks.json new file mode 100644 index 0000000..8c07003 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_door_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_door_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_door_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_fence_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_fence_from_nether_sakura_planks.json new file mode 100644 index 0000000..62c6e14 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_fence_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_fence_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_fence_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_gate_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_gate_from_nether_sakura_planks.json new file mode 100644 index 0000000..271b839 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_gate_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_gate_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_gate_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_ladder_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_ladder_from_nether_sakura_planks.json new file mode 100644 index 0000000..9371cdd --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_ladder_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_ladder_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_ladder_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_bark.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_bark.json new file mode 100644 index 0000000..b184feb --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_bark.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_planks_from_nether_sakura_bark" + ] + }, + "criteria": { + "nether_sakura_bark": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_bark" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_planks_from_nether_sakura_bark" + } + } + }, + "requirements": [ + [ + "nether_sakura_bark", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_log.json new file mode 100644 index 0000000..2e56d63 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_planks_from_nether_sakura_log" + ] + }, + "criteria": { + "nether_sakura_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_planks_from_nether_sakura_log" + } + } + }, + "requirements": [ + [ + "nether_sakura_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_striped_bark_nether_sakura.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_striped_bark_nether_sakura.json new file mode 100644 index 0000000..1445934 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_striped_bark_nether_sakura.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_planks_from_striped_bark_nether_sakura" + ] + }, + "criteria": { + "striped_bark_nether_sakura": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_bark_nether_sakura" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_planks_from_striped_bark_nether_sakura" + } + } + }, + "requirements": [ + [ + "striped_bark_nether_sakura", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_striped_log_nether_sakura.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_striped_log_nether_sakura.json new file mode 100644 index 0000000..af7b40d --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_planks_from_striped_log_nether_sakura.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_planks_from_striped_log_nether_sakura" + ] + }, + "criteria": { + "striped_log_nether_sakura": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_nether_sakura" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_planks_from_striped_log_nether_sakura" + } + } + }, + "requirements": [ + [ + "striped_log_nether_sakura", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_plate_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_plate_from_nether_sakura_planks.json new file mode 100644 index 0000000..3385a56 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_plate_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_plate_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_plate_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_slab_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_slab_from_nether_sakura_planks.json new file mode 100644 index 0000000..87a55c3 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_slab_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_slab_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_slab_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_stairs_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_stairs_from_nether_sakura_planks.json new file mode 100644 index 0000000..4b1da55 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_stairs_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_stairs_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_stairs_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_trapdoor_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_trapdoor_from_nether_sakura_planks.json new file mode 100644 index 0000000..5547409 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/nether_sakura_trapdoor_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_trapdoor_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_trapdoor_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/netherite_fire_bowl_from_netherite_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/netherite_fire_bowl_from_netherite_block.json new file mode 100644 index 0000000..711f6f3 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/netherite_fire_bowl_from_netherite_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:netherite_fire_bowl_from_netherite_block" + ] + }, + "criteria": { + "netherite_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:netherite_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:netherite_fire_bowl_from_netherite_block" + } + } + }, + "requirements": [ + [ + "netherite_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/netherite_fire_bowl_soul_from_netherite_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/netherite_fire_bowl_soul_from_netherite_block.json new file mode 100644 index 0000000..b664943 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/netherite_fire_bowl_soul_from_netherite_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:netherite_fire_bowl_soul_from_netherite_block" + ] + }, + "criteria": { + "netherite_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:netherite_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:netherite_fire_bowl_soul_from_netherite_block" + } + } + }, + "requirements": [ + [ + "netherite_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/netherrack_furnace_from_netherrack.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/netherrack_furnace_from_netherrack.json new file mode 100644 index 0000000..661e611 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/netherrack_furnace_from_netherrack.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:netherrack_furnace_from_netherrack" + ] + }, + "criteria": { + "netherrack": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:netherrack" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:netherrack_furnace_from_netherrack" + } + } + }, + "requirements": [ + [ + "netherrack", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/netherrack_stalactite_from_netherrack.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/netherrack_stalactite_from_netherrack.json new file mode 100644 index 0000000..559a333 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/netherrack_stalactite_from_netherrack.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:netherrack_stalactite_from_netherrack" + ] + }, + "criteria": { + "netherrack": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:netherrack" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:netherrack_stalactite_from_netherrack" + } + } + }, + "requirements": [ + [ + "netherrack", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/obsidian_bricks_slab_from_obsidian_bricks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/obsidian_bricks_slab_from_obsidian_bricks.json new file mode 100644 index 0000000..b5d55f9 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/obsidian_bricks_slab_from_obsidian_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:obsidian_bricks_slab_from_obsidian_bricks" + ] + }, + "criteria": { + "obsidian_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:obsidian_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:obsidian_bricks_slab_from_obsidian_bricks" + } + } + }, + "requirements": [ + [ + "obsidian_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/obsidian_bricks_stairs_from_obsidian_bricks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/obsidian_bricks_stairs_from_obsidian_bricks.json new file mode 100644 index 0000000..ef6495a --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/obsidian_bricks_stairs_from_obsidian_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:obsidian_bricks_stairs_from_obsidian_bricks" + ] + }, + "criteria": { + "obsidian_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:obsidian_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:obsidian_bricks_stairs_from_obsidian_bricks" + } + } + }, + "requirements": [ + [ + "obsidian_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/obsidian_tile_slab_from_obsidian_tile_small.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/obsidian_tile_slab_from_obsidian_tile_small.json new file mode 100644 index 0000000..f9e248e --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/obsidian_tile_slab_from_obsidian_tile_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:obsidian_tile_slab_from_obsidian_tile_small" + ] + }, + "criteria": { + "obsidian_tile_small": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:obsidian_tile_small" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:obsidian_tile_slab_from_obsidian_tile_small" + } + } + }, + "requirements": [ + [ + "obsidian_tile_small", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/obsidian_tile_stairs_from_obsidian_tile_small.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/obsidian_tile_stairs_from_obsidian_tile_small.json new file mode 100644 index 0000000..6695849 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/obsidian_tile_stairs_from_obsidian_tile_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:obsidian_tile_stairs_from_obsidian_tile_small" + ] + }, + "criteria": { + "obsidian_tile_small": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:obsidian_tile_small" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:obsidian_tile_stairs_from_obsidian_tile_small" + } + } + }, + "requirements": [ + [ + "obsidian_tile_small", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_button_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_button_from_reeds_block.json new file mode 100644 index 0000000..9002040 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_button_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_button_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_button_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_door_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_door_from_reeds_block.json new file mode 100644 index 0000000..a1e9c5c --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_door_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_door_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_door_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_fence_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_fence_from_reeds_block.json new file mode 100644 index 0000000..80604ab --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_fence_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_fence_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_fence_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_gate_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_gate_from_reeds_block.json new file mode 100644 index 0000000..08b1640 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_gate_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_gate_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_gate_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_ladder_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_ladder_from_reeds_block.json new file mode 100644 index 0000000..252f6d6 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_ladder_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_ladder_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_ladder_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_plate_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_plate_from_reeds_block.json new file mode 100644 index 0000000..bc8f984 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_plate_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_plate_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_plate_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_slab_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_slab_from_reeds_block.json new file mode 100644 index 0000000..30407cc --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_slab_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_slab_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_slab_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_stairs_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_stairs_from_reeds_block.json new file mode 100644 index 0000000..c99c176 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_stairs_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_stairs_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_stairs_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_trapdoor_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_trapdoor_from_reeds_block.json new file mode 100644 index 0000000..348c111 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/reeds_trapdoor_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_trapdoor_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_trapdoor_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_cincinnasite_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_cincinnasite_from_cincinnasite_forged.json new file mode 100644 index 0000000..1929a7c --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_cincinnasite_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_cincinnasite_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_cincinnasite_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json new file mode 100644 index 0000000..dbcc1a4 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite" + ] + }, + "criteria": { + "roof_tile_cincinnasite": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_cincinnasite" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite" + } + } + }, + "requirements": [ + [ + "roof_tile_cincinnasite", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json new file mode 100644 index 0000000..b3bdd67 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite" + ] + }, + "criteria": { + "roof_tile_cincinnasite": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_cincinnasite" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite" + } + } + }, + "requirements": [ + [ + "roof_tile_cincinnasite", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_nether_bricks_from_nether_bricks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_nether_bricks_from_nether_bricks.json new file mode 100644 index 0000000..277930f --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_nether_bricks_from_nether_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_nether_bricks_from_nether_bricks" + ] + }, + "criteria": { + "nether_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:nether_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_nether_bricks_from_nether_bricks" + } + } + }, + "requirements": [ + [ + "nether_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json new file mode 100644 index 0000000..0085e86 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks" + ] + }, + "criteria": { + "roof_tile_nether_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_nether_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks" + } + } + }, + "requirements": [ + [ + "roof_tile_nether_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json new file mode 100644 index 0000000..6b12a4d --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks" + ] + }, + "criteria": { + "roof_tile_nether_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_nether_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks" + } + } + }, + "requirements": [ + [ + "roof_tile_nether_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_reeds_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_reeds_from_reeds_block.json new file mode 100644 index 0000000..98ed5f3 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_reeds_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_reeds_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_reeds_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_reeds_slab_from_roof_tile_reeds.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_reeds_slab_from_roof_tile_reeds.json new file mode 100644 index 0000000..55851c1 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_reeds_slab_from_roof_tile_reeds.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_reeds_slab_from_roof_tile_reeds" + ] + }, + "criteria": { + "roof_tile_reeds": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_reeds" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_reeds_slab_from_roof_tile_reeds" + } + } + }, + "requirements": [ + [ + "roof_tile_reeds", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_reeds_stairs_from_roof_tile_reeds.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_reeds_stairs_from_roof_tile_reeds.json new file mode 100644 index 0000000..4943e05 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_reeds_stairs_from_roof_tile_reeds.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_reeds_stairs_from_roof_tile_reeds" + ] + }, + "criteria": { + "roof_tile_reeds": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_reeds" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_reeds_stairs_from_roof_tile_reeds" + } + } + }, + "requirements": [ + [ + "roof_tile_reeds", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_stalagnate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..1dda8b2 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_stalagnate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_stalagnate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json new file mode 100644 index 0000000..780113e --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_stalagnate_slab_from_roof_tile_stalagnate" + ] + }, + "criteria": { + "roof_tile_stalagnate": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_stalagnate" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_stalagnate_slab_from_roof_tile_stalagnate" + } + } + }, + "requirements": [ + [ + "roof_tile_stalagnate", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json new file mode 100644 index 0000000..0cfb8e7 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_stalagnate_stairs_from_roof_tile_stalagnate" + ] + }, + "criteria": { + "roof_tile_stalagnate": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_stalagnate" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_stalagnate_stairs_from_roof_tile_stalagnate" + } + } + }, + "requirements": [ + [ + "roof_tile_stalagnate", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_wart_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_wart_from_wart_planks.json new file mode 100644 index 0000000..0391f1d --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_wart_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_wart_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_wart_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_wart_slab_from_roof_tile_wart.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_wart_slab_from_roof_tile_wart.json new file mode 100644 index 0000000..cd85ba2 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_wart_slab_from_roof_tile_wart.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_wart_slab_from_roof_tile_wart" + ] + }, + "criteria": { + "roof_tile_wart": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_wart" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_wart_slab_from_roof_tile_wart" + } + } + }, + "requirements": [ + [ + "roof_tile_wart", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_wart_stairs_from_roof_tile_wart.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_wart_stairs_from_roof_tile_wart.json new file mode 100644 index 0000000..b7bc7c7 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_wart_stairs_from_roof_tile_wart.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_wart_stairs_from_roof_tile_wart" + ] + }, + "criteria": { + "roof_tile_wart": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_wart" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_wart_stairs_from_roof_tile_wart" + } + } + }, + "requirements": [ + [ + "roof_tile_wart", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_willow_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_willow_from_willow_planks.json new file mode 100644 index 0000000..e65de74 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_willow_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_willow_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_willow_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_willow_slab_from_roof_tile_willow.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_willow_slab_from_roof_tile_willow.json new file mode 100644 index 0000000..bc21149 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_willow_slab_from_roof_tile_willow.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_willow_slab_from_roof_tile_willow" + ] + }, + "criteria": { + "roof_tile_willow": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_willow" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_willow_slab_from_roof_tile_willow" + } + } + }, + "requirements": [ + [ + "roof_tile_willow", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_willow_stairs_from_roof_tile_willow.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_willow_stairs_from_roof_tile_willow.json new file mode 100644 index 0000000..53f2215 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/roof_tile_willow_stairs_from_roof_tile_willow.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_willow_stairs_from_roof_tile_willow" + ] + }, + "criteria": { + "roof_tile_willow": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_willow" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_willow_stairs_from_roof_tile_willow" + } + } + }, + "requirements": [ + [ + "roof_tile_willow", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_bark_from_rubeus_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_bark_from_rubeus_log.json new file mode 100644 index 0000000..e492cf7 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_bark_from_rubeus_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_bark_from_rubeus_log" + ] + }, + "criteria": { + "rubeus_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_bark_from_rubeus_log" + } + } + }, + "requirements": [ + [ + "rubeus_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_button_from_rubeus_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_button_from_rubeus_planks.json new file mode 100644 index 0000000..e717986 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_button_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_button_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_button_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_door_from_rubeus_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_door_from_rubeus_planks.json new file mode 100644 index 0000000..4215535 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_door_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_door_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_door_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_fence_from_rubeus_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_fence_from_rubeus_planks.json new file mode 100644 index 0000000..07f0d44 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_fence_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_fence_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_fence_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_gate_from_rubeus_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_gate_from_rubeus_planks.json new file mode 100644 index 0000000..053b79c --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_gate_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_gate_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_gate_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_ladder_from_rubeus_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_ladder_from_rubeus_planks.json new file mode 100644 index 0000000..8623511 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_ladder_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_ladder_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_ladder_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_planks_from_rubeus_bark.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_planks_from_rubeus_bark.json new file mode 100644 index 0000000..ea3c9f3 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_planks_from_rubeus_bark.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_planks_from_rubeus_bark" + ] + }, + "criteria": { + "rubeus_bark": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_bark" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_planks_from_rubeus_bark" + } + } + }, + "requirements": [ + [ + "rubeus_bark", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_planks_from_rubeus_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_planks_from_rubeus_log.json new file mode 100644 index 0000000..75cf9f6 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_planks_from_rubeus_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_planks_from_rubeus_log" + ] + }, + "criteria": { + "rubeus_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_planks_from_rubeus_log" + } + } + }, + "requirements": [ + [ + "rubeus_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_planks_from_striped_bark_rubeus.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_planks_from_striped_bark_rubeus.json new file mode 100644 index 0000000..579b7d4 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_planks_from_striped_bark_rubeus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_planks_from_striped_bark_rubeus" + ] + }, + "criteria": { + "striped_bark_rubeus": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_bark_rubeus" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_planks_from_striped_bark_rubeus" + } + } + }, + "requirements": [ + [ + "striped_bark_rubeus", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_planks_from_striped_log_rubeus.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_planks_from_striped_log_rubeus.json new file mode 100644 index 0000000..a692b7b --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_planks_from_striped_log_rubeus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_planks_from_striped_log_rubeus" + ] + }, + "criteria": { + "striped_log_rubeus": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_rubeus" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_planks_from_striped_log_rubeus" + } + } + }, + "requirements": [ + [ + "striped_log_rubeus", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_plate_from_rubeus_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_plate_from_rubeus_planks.json new file mode 100644 index 0000000..7fbc03d --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_plate_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_plate_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_plate_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_slab_from_rubeus_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_slab_from_rubeus_planks.json new file mode 100644 index 0000000..2590298 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_slab_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_slab_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_slab_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_stairs_from_rubeus_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_stairs_from_rubeus_planks.json new file mode 100644 index 0000000..58fc247 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_stairs_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_stairs_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_stairs_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_trapdoor_from_rubeus_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_trapdoor_from_rubeus_planks.json new file mode 100644 index 0000000..ebbc4b6 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/rubeus_trapdoor_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_trapdoor_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_trapdoor_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_anchor_tree_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..0293b86 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_anchor_tree_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_anchor_tree_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_mushroom_fir_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..8579f3a --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_mushroom_fir_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_mushroom_fir_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_mushroom_from_mushroom_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..293027f --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_mushroom_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_mushroom_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_mushroom_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_nether_sakura_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..defe31d --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_nether_sakura_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_nether_sakura_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_reed_from_reeds_block.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_reed_from_reeds_block.json new file mode 100644 index 0000000..278564f --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_reed_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_reed_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_reed_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_rubeus_from_rubeus_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..92a8cbf --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_rubeus_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_rubeus_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_rubeus_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_stalagnate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..58bf1a7 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_stalagnate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_stalagnate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_wart_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_wart_from_wart_planks.json new file mode 100644 index 0000000..57c5abe --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_wart_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_wart_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_wart_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_willow_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_willow_from_willow_planks.json new file mode 100644 index 0000000..be25fd0 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/sign_willow_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_willow_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_willow_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_chiseled_from_soul_sandstone_smooth.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_chiseled_from_soul_sandstone_smooth.json new file mode 100644 index 0000000..bfddf5d --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_chiseled_from_soul_sandstone_smooth.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_chiseled_from_soul_sandstone_smooth" + ] + }, + "criteria": { + "soul_sandstone_smooth": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_smooth" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_chiseled_from_soul_sandstone_smooth" + } + } + }, + "requirements": [ + [ + "soul_sandstone_smooth", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_cut_from_soul_sandstone.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_cut_from_soul_sandstone.json new file mode 100644 index 0000000..8616a24 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_cut_from_soul_sandstone.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_cut_from_soul_sandstone" + ] + }, + "criteria": { + "soul_sandstone": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_cut_from_soul_sandstone" + } + } + }, + "requirements": [ + [ + "soul_sandstone", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_cut_slab_from_soul_sandstone_cut.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_cut_slab_from_soul_sandstone_cut.json new file mode 100644 index 0000000..16c5836 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_cut_slab_from_soul_sandstone_cut.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_cut_slab_from_soul_sandstone_cut" + ] + }, + "criteria": { + "soul_sandstone_cut": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_cut" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_cut_slab_from_soul_sandstone_cut" + } + } + }, + "requirements": [ + [ + "soul_sandstone_cut", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json new file mode 100644 index 0000000..955bf4c --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_cut_stairs_from_soul_sandstone_cut" + ] + }, + "criteria": { + "soul_sandstone_cut": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_cut" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_cut_stairs_from_soul_sandstone_cut" + } + } + }, + "requirements": [ + [ + "soul_sandstone_cut", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_slab_from_soul_sandstone.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_slab_from_soul_sandstone.json new file mode 100644 index 0000000..55e20fd --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_slab_from_soul_sandstone.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_slab_from_soul_sandstone" + ] + }, + "criteria": { + "soul_sandstone": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_slab_from_soul_sandstone" + } + } + }, + "requirements": [ + [ + "soul_sandstone", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_smooth_from_soul_sandstone_cut.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_smooth_from_soul_sandstone_cut.json new file mode 100644 index 0000000..3ad6906 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_smooth_from_soul_sandstone_cut.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_smooth_from_soul_sandstone_cut" + ] + }, + "criteria": { + "soul_sandstone_cut": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_cut" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_smooth_from_soul_sandstone_cut" + } + } + }, + "requirements": [ + [ + "soul_sandstone_cut", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json new file mode 100644 index 0000000..a6bad61 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_smooth_slab_from_soul_sandstone_smooth" + ] + }, + "criteria": { + "soul_sandstone_smooth": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_smooth" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_smooth_slab_from_soul_sandstone_smooth" + } + } + }, + "requirements": [ + [ + "soul_sandstone_smooth", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json new file mode 100644 index 0000000..91c3cd3 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_smooth_stairs_from_soul_sandstone_smooth" + ] + }, + "criteria": { + "soul_sandstone_smooth": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_smooth" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_smooth_stairs_from_soul_sandstone_smooth" + } + } + }, + "requirements": [ + [ + "soul_sandstone_smooth", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_stairs_from_soul_sandstone.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_stairs_from_soul_sandstone.json new file mode 100644 index 0000000..8606f8b --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_stairs_from_soul_sandstone.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_stairs_from_soul_sandstone" + ] + }, + "criteria": { + "soul_sandstone": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_stairs_from_soul_sandstone" + } + } + }, + "requirements": [ + [ + "soul_sandstone", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_wall_from_soul_sandstone_cut.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_wall_from_soul_sandstone_cut.json new file mode 100644 index 0000000..6b306ff --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/soul_sandstone_wall_from_soul_sandstone_cut.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_wall_from_soul_sandstone_cut" + ] + }, + "criteria": { + "soul_sandstone_cut": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_cut" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_wall_from_soul_sandstone_cut" + } + } + }, + "requirements": [ + [ + "soul_sandstone_cut", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_bark_from_stalagnate_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_bark_from_stalagnate_log.json new file mode 100644 index 0000000..241fdcf --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_bark_from_stalagnate_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_bark_from_stalagnate_log" + ] + }, + "criteria": { + "stalagnate_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_bark_from_stalagnate_log" + } + } + }, + "requirements": [ + [ + "stalagnate_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_ladder_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_ladder_from_stalagnate_planks.json new file mode 100644 index 0000000..91706c7 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_ladder_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_ladder_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_ladder_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_log_from_stalagnate_stem.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_log_from_stalagnate_stem.json new file mode 100644 index 0000000..a73bce2 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_log_from_stalagnate_stem.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_log_from_stalagnate_stem" + ] + }, + "criteria": { + "stalagnate_stem": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_stem" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_log_from_stalagnate_stem" + } + } + }, + "requirements": [ + [ + "stalagnate_stem", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_button_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_button_from_stalagnate_planks.json new file mode 100644 index 0000000..9c6d626 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_button_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_button_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_button_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_door_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_door_from_stalagnate_planks.json new file mode 100644 index 0000000..697dd70 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_door_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_door_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_door_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_fence_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_fence_from_stalagnate_planks.json new file mode 100644 index 0000000..aecf460 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_fence_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_fence_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_fence_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_bark.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_bark.json new file mode 100644 index 0000000..c44a16b --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_bark.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_from_stalagnate_bark" + ] + }, + "criteria": { + "stalagnate_bark": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_bark" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_from_stalagnate_bark" + } + } + }, + "requirements": [ + [ + "stalagnate_bark", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_log.json new file mode 100644 index 0000000..b8fc56c --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_from_stalagnate_log" + ] + }, + "criteria": { + "stalagnate_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_from_stalagnate_log" + } + } + }, + "requirements": [ + [ + "stalagnate_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_stem.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_stem.json new file mode 100644 index 0000000..b6b8a18 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_stem.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_from_stalagnate_stem" + ] + }, + "criteria": { + "stalagnate_stem": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_stem" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_from_stalagnate_stem" + } + } + }, + "requirements": [ + [ + "stalagnate_stem", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_striped_bark_stalagnate.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_striped_bark_stalagnate.json new file mode 100644 index 0000000..b299f0b --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_striped_bark_stalagnate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_from_striped_bark_stalagnate" + ] + }, + "criteria": { + "striped_bark_stalagnate": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_bark_stalagnate" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_from_striped_bark_stalagnate" + } + } + }, + "requirements": [ + [ + "striped_bark_stalagnate", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_striped_log_stalagnate.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_striped_log_stalagnate.json new file mode 100644 index 0000000..a3cc591 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_from_striped_log_stalagnate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_from_striped_log_stalagnate" + ] + }, + "criteria": { + "striped_log_stalagnate": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_stalagnate" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_from_striped_log_stalagnate" + } + } + }, + "requirements": [ + [ + "striped_log_stalagnate", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_gate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_gate_from_stalagnate_planks.json new file mode 100644 index 0000000..945c597 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_gate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_gate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_gate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_plate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_plate_from_stalagnate_planks.json new file mode 100644 index 0000000..114ed65 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_plate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_plate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_plate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_slab_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_slab_from_stalagnate_planks.json new file mode 100644 index 0000000..5c8556b --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_slab_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_slab_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_slab_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_stairs_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_stairs_from_stalagnate_planks.json new file mode 100644 index 0000000..7adab52 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_stairs_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_stairs_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_stairs_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_trapdoor_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_trapdoor_from_stalagnate_planks.json new file mode 100644 index 0000000..9fd8bdd --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/stalagnate_planks_trapdoor_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_trapdoor_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_trapdoor_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_acacia_from_acacia_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_acacia_from_acacia_slab.json new file mode 100644 index 0000000..801fd44 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_acacia_from_acacia_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_acacia_from_acacia_slab" + ] + }, + "criteria": { + "acacia_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:acacia_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_acacia_from_acacia_slab" + } + } + }, + "requirements": [ + [ + "acacia_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_anchor_tree_from_anchor_tree_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_anchor_tree_from_anchor_tree_slab.json new file mode 100644 index 0000000..be389e2 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_anchor_tree_from_anchor_tree_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_anchor_tree_from_anchor_tree_slab" + ] + }, + "criteria": { + "anchor_tree_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_anchor_tree_from_anchor_tree_slab" + } + } + }, + "requirements": [ + [ + "anchor_tree_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_birch_from_birch_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_birch_from_birch_slab.json new file mode 100644 index 0000000..bd3fc50 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_birch_from_birch_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_birch_from_birch_slab" + ] + }, + "criteria": { + "birch_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:birch_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_birch_from_birch_slab" + } + } + }, + "requirements": [ + [ + "birch_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_cincinnasite_from_cincinnasite_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_cincinnasite_from_cincinnasite_slab.json new file mode 100644 index 0000000..38c70b9 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_cincinnasite_from_cincinnasite_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_cincinnasite_from_cincinnasite_slab" + ] + }, + "criteria": { + "cincinnasite_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_cincinnasite_from_cincinnasite_slab" + } + } + }, + "requirements": [ + [ + "cincinnasite_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_crimson_from_crimson_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_crimson_from_crimson_slab.json new file mode 100644 index 0000000..17cb67b --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_crimson_from_crimson_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_crimson_from_crimson_slab" + ] + }, + "criteria": { + "crimson_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_crimson_from_crimson_slab" + } + } + }, + "requirements": [ + [ + "crimson_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_dark_oak_from_dark_oak_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_dark_oak_from_dark_oak_slab.json new file mode 100644 index 0000000..0ad138e --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_dark_oak_from_dark_oak_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_dark_oak_from_dark_oak_slab" + ] + }, + "criteria": { + "dark_oak_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:dark_oak_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_dark_oak_from_dark_oak_slab" + } + } + }, + "requirements": [ + [ + "dark_oak_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_jungle_from_jungle_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_jungle_from_jungle_slab.json new file mode 100644 index 0000000..f4cf4d4 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_jungle_from_jungle_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_jungle_from_jungle_slab" + ] + }, + "criteria": { + "jungle_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:jungle_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_jungle_from_jungle_slab" + } + } + }, + "requirements": [ + [ + "jungle_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_mushroom_fir_from_mushroom_fir_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_mushroom_fir_from_mushroom_fir_slab.json new file mode 100644 index 0000000..e0665c2 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_mushroom_fir_from_mushroom_fir_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_mushroom_fir_from_mushroom_fir_slab" + ] + }, + "criteria": { + "mushroom_fir_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_mushroom_fir_from_mushroom_fir_slab" + } + } + }, + "requirements": [ + [ + "mushroom_fir_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_mushroom_from_mushroom_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_mushroom_from_mushroom_slab.json new file mode 100644 index 0000000..76a3574 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_mushroom_from_mushroom_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_mushroom_from_mushroom_slab" + ] + }, + "criteria": { + "mushroom_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_mushroom_from_mushroom_slab" + } + } + }, + "requirements": [ + [ + "mushroom_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_nether_sakura_from_nether_sakura_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_nether_sakura_from_nether_sakura_slab.json new file mode 100644 index 0000000..3824007 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_nether_sakura_from_nether_sakura_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_nether_sakura_from_nether_sakura_slab" + ] + }, + "criteria": { + "nether_sakura_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_nether_sakura_from_nether_sakura_slab" + } + } + }, + "requirements": [ + [ + "nether_sakura_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_oak_from_oak_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_oak_from_oak_slab.json new file mode 100644 index 0000000..b5f9dc6 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_oak_from_oak_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_oak_from_oak_slab" + ] + }, + "criteria": { + "oak_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:oak_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_oak_from_oak_slab" + } + } + }, + "requirements": [ + [ + "oak_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_reeds_from_reeds_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_reeds_from_reeds_slab.json new file mode 100644 index 0000000..9c4005a --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_reeds_from_reeds_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_reeds_from_reeds_slab" + ] + }, + "criteria": { + "reeds_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_reeds_from_reeds_slab" + } + } + }, + "requirements": [ + [ + "reeds_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_rubeus_from_rubeus_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_rubeus_from_rubeus_slab.json new file mode 100644 index 0000000..dcd16f4 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_rubeus_from_rubeus_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_rubeus_from_rubeus_slab" + ] + }, + "criteria": { + "rubeus_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_rubeus_from_rubeus_slab" + } + } + }, + "requirements": [ + [ + "rubeus_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_spruce_from_spruce_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_spruce_from_spruce_slab.json new file mode 100644 index 0000000..ceb9af2 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_spruce_from_spruce_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_spruce_from_spruce_slab" + ] + }, + "criteria": { + "spruce_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:spruce_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_spruce_from_spruce_slab" + } + } + }, + "requirements": [ + [ + "spruce_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_stalagnate_from_stalagnate_planks_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_stalagnate_from_stalagnate_planks_slab.json new file mode 100644 index 0000000..3bce566 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_stalagnate_from_stalagnate_planks_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_stalagnate_from_stalagnate_planks_slab" + ] + }, + "criteria": { + "stalagnate_planks_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_stalagnate_from_stalagnate_planks_slab" + } + } + }, + "requirements": [ + [ + "stalagnate_planks_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_warped_from_warped_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_warped_from_warped_slab.json new file mode 100644 index 0000000..ab1ac6e --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_warped_from_warped_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_warped_from_warped_slab" + ] + }, + "criteria": { + "warped_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_warped_from_warped_slab" + } + } + }, + "requirements": [ + [ + "warped_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_wart_from_wart_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_wart_from_wart_slab.json new file mode 100644 index 0000000..e75e2e8 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_wart_from_wart_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_wart_from_wart_slab" + ] + }, + "criteria": { + "wart_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_wart_from_wart_slab" + } + } + }, + "requirements": [ + [ + "wart_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_willow_from_willow_slab.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_willow_from_willow_slab.json new file mode 100644 index 0000000..89f6665 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/taburet_willow_from_willow_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_willow_from_willow_slab" + ] + }, + "criteria": { + "willow_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_willow_from_willow_slab" + } + } + }, + "requirements": [ + [ + "willow_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/warped_ladder_from_warped_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/warped_ladder_from_warped_planks.json new file mode 100644 index 0000000..bf0b192 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/warped_ladder_from_warped_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:warped_ladder_from_warped_planks" + ] + }, + "criteria": { + "warped_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:warped_ladder_from_warped_planks" + } + } + }, + "requirements": [ + [ + "warped_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_bark_from_wart_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_bark_from_wart_log.json new file mode 100644 index 0000000..02e019e --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_bark_from_wart_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_bark_from_wart_log" + ] + }, + "criteria": { + "wart_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_bark_from_wart_log" + } + } + }, + "requirements": [ + [ + "wart_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_button_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_button_from_wart_planks.json new file mode 100644 index 0000000..08a2a9c --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_button_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_button_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_button_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_door_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_door_from_wart_planks.json new file mode 100644 index 0000000..6eed9e2 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_door_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_door_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_door_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_fence_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_fence_from_wart_planks.json new file mode 100644 index 0000000..1b8c114 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_fence_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_fence_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_fence_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_gate_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_gate_from_wart_planks.json new file mode 100644 index 0000000..bb52f74 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_gate_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_gate_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_gate_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_ladder_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_ladder_from_wart_planks.json new file mode 100644 index 0000000..6b74851 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_ladder_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_ladder_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_ladder_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_planks_from_striped_bark_wart.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_planks_from_striped_bark_wart.json new file mode 100644 index 0000000..86df51a --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_planks_from_striped_bark_wart.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_planks_from_striped_bark_wart" + ] + }, + "criteria": { + "striped_bark_wart": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_bark_wart" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_planks_from_striped_bark_wart" + } + } + }, + "requirements": [ + [ + "striped_bark_wart", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_planks_from_striped_log_wart.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_planks_from_striped_log_wart.json new file mode 100644 index 0000000..5f69857 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_planks_from_striped_log_wart.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_planks_from_striped_log_wart" + ] + }, + "criteria": { + "striped_log_wart": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_wart" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_planks_from_striped_log_wart" + } + } + }, + "requirements": [ + [ + "striped_log_wart", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_planks_from_wart_bark.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_planks_from_wart_bark.json new file mode 100644 index 0000000..d035427 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_planks_from_wart_bark.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_planks_from_wart_bark" + ] + }, + "criteria": { + "wart_bark": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_bark" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_planks_from_wart_bark" + } + } + }, + "requirements": [ + [ + "wart_bark", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_planks_from_wart_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_planks_from_wart_log.json new file mode 100644 index 0000000..916bc74 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_planks_from_wart_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_planks_from_wart_log" + ] + }, + "criteria": { + "wart_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_planks_from_wart_log" + } + } + }, + "requirements": [ + [ + "wart_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_plate_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_plate_from_wart_planks.json new file mode 100644 index 0000000..a1725dd --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_plate_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_plate_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_plate_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_slab_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_slab_from_wart_planks.json new file mode 100644 index 0000000..8fd4365 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_slab_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_slab_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_slab_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_stairs_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_stairs_from_wart_planks.json new file mode 100644 index 0000000..cefe131 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_stairs_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_stairs_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_stairs_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_trapdoor_from_wart_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_trapdoor_from_wart_planks.json new file mode 100644 index 0000000..c9ce761 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/wart_trapdoor_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_trapdoor_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_trapdoor_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_bark_from_willow_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_bark_from_willow_log.json new file mode 100644 index 0000000..827a2c5 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_bark_from_willow_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_bark_from_willow_log" + ] + }, + "criteria": { + "willow_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_bark_from_willow_log" + } + } + }, + "requirements": [ + [ + "willow_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_button_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_button_from_willow_planks.json new file mode 100644 index 0000000..dc7e867 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_button_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_button_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_button_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_door_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_door_from_willow_planks.json new file mode 100644 index 0000000..5ce543c --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_door_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_door_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_door_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_fence_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_fence_from_willow_planks.json new file mode 100644 index 0000000..519f1b7 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_fence_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_fence_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_fence_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_gate_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_gate_from_willow_planks.json new file mode 100644 index 0000000..77da375 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_gate_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_gate_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_gate_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_ladder_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_ladder_from_willow_planks.json new file mode 100644 index 0000000..e6349b6 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_ladder_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_ladder_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_ladder_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_planks_from_striped_bark_willow.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_planks_from_striped_bark_willow.json new file mode 100644 index 0000000..771ef81 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_planks_from_striped_bark_willow.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_planks_from_striped_bark_willow" + ] + }, + "criteria": { + "striped_bark_willow": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_bark_willow" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_planks_from_striped_bark_willow" + } + } + }, + "requirements": [ + [ + "striped_bark_willow", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_planks_from_striped_log_willow.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_planks_from_striped_log_willow.json new file mode 100644 index 0000000..36ee260 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_planks_from_striped_log_willow.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_planks_from_striped_log_willow" + ] + }, + "criteria": { + "striped_log_willow": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_willow" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_planks_from_striped_log_willow" + } + } + }, + "requirements": [ + [ + "striped_log_willow", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_planks_from_willow_bark.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_planks_from_willow_bark.json new file mode 100644 index 0000000..746188f --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_planks_from_willow_bark.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_planks_from_willow_bark" + ] + }, + "criteria": { + "willow_bark": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_bark" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_planks_from_willow_bark" + } + } + }, + "requirements": [ + [ + "willow_bark", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_planks_from_willow_log.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_planks_from_willow_log.json new file mode 100644 index 0000000..8c40c4a --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_planks_from_willow_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_planks_from_willow_log" + ] + }, + "criteria": { + "willow_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_planks_from_willow_log" + } + } + }, + "requirements": [ + [ + "willow_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_plate_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_plate_from_willow_planks.json new file mode 100644 index 0000000..bc9ba23 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_plate_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_plate_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_plate_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_slab_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_slab_from_willow_planks.json new file mode 100644 index 0000000..e078eae --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_slab_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_slab_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_slab_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_stairs_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_stairs_from_willow_planks.json new file mode 100644 index 0000000..4de0515 --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_stairs_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_stairs_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_stairs_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_trapdoor_from_willow_planks.json b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_trapdoor_from_willow_planks.json new file mode 100644 index 0000000..e5ecfee --- /dev/null +++ b/src/generated/resources/data/minecraft/advancements/recipes/betternether/willow_trapdoor_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_trapdoor_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_trapdoor_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_bark_from_anchor_tree_log.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_bark_from_anchor_tree_log.json new file mode 100644 index 0000000..070a183 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_bark_from_anchor_tree_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_log" + } + }, + "result": { + "item": "betternether:anchor_tree_bark", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_button_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_button_from_anchor_tree_planks.json new file mode 100644 index 0000000..7f8d0a5 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_button_from_anchor_tree_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:anchor_tree_planks" + } + ], + "result": { + "item": "betternether:anchor_tree_button" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_door_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_door_from_anchor_tree_planks.json new file mode 100644 index 0000000..fe416b7 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_door_from_anchor_tree_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:anchor_tree_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_fence_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_fence_from_anchor_tree_planks.json new file mode 100644 index 0000000..6cd026b --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_fence_from_anchor_tree_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:anchor_tree_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_gate_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_gate_from_anchor_tree_planks.json new file mode 100644 index 0000000..236d4f4 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_gate_from_anchor_tree_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:anchor_tree_gate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_ladder_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_ladder_from_anchor_tree_planks.json new file mode 100644 index 0000000..c8bf576 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_ladder_from_anchor_tree_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:anchor_tree_ladder" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_planks_from_anchor_tree_bark.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_planks_from_anchor_tree_bark.json new file mode 100644 index 0000000..c3d7562 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_planks_from_anchor_tree_bark.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:anchor_tree_bark" + } + ], + "result": { + "item": "betternether:anchor_tree_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_planks_from_anchor_tree_log.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_planks_from_anchor_tree_log.json new file mode 100644 index 0000000..36ba5e4 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_planks_from_anchor_tree_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:anchor_tree_log" + } + ], + "result": { + "item": "betternether:anchor_tree_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_planks_from_striped_bark_anchor_tree.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_planks_from_striped_bark_anchor_tree.json new file mode 100644 index 0000000..f26ba77 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_planks_from_striped_bark_anchor_tree.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_bark_anchor_tree" + } + ], + "result": { + "item": "betternether:anchor_tree_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_planks_from_striped_log_anchor_tree.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_planks_from_striped_log_anchor_tree.json new file mode 100644 index 0000000..24a76d7 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_planks_from_striped_log_anchor_tree.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_anchor_tree" + } + ], + "result": { + "item": "betternether:anchor_tree_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_plate_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_plate_from_anchor_tree_planks.json new file mode 100644 index 0000000..991f886 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_plate_from_anchor_tree_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:anchor_tree_plate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_slab_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_slab_from_anchor_tree_planks.json new file mode 100644 index 0000000..fee7de7 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_slab_from_anchor_tree_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:anchor_tree_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_stairs_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_stairs_from_anchor_tree_planks.json new file mode 100644 index 0000000..8125159 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_stairs_from_anchor_tree_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:anchor_tree_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/anchor_tree_trapdoor_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/recipes/anchor_tree_trapdoor_from_anchor_tree_planks.json new file mode 100644 index 0000000..1cf033e --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/anchor_tree_trapdoor_from_anchor_tree_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:anchor_tree_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_acacia_from_acacia_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_acacia_from_acacia_slab.json new file mode 100644 index 0000000..5121361 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_acacia_from_acacia_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:acacia_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_acacia" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_anchor_tree_from_anchor_tree_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_anchor_tree_from_anchor_tree_slab.json new file mode 100644 index 0000000..ec92a29 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_anchor_tree_from_anchor_tree_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_anchor_tree" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_birch_from_birch_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_birch_from_birch_slab.json new file mode 100644 index 0000000..8ecce7d --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_birch_from_birch_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:birch_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_birch" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_cincinnasite_from_cincinnasite_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_cincinnasite_from_cincinnasite_slab.json new file mode 100644 index 0000000..b68d79a --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_cincinnasite_from_cincinnasite_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_cincinnasite" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_crimson_from_crimson_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_crimson_from_crimson_slab.json new file mode 100644 index 0000000..43d238b --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_crimson_from_crimson_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:crimson_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_crimson" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_dark_oak_from_dark_oak_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_dark_oak_from_dark_oak_slab.json new file mode 100644 index 0000000..02c6cd0 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_dark_oak_from_dark_oak_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:dark_oak_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_dark_oak" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_jungle_from_jungle_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_jungle_from_jungle_slab.json new file mode 100644 index 0000000..9163dfe --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_jungle_from_jungle_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:jungle_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_jungle" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_mushroom_fir_from_mushroom_fir_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_mushroom_fir_from_mushroom_fir_slab.json new file mode 100644 index 0000000..3f6d67a --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_mushroom_fir_from_mushroom_fir_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_mushroom_from_mushroom_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_mushroom_from_mushroom_slab.json new file mode 100644 index 0000000..83c323d --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_mushroom_from_mushroom_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:mushroom_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_mushroom" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_nether_sakura_from_nether_sakura_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_nether_sakura_from_nether_sakura_slab.json new file mode 100644 index 0000000..65b7472 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_nether_sakura_from_nether_sakura_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_nether_sakura" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_oak_from_oak_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_oak_from_oak_slab.json new file mode 100644 index 0000000..4934895 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_oak_from_oak_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:oak_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_oak" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_reeds_from_reeds_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_reeds_from_reeds_slab.json new file mode 100644 index 0000000..a8be818 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_reeds_from_reeds_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:reeds_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_reeds" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_rubeus_from_rubeus_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_rubeus_from_rubeus_slab.json new file mode 100644 index 0000000..0f3f0d8 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_rubeus_from_rubeus_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:rubeus_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_rubeus" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_spruce_from_spruce_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_spruce_from_spruce_slab.json new file mode 100644 index 0000000..b5a4ded --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_spruce_from_spruce_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:spruce_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_spruce" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_stalagnate_from_stalagnate_planks_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_stalagnate_from_stalagnate_planks_slab.json new file mode 100644 index 0000000..4ff1935 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_stalagnate_from_stalagnate_planks_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_stalagnate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_warped_from_warped_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_warped_from_warped_slab.json new file mode 100644 index 0000000..c9558d6 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_warped_from_warped_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:warped_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_warped" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_wart_from_wart_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_wart_from_wart_slab.json new file mode 100644 index 0000000..f1c8f08 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_wart_from_wart_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:wart_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_wart" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bar_stool_willow_from_willow_slab.json b/src/generated/resources/data/minecraft/recipes/bar_stool_willow_from_willow_slab.json new file mode 100644 index 0000000..51a847c --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bar_stool_willow_from_willow_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:willow_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_willow" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/barrel_anchor_tree_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/recipes/barrel_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..513b180 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/barrel_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + }, + "S": { + "item": "betternether:anchor_tree_slab" + } + }, + "result": { + "item": "betternether:barrel_anchor_tree" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/barrel_crimson_from_crimson_planks.json b/src/generated/resources/data/minecraft/recipes/barrel_crimson_from_crimson_planks.json new file mode 100644 index 0000000..b57b37d --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/barrel_crimson_from_crimson_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "minecraft:crimson_planks" + }, + "S": { + "item": "minecraft:crimson_slab" + } + }, + "result": { + "item": "betternether:barrel_crimson" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/barrel_mushroom_fir_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/recipes/barrel_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..dd9a4b5 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/barrel_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + }, + "S": { + "item": "betternether:mushroom_fir_slab" + } + }, + "result": { + "item": "betternether:barrel_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/barrel_mushroom_from_mushroom_planks.json b/src/generated/resources/data/minecraft/recipes/barrel_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..37eab79 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/barrel_mushroom_from_mushroom_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + }, + "S": { + "item": "betternether:mushroom_slab" + } + }, + "result": { + "item": "betternether:barrel_mushroom" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/barrel_nether_sakura_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/recipes/barrel_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..49bc61d --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/barrel_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + }, + "S": { + "item": "betternether:nether_sakura_slab" + } + }, + "result": { + "item": "betternether:barrel_nether_sakura" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/barrel_reed_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/barrel_reed_from_reeds_block.json new file mode 100644 index 0000000..94e4027 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/barrel_reed_from_reeds_block.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + }, + "S": { + "item": "betternether:reeds_slab" + } + }, + "result": { + "item": "betternether:barrel_reed" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/barrel_rubeus_from_rubeus_planks.json b/src/generated/resources/data/minecraft/recipes/barrel_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..7135385 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/barrel_rubeus_from_rubeus_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + }, + "S": { + "item": "betternether:rubeus_slab" + } + }, + "result": { + "item": "betternether:barrel_rubeus" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/barrel_stalagnate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/barrel_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..482e939 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/barrel_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + }, + "S": { + "item": "betternether:stalagnate_planks_slab" + } + }, + "result": { + "item": "betternether:barrel_stalagnate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/barrel_warped_from_warped_planks.json b/src/generated/resources/data/minecraft/recipes/barrel_warped_from_warped_planks.json new file mode 100644 index 0000000..b53432c --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/barrel_warped_from_warped_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "minecraft:warped_planks" + }, + "S": { + "item": "minecraft:warped_slab" + } + }, + "result": { + "item": "betternether:barrel_warped" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/barrel_wart_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/barrel_wart_from_wart_planks.json new file mode 100644 index 0000000..ca9dfda --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/barrel_wart_from_wart_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + }, + "S": { + "item": "betternether:wart_slab" + } + }, + "result": { + "item": "betternether:barrel_wart" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/barrel_willow_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/barrel_willow_from_willow_planks.json new file mode 100644 index 0000000..668cfed --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/barrel_willow_from_willow_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + }, + "S": { + "item": "betternether:willow_slab" + } + }, + "result": { + "item": "betternether:barrel_willow" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/basalt_bricks_from_polished_basalt.json b/src/generated/resources/data/minecraft/recipes/basalt_bricks_from_polished_basalt.json new file mode 100644 index 0000000..21d37ce --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/basalt_bricks_from_polished_basalt.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:polished_basalt" + } + }, + "result": { + "item": "betternether:basalt_bricks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/basalt_bricks_slab_from_basalt_bricks.json b/src/generated/resources/data/minecraft/recipes/basalt_bricks_slab_from_basalt_bricks.json new file mode 100644 index 0000000..e07b19e --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/basalt_bricks_slab_from_basalt_bricks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:basalt_bricks" + } + }, + "result": { + "item": "betternether:basalt_bricks_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/basalt_bricks_stairs_from_basalt_bricks.json b/src/generated/resources/data/minecraft/recipes/basalt_bricks_stairs_from_basalt_bricks.json new file mode 100644 index 0000000..c8ffa08 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/basalt_bricks_stairs_from_basalt_bricks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:basalt_bricks" + } + }, + "result": { + "item": "betternether:basalt_bricks_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/basalt_bricks_wall_from_basalt_bricks.json b/src/generated/resources/data/minecraft/recipes/basalt_bricks_wall_from_basalt_bricks.json new file mode 100644 index 0000000..5dcf5c0 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/basalt_bricks_wall_from_basalt_bricks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:basalt_bricks" + } + }, + "result": { + "item": "betternether:basalt_bricks_wall", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/basalt_furnace_from_basalt.json b/src/generated/resources/data/minecraft/recipes/basalt_furnace_from_basalt.json new file mode 100644 index 0000000..3502144 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/basalt_furnace_from_basalt.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "minecraft:basalt" + } + }, + "result": { + "item": "betternether:basalt_furnace" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/basalt_slab_from_basalt.json b/src/generated/resources/data/minecraft/recipes/basalt_slab_from_basalt.json new file mode 100644 index 0000000..664d1fc --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/basalt_slab_from_basalt.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "minecraft:basalt" + } + }, + "result": { + "item": "betternether:basalt_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/basalt_stalactite_from_basalt.json b/src/generated/resources/data/minecraft/recipes/basalt_stalactite_from_basalt.json new file mode 100644 index 0000000..bf120f1 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/basalt_stalactite_from_basalt.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:basalt" + } + }, + "result": { + "item": "betternether:basalt_stalactite" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/blackstone_furnace_from_blackstone.json b/src/generated/resources/data/minecraft/recipes/blackstone_furnace_from_blackstone.json new file mode 100644 index 0000000..48b9246 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/blackstone_furnace_from_blackstone.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "minecraft:blackstone" + } + }, + "result": { + "item": "betternether:blackstone_furnace" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/blackstone_stalactite_from_blackstone.json b/src/generated/resources/data/minecraft/recipes/blackstone_stalactite_from_blackstone.json new file mode 100644 index 0000000..64a991f --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/blackstone_stalactite_from_blackstone.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:blackstone" + } + }, + "result": { + "item": "betternether:blackstone_stalactite" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json b/src/generated/resources/data/minecraft/recipes/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json new file mode 100644 index 0000000..54ab456 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:blue_obsidian_bricks" + } + }, + "result": { + "item": "betternether:blue_obsidian_bricks_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json b/src/generated/resources/data/minecraft/recipes/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json new file mode 100644 index 0000000..2d72ef8 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:blue_obsidian_bricks" + } + }, + "result": { + "item": "betternether:blue_obsidian_bricks_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json b/src/generated/resources/data/minecraft/recipes/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json new file mode 100644 index 0000000..e763158 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:blue_obsidian_tile_small" + } + }, + "result": { + "item": "betternether:blue_obsidian_tile_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json b/src/generated/resources/data/minecraft/recipes/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json new file mode 100644 index 0000000..dab5bfd --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:blue_obsidian_tile_small" + } + }, + "result": { + "item": "betternether:blue_obsidian_tile_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bone_button_from_bone_block.json b/src/generated/resources/data/minecraft/recipes/bone_button_from_bone_block.json new file mode 100644 index 0000000..7eb3a99 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bone_button_from_bone_block.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:bone_block" + } + ], + "result": { + "item": "betternether:bone_button" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bone_plate_from_bone_block.json b/src/generated/resources/data/minecraft/recipes/bone_plate_from_bone_block.json new file mode 100644 index 0000000..b977857 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bone_plate_from_bone_block.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:bone_block" + } + }, + "result": { + "item": "betternether:bone_plate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bone_slab_from_bone_block.json b/src/generated/resources/data/minecraft/recipes/bone_slab_from_bone_block.json new file mode 100644 index 0000000..0663df7 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bone_slab_from_bone_block.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:bone_block" + } + }, + "result": { + "item": "betternether:bone_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bone_stairs_from_bone_block.json b/src/generated/resources/data/minecraft/recipes/bone_stairs_from_bone_block.json new file mode 100644 index 0000000..424bdc8 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bone_stairs_from_bone_block.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:bone_block" + } + }, + "result": { + "item": "betternether:bone_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bone_stalactite_from_bone_block.json b/src/generated/resources/data/minecraft/recipes/bone_stalactite_from_bone_block.json new file mode 100644 index 0000000..325d579 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bone_stalactite_from_bone_block.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:bone_block" + } + }, + "result": { + "item": "betternether:bone_stalactite" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bone_wall_from_bone_block.json b/src/generated/resources/data/minecraft/recipes/bone_wall_from_bone_block.json new file mode 100644 index 0000000..9f08509 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bone_wall_from_bone_block.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:bone_block" + } + }, + "result": { + "item": "betternether:bone_wall", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bricks_fire_bowl_from_nether_brick_tile_large.json b/src/generated/resources/data/minecraft/recipes/bricks_fire_bowl_from_nether_brick_tile_large.json new file mode 100644 index 0000000..cfbf0b6 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bricks_fire_bowl_from_nether_brick_tile_large.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + " # ", + "L L" + ], + "key": { + "#": { + "item": "betternether:nether_brick_tile_large" + }, + "I": { + "item": "minecraft:nether_brick" + }, + "L": { + "item": "minecraft:netherrack" + } + }, + "result": { + "item": "betternether:bricks_fire_bowl" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/bricks_fire_bowl_soul_from_nether_brick_tile_large.json b/src/generated/resources/data/minecraft/recipes/bricks_fire_bowl_soul_from_nether_brick_tile_large.json new file mode 100644 index 0000000..19225d9 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/bricks_fire_bowl_soul_from_nether_brick_tile_large.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + " # ", + "L L" + ], + "key": { + "#": { + "item": "betternether:nether_brick_tile_large" + }, + "I": { + "item": "minecraft:nether_brick" + }, + "L": { + "item": "minecraft:soul_sand" + } + }, + "result": { + "item": "betternether:bricks_fire_bowl_soul" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_acacia_from_acacia_slab.json b/src/generated/resources/data/minecraft/recipes/chair_acacia_from_acacia_slab.json new file mode 100644 index 0000000..eef975b --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_acacia_from_acacia_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:acacia_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_acacia" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_anchor_tree_from_anchor_tree_slab.json b/src/generated/resources/data/minecraft/recipes/chair_anchor_tree_from_anchor_tree_slab.json new file mode 100644 index 0000000..bd3fab6 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_anchor_tree_from_anchor_tree_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_anchor_tree" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_birch_from_birch_slab.json b/src/generated/resources/data/minecraft/recipes/chair_birch_from_birch_slab.json new file mode 100644 index 0000000..7a35c87 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_birch_from_birch_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:birch_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_birch" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_cincinnasite_from_cincinnasite_slab.json b/src/generated/resources/data/minecraft/recipes/chair_cincinnasite_from_cincinnasite_slab.json new file mode 100644 index 0000000..8f76448 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_cincinnasite_from_cincinnasite_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_cincinnasite" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_crimson_from_crimson_slab.json b/src/generated/resources/data/minecraft/recipes/chair_crimson_from_crimson_slab.json new file mode 100644 index 0000000..7089ade --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_crimson_from_crimson_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:crimson_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_crimson" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_dark_oak_from_dark_oak_slab.json b/src/generated/resources/data/minecraft/recipes/chair_dark_oak_from_dark_oak_slab.json new file mode 100644 index 0000000..4dc5482 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_dark_oak_from_dark_oak_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:dark_oak_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_dark_oak" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_jungle_from_jungle_slab.json b/src/generated/resources/data/minecraft/recipes/chair_jungle_from_jungle_slab.json new file mode 100644 index 0000000..d865d2e --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_jungle_from_jungle_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:jungle_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_jungle" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_mushroom_fir_from_mushroom_fir_slab.json b/src/generated/resources/data/minecraft/recipes/chair_mushroom_fir_from_mushroom_fir_slab.json new file mode 100644 index 0000000..dc24d48 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_mushroom_fir_from_mushroom_fir_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_mushroom_from_mushroom_slab.json b/src/generated/resources/data/minecraft/recipes/chair_mushroom_from_mushroom_slab.json new file mode 100644 index 0000000..8faaac7 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_mushroom_from_mushroom_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:mushroom_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_mushroom" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_nether_sakura_from_nether_sakura_slab.json b/src/generated/resources/data/minecraft/recipes/chair_nether_sakura_from_nether_sakura_slab.json new file mode 100644 index 0000000..43ae25a --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_nether_sakura_from_nether_sakura_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_nether_sakura" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_oak_from_oak_slab.json b/src/generated/resources/data/minecraft/recipes/chair_oak_from_oak_slab.json new file mode 100644 index 0000000..ce22478 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_oak_from_oak_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:oak_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_oak" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_reeds_from_reeds_slab.json b/src/generated/resources/data/minecraft/recipes/chair_reeds_from_reeds_slab.json new file mode 100644 index 0000000..74370c5 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_reeds_from_reeds_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:reeds_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_reeds" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_rubeus_from_rubeus_slab.json b/src/generated/resources/data/minecraft/recipes/chair_rubeus_from_rubeus_slab.json new file mode 100644 index 0000000..f820e04 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_rubeus_from_rubeus_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:rubeus_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_rubeus" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_spruce_from_spruce_slab.json b/src/generated/resources/data/minecraft/recipes/chair_spruce_from_spruce_slab.json new file mode 100644 index 0000000..22bac28 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_spruce_from_spruce_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:spruce_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_spruce" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_stalagnate_from_stalagnate_planks_slab.json b/src/generated/resources/data/minecraft/recipes/chair_stalagnate_from_stalagnate_planks_slab.json new file mode 100644 index 0000000..50963fe --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_stalagnate_from_stalagnate_planks_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_stalagnate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_warped_from_warped_slab.json b/src/generated/resources/data/minecraft/recipes/chair_warped_from_warped_slab.json new file mode 100644 index 0000000..752648b --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_warped_from_warped_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:warped_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_warped" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_wart_from_wart_slab.json b/src/generated/resources/data/minecraft/recipes/chair_wart_from_wart_slab.json new file mode 100644 index 0000000..7026d70 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_wart_from_wart_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:wart_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_wart" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chair_willow_from_willow_slab.json b/src/generated/resources/data/minecraft/recipes/chair_willow_from_willow_slab.json new file mode 100644 index 0000000..272dde8 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chair_willow_from_willow_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:willow_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_willow" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chest_anchor_tree_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/recipes/chest_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..13e13bd --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chest_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:chest_anchor_tree" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chest_crimson_from_crimson_planks.json b/src/generated/resources/data/minecraft/recipes/chest_crimson_from_crimson_planks.json new file mode 100644 index 0000000..f9cb1aa --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chest_crimson_from_crimson_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "minecraft:crimson_planks" + } + }, + "result": { + "item": "betternether:chest_crimson" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chest_mushroom_fir_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/recipes/chest_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..15b9a4c --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chest_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:chest_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chest_mushroom_from_mushroom_planks.json b/src/generated/resources/data/minecraft/recipes/chest_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..f0492db --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chest_mushroom_from_mushroom_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:chest_mushroom" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chest_nether_sakura_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/recipes/chest_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..fd705ef --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chest_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:chest_nether_sakura" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chest_reed_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/chest_reed_from_reeds_block.json new file mode 100644 index 0000000..ac6a782 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chest_reed_from_reeds_block.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:chest_reed" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chest_rubeus_from_rubeus_planks.json b/src/generated/resources/data/minecraft/recipes/chest_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..81cd2c4 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chest_rubeus_from_rubeus_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:chest_rubeus" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chest_stalagnate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/chest_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..b7c93e2 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chest_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:chest_stalagnate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chest_warped_from_warped_planks.json b/src/generated/resources/data/minecraft/recipes/chest_warped_from_warped_planks.json new file mode 100644 index 0000000..2d94c8e --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chest_warped_from_warped_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "minecraft:warped_planks" + } + }, + "result": { + "item": "betternether:chest_warped" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chest_wart_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/chest_wart_from_wart_planks.json new file mode 100644 index 0000000..a18c8df --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chest_wart_from_wart_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:chest_wart" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/chest_willow_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/chest_willow_from_willow_planks.json new file mode 100644 index 0000000..a05646e --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/chest_willow_from_willow_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:chest_willow" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/cincinnasite_fire_bowl_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/recipes/cincinnasite_fire_bowl_from_cincinnasite_forged.json new file mode 100644 index 0000000..d72cda3 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/cincinnasite_fire_bowl_from_cincinnasite_forged.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + " # ", + "L L" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + }, + "I": [], + "L": { + "item": "minecraft:netherrack" + } + }, + "result": { + "item": "betternether:cincinnasite_fire_bowl" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/recipes/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json new file mode 100644 index 0000000..fde6fee --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + " # ", + "L L" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + }, + "I": [], + "L": { + "item": "minecraft:soul_sand" + } + }, + "result": { + "item": "betternether:cincinnasite_fire_bowl_soul" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/cincinnasite_plate_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/recipes/cincinnasite_plate_from_cincinnasite_forged.json new file mode 100644 index 0000000..9a236fb --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/cincinnasite_plate_from_cincinnasite_forged.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:cincinnasite_plate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/cincinnasite_slab_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/recipes/cincinnasite_slab_from_cincinnasite_forged.json new file mode 100644 index 0000000..2d2b697 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/cincinnasite_slab_from_cincinnasite_forged.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:cincinnasite_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/cincinnasite_stairs_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/recipes/cincinnasite_stairs_from_cincinnasite_forged.json new file mode 100644 index 0000000..1772dd1 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/cincinnasite_stairs_from_cincinnasite_forged.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:cincinnasite_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/cincinnasite_wall_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/recipes/cincinnasite_wall_from_cincinnasite_forged.json new file mode 100644 index 0000000..4bb1b0a --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/cincinnasite_wall_from_cincinnasite_forged.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:cincinnasite_wall", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/crafting_table_anchor_tree_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/recipes/crafting_table_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..c11a2a2 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/crafting_table_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:crafting_table_anchor_tree" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/crafting_table_crimson_from_crimson_planks.json b/src/generated/resources/data/minecraft/recipes/crafting_table_crimson_from_crimson_planks.json new file mode 100644 index 0000000..0fd7560 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/crafting_table_crimson_from_crimson_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:crimson_planks" + } + }, + "result": { + "item": "betternether:crafting_table_crimson" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/crafting_table_mushroom_fir_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/recipes/crafting_table_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..69eeb5f --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/crafting_table_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:crafting_table_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/crafting_table_mushroom_from_mushroom_planks.json b/src/generated/resources/data/minecraft/recipes/crafting_table_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..baaa027 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/crafting_table_mushroom_from_mushroom_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:crafting_table_mushroom" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/crafting_table_nether_sakura_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/recipes/crafting_table_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..71ccf42 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/crafting_table_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:crafting_table_nether_sakura" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/crafting_table_reed_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/crafting_table_reed_from_reeds_block.json new file mode 100644 index 0000000..8554315 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/crafting_table_reed_from_reeds_block.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:crafting_table_reed" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/crafting_table_rubeus_from_rubeus_planks.json b/src/generated/resources/data/minecraft/recipes/crafting_table_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..e2c4688 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/crafting_table_rubeus_from_rubeus_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:crafting_table_rubeus" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/crafting_table_stalagnate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/crafting_table_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..445b116 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/crafting_table_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:crafting_table_stalagnate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/crafting_table_warped_from_warped_planks.json b/src/generated/resources/data/minecraft/recipes/crafting_table_warped_from_warped_planks.json new file mode 100644 index 0000000..877fa6e --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/crafting_table_warped_from_warped_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:warped_planks" + } + }, + "result": { + "item": "betternether:crafting_table_warped" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/crafting_table_wart_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/crafting_table_wart_from_wart_planks.json new file mode 100644 index 0000000..c08569d --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/crafting_table_wart_from_wart_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:crafting_table_wart" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/crafting_table_willow_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/crafting_table_willow_from_willow_planks.json new file mode 100644 index 0000000..2707d79 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/crafting_table_willow_from_willow_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:crafting_table_willow" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/crimson_ladder_from_crimson_planks.json b/src/generated/resources/data/minecraft/recipes/crimson_ladder_from_crimson_planks.json new file mode 100644 index 0000000..716afc0 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/crimson_ladder_from_crimson_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "minecraft:crimson_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:crimson_ladder" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/glowstone_stalactite_from_glowstone.json b/src/generated/resources/data/minecraft/recipes/glowstone_stalactite_from_glowstone.json new file mode 100644 index 0000000..a803fee --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/glowstone_stalactite_from_glowstone.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:glowstone" + } + }, + "result": { + "item": "betternether:glowstone_stalactite" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_button_from_mushroom_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_button_from_mushroom_planks.json new file mode 100644 index 0000000..f3a3a30 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_button_from_mushroom_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:mushroom_planks" + } + ], + "result": { + "item": "betternether:mushroom_button" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_door_from_mushroom_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_door_from_mushroom_planks.json new file mode 100644 index 0000000..7943b90 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_door_from_mushroom_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:mushroom_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fence_from_mushroom_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_fence_from_mushroom_planks.json new file mode 100644 index 0000000..c06020f --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fence_from_mushroom_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:mushroom_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_button_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_button_from_mushroom_fir_planks.json new file mode 100644 index 0000000..1119d59 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_button_from_mushroom_fir_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:mushroom_fir_planks" + } + ], + "result": { + "item": "betternether:mushroom_fir_button" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_door_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_door_from_mushroom_fir_planks.json new file mode 100644 index 0000000..8c43417 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_door_from_mushroom_fir_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:mushroom_fir_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_fence_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_fence_from_mushroom_fir_planks.json new file mode 100644 index 0000000..86ed580 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_fence_from_mushroom_fir_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:mushroom_fir_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_gate_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_gate_from_mushroom_fir_planks.json new file mode 100644 index 0000000..58cd73f --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_gate_from_mushroom_fir_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:mushroom_fir_gate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_ladder_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_ladder_from_mushroom_fir_planks.json new file mode 100644 index 0000000..4f96884 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_ladder_from_mushroom_fir_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:mushroom_fir_ladder" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_log_from_mushroom_fir_stem.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_log_from_mushroom_fir_stem.json new file mode 100644 index 0000000..9768be0 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_log_from_mushroom_fir_stem.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_stem" + } + }, + "result": { + "item": "betternether:mushroom_fir_log" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_mushroom_fir_log.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_mushroom_fir_log.json new file mode 100644 index 0000000..1841c2a --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_mushroom_fir_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:mushroom_fir_log" + } + ], + "result": { + "item": "betternether:mushroom_fir_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_mushroom_fir_stem.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_mushroom_fir_stem.json new file mode 100644 index 0000000..97ef411 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_mushroom_fir_stem.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:mushroom_fir_stem" + } + ], + "result": { + "item": "betternether:mushroom_fir_planks" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_mushroom_fir_wood.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_mushroom_fir_wood.json new file mode 100644 index 0000000..a7ecffd --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_mushroom_fir_wood.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:mushroom_fir_wood" + } + ], + "result": { + "item": "betternether:mushroom_fir_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_striped_log_mushroom_fir.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_striped_log_mushroom_fir.json new file mode 100644 index 0000000..3f2dfcc --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_striped_log_mushroom_fir.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_mushroom_fir" + } + ], + "result": { + "item": "betternether:mushroom_fir_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_striped_wood_mushroom_fir.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_striped_wood_mushroom_fir.json new file mode 100644 index 0000000..af0cbae --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_planks_from_striped_wood_mushroom_fir.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_wood_mushroom_fir" + } + ], + "result": { + "item": "betternether:mushroom_fir_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_plate_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_plate_from_mushroom_fir_planks.json new file mode 100644 index 0000000..4fba920 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_plate_from_mushroom_fir_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:mushroom_fir_plate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_slab_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_slab_from_mushroom_fir_planks.json new file mode 100644 index 0000000..165c54a --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_slab_from_mushroom_fir_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:mushroom_fir_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_stairs_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_stairs_from_mushroom_fir_planks.json new file mode 100644 index 0000000..e01e185 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_stairs_from_mushroom_fir_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:mushroom_fir_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_trapdoor_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_trapdoor_from_mushroom_fir_planks.json new file mode 100644 index 0000000..3be29aa --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_trapdoor_from_mushroom_fir_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:mushroom_fir_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_fir_wood_from_mushroom_fir_log.json b/src/generated/resources/data/minecraft/recipes/mushroom_fir_wood_from_mushroom_fir_log.json new file mode 100644 index 0000000..734f8fd --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_fir_wood_from_mushroom_fir_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_log" + } + }, + "result": { + "item": "betternether:mushroom_fir_wood", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_gate_from_mushroom_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_gate_from_mushroom_planks.json new file mode 100644 index 0000000..32cd5e8 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_gate_from_mushroom_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:mushroom_gate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_ladder_from_mushroom_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_ladder_from_mushroom_planks.json new file mode 100644 index 0000000..9d86d85 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_ladder_from_mushroom_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:mushroom_ladder" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_planks_from_mushroom_stem.json b/src/generated/resources/data/minecraft/recipes/mushroom_planks_from_mushroom_stem.json new file mode 100644 index 0000000..9615192 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_planks_from_mushroom_stem.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:mushroom_stem" + } + ], + "result": { + "item": "betternether:mushroom_planks", + "count": 2 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_plate_from_mushroom_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_plate_from_mushroom_planks.json new file mode 100644 index 0000000..a8c0f4b --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_plate_from_mushroom_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:mushroom_plate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_slab_from_mushroom_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_slab_from_mushroom_planks.json new file mode 100644 index 0000000..52408ab --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_slab_from_mushroom_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:mushroom_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_stairs_from_mushroom_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_stairs_from_mushroom_planks.json new file mode 100644 index 0000000..c749db4 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_stairs_from_mushroom_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:mushroom_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/mushroom_trapdoor_from_mushroom_planks.json b/src/generated/resources/data/minecraft/recipes/mushroom_trapdoor_from_mushroom_planks.json new file mode 100644 index 0000000..1a06a12 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/mushroom_trapdoor_from_mushroom_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:mushroom_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_brick_tile_slab_from_nether_brick_tile_small.json b/src/generated/resources/data/minecraft/recipes/nether_brick_tile_slab_from_nether_brick_tile_small.json new file mode 100644 index 0000000..ac7406c --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_brick_tile_slab_from_nether_brick_tile_small.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:nether_brick_tile_small" + } + }, + "result": { + "item": "betternether:nether_brick_tile_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_brick_tile_stairs_from_nether_brick_tile_small.json b/src/generated/resources/data/minecraft/recipes/nether_brick_tile_stairs_from_nether_brick_tile_small.json new file mode 100644 index 0000000..c363f01 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_brick_tile_stairs_from_nether_brick_tile_small.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_brick_tile_small" + } + }, + "result": { + "item": "betternether:nether_brick_tile_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_brick_wall_from_nether_brick_tile_large.json b/src/generated/resources/data/minecraft/recipes/nether_brick_wall_from_nether_brick_tile_large.json new file mode 100644 index 0000000..cfbc802 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_brick_wall_from_nether_brick_tile_large.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_brick_tile_large" + } + }, + "result": { + "item": "betternether:nether_brick_wall", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_ruby_slab_from_nether_ruby_block.json b/src/generated/resources/data/minecraft/recipes/nether_ruby_slab_from_nether_ruby_block.json new file mode 100644 index 0000000..ad3e14d --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_ruby_slab_from_nether_ruby_block.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:nether_ruby_block" + } + }, + "result": { + "item": "betternether:nether_ruby_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_ruby_stairs_from_nether_ruby_block.json b/src/generated/resources/data/minecraft/recipes/nether_ruby_stairs_from_nether_ruby_block.json new file mode 100644 index 0000000..de0bd91 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_ruby_stairs_from_nether_ruby_block.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_ruby_block" + } + }, + "result": { + "item": "betternether:nether_ruby_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_bark_from_nether_sakura_log.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_bark_from_nether_sakura_log.json new file mode 100644 index 0000000..a5fc4c7 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_bark_from_nether_sakura_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_log" + } + }, + "result": { + "item": "betternether:nether_sakura_bark", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_button_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_button_from_nether_sakura_planks.json new file mode 100644 index 0000000..eb80036 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_button_from_nether_sakura_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:nether_sakura_planks" + } + ], + "result": { + "item": "betternether:nether_sakura_button" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_door_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_door_from_nether_sakura_planks.json new file mode 100644 index 0000000..a43f7cd --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_door_from_nether_sakura_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:nether_sakura_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_fence_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_fence_from_nether_sakura_planks.json new file mode 100644 index 0000000..fd91e1e --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_fence_from_nether_sakura_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:nether_sakura_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_gate_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_gate_from_nether_sakura_planks.json new file mode 100644 index 0000000..3f4fa54 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_gate_from_nether_sakura_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:nether_sakura_gate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_ladder_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_ladder_from_nether_sakura_planks.json new file mode 100644 index 0000000..4a29dcc --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_ladder_from_nether_sakura_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:nether_sakura_ladder" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_planks_from_nether_sakura_bark.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_planks_from_nether_sakura_bark.json new file mode 100644 index 0000000..8096ba5 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_planks_from_nether_sakura_bark.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:nether_sakura_bark" + } + ], + "result": { + "item": "betternether:nether_sakura_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_planks_from_nether_sakura_log.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_planks_from_nether_sakura_log.json new file mode 100644 index 0000000..e522c6f --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_planks_from_nether_sakura_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:nether_sakura_log" + } + ], + "result": { + "item": "betternether:nether_sakura_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_planks_from_striped_bark_nether_sakura.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_planks_from_striped_bark_nether_sakura.json new file mode 100644 index 0000000..0131a4d --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_planks_from_striped_bark_nether_sakura.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_bark_nether_sakura" + } + ], + "result": { + "item": "betternether:nether_sakura_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_planks_from_striped_log_nether_sakura.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_planks_from_striped_log_nether_sakura.json new file mode 100644 index 0000000..75ec5e0 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_planks_from_striped_log_nether_sakura.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_nether_sakura" + } + ], + "result": { + "item": "betternether:nether_sakura_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_plate_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_plate_from_nether_sakura_planks.json new file mode 100644 index 0000000..f77af03 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_plate_from_nether_sakura_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:nether_sakura_plate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_slab_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_slab_from_nether_sakura_planks.json new file mode 100644 index 0000000..4635c71 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_slab_from_nether_sakura_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:nether_sakura_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_stairs_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_stairs_from_nether_sakura_planks.json new file mode 100644 index 0000000..2d61bbe --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_stairs_from_nether_sakura_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:nether_sakura_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/nether_sakura_trapdoor_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/recipes/nether_sakura_trapdoor_from_nether_sakura_planks.json new file mode 100644 index 0000000..54a2090 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/nether_sakura_trapdoor_from_nether_sakura_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:nether_sakura_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/netherite_fire_bowl_from_netherite_block.json b/src/generated/resources/data/minecraft/recipes/netherite_fire_bowl_from_netherite_block.json new file mode 100644 index 0000000..652bf23 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/netherite_fire_bowl_from_netherite_block.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + " # ", + "L L" + ], + "key": { + "#": { + "item": "minecraft:netherite_block" + }, + "I": { + "item": "minecraft:netherite_ingot" + }, + "L": { + "item": "minecraft:netherrack" + } + }, + "result": { + "item": "betternether:netherite_fire_bowl" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/netherite_fire_bowl_soul_from_netherite_block.json b/src/generated/resources/data/minecraft/recipes/netherite_fire_bowl_soul_from_netherite_block.json new file mode 100644 index 0000000..dbd0285 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/netherite_fire_bowl_soul_from_netherite_block.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + " # ", + "L L" + ], + "key": { + "#": { + "item": "minecraft:netherite_block" + }, + "I": { + "item": "minecraft:netherite_ingot" + }, + "L": { + "item": "minecraft:soul_sand" + } + }, + "result": { + "item": "betternether:netherite_fire_bowl_soul" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/netherrack_furnace_from_netherrack.json b/src/generated/resources/data/minecraft/recipes/netherrack_furnace_from_netherrack.json new file mode 100644 index 0000000..6a24bb3 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/netherrack_furnace_from_netherrack.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "minecraft:netherrack" + } + }, + "result": { + "item": "betternether:netherrack_furnace" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/netherrack_stalactite_from_netherrack.json b/src/generated/resources/data/minecraft/recipes/netherrack_stalactite_from_netherrack.json new file mode 100644 index 0000000..53c9ec6 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/netherrack_stalactite_from_netherrack.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:netherrack" + } + }, + "result": { + "item": "betternether:netherrack_stalactite" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/obsidian_bricks_slab_from_obsidian_bricks.json b/src/generated/resources/data/minecraft/recipes/obsidian_bricks_slab_from_obsidian_bricks.json new file mode 100644 index 0000000..069215c --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/obsidian_bricks_slab_from_obsidian_bricks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:obsidian_bricks" + } + }, + "result": { + "item": "betternether:obsidian_bricks_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/obsidian_bricks_stairs_from_obsidian_bricks.json b/src/generated/resources/data/minecraft/recipes/obsidian_bricks_stairs_from_obsidian_bricks.json new file mode 100644 index 0000000..7a683f1 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/obsidian_bricks_stairs_from_obsidian_bricks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:obsidian_bricks" + } + }, + "result": { + "item": "betternether:obsidian_bricks_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/obsidian_tile_slab_from_obsidian_tile_small.json b/src/generated/resources/data/minecraft/recipes/obsidian_tile_slab_from_obsidian_tile_small.json new file mode 100644 index 0000000..62d1cae --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/obsidian_tile_slab_from_obsidian_tile_small.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:obsidian_tile_small" + } + }, + "result": { + "item": "betternether:obsidian_tile_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/obsidian_tile_stairs_from_obsidian_tile_small.json b/src/generated/resources/data/minecraft/recipes/obsidian_tile_stairs_from_obsidian_tile_small.json new file mode 100644 index 0000000..9600802 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/obsidian_tile_stairs_from_obsidian_tile_small.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:obsidian_tile_small" + } + }, + "result": { + "item": "betternether:obsidian_tile_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/reeds_button_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/reeds_button_from_reeds_block.json new file mode 100644 index 0000000..509fbbf --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/reeds_button_from_reeds_block.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:reeds_block" + } + ], + "result": { + "item": "betternether:reeds_button" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/reeds_door_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/reeds_door_from_reeds_block.json new file mode 100644 index 0000000..6537120 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/reeds_door_from_reeds_block.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:reeds_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/reeds_fence_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/reeds_fence_from_reeds_block.json new file mode 100644 index 0000000..9245cef --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/reeds_fence_from_reeds_block.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:reeds_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/reeds_gate_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/reeds_gate_from_reeds_block.json new file mode 100644 index 0000000..894cff0 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/reeds_gate_from_reeds_block.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:reeds_gate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/reeds_ladder_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/reeds_ladder_from_reeds_block.json new file mode 100644 index 0000000..2b7d340 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/reeds_ladder_from_reeds_block.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:reeds_ladder" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/reeds_plate_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/reeds_plate_from_reeds_block.json new file mode 100644 index 0000000..82fdc62 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/reeds_plate_from_reeds_block.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:reeds_plate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/reeds_slab_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/reeds_slab_from_reeds_block.json new file mode 100644 index 0000000..2094bef --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/reeds_slab_from_reeds_block.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:reeds_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/reeds_stairs_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/reeds_stairs_from_reeds_block.json new file mode 100644 index 0000000..53f2d28 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/reeds_stairs_from_reeds_block.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:reeds_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/reeds_trapdoor_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/reeds_trapdoor_from_reeds_block.json new file mode 100644 index 0000000..e54c8fe --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/reeds_trapdoor_from_reeds_block.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:reeds_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_cincinnasite_from_cincinnasite_forged.json b/src/generated/resources/data/minecraft/recipes/roof_tile_cincinnasite_from_cincinnasite_forged.json new file mode 100644 index 0000000..8d76636 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_cincinnasite_from_cincinnasite_forged.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# #", + "###", + " # " + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:roof_tile_cincinnasite", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json b/src/generated/resources/data/minecraft/recipes/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json new file mode 100644 index 0000000..c884eb9 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_cincinnasite" + } + }, + "result": { + "item": "betternether:roof_tile_cincinnasite_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json b/src/generated/resources/data/minecraft/recipes/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json new file mode 100644 index 0000000..8033334 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_cincinnasite" + } + }, + "result": { + "item": "betternether:roof_tile_cincinnasite_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_nether_bricks_from_nether_bricks.json b/src/generated/resources/data/minecraft/recipes/roof_tile_nether_bricks_from_nether_bricks.json new file mode 100644 index 0000000..e216bb5 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_nether_bricks_from_nether_bricks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# #", + "###", + " # " + ], + "key": { + "#": { + "item": "minecraft:nether_bricks" + } + }, + "result": { + "item": "betternether:roof_tile_nether_bricks", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json b/src/generated/resources/data/minecraft/recipes/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json new file mode 100644 index 0000000..918fad1 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_nether_bricks" + } + }, + "result": { + "item": "betternether:roof_tile_nether_bricks_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json b/src/generated/resources/data/minecraft/recipes/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json new file mode 100644 index 0000000..acc08c0 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_nether_bricks" + } + }, + "result": { + "item": "betternether:roof_tile_nether_bricks_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_reeds_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/roof_tile_reeds_from_reeds_block.json new file mode 100644 index 0000000..51ebdaa --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_reeds_from_reeds_block.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# #", + "###", + " # " + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:roof_tile_reeds", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_reeds_slab_from_roof_tile_reeds.json b/src/generated/resources/data/minecraft/recipes/roof_tile_reeds_slab_from_roof_tile_reeds.json new file mode 100644 index 0000000..d26f1cd --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_reeds_slab_from_roof_tile_reeds.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_reeds" + } + }, + "result": { + "item": "betternether:roof_tile_reeds_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_reeds_stairs_from_roof_tile_reeds.json b/src/generated/resources/data/minecraft/recipes/roof_tile_reeds_stairs_from_roof_tile_reeds.json new file mode 100644 index 0000000..ac0a8aa --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_reeds_stairs_from_roof_tile_reeds.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_reeds" + } + }, + "result": { + "item": "betternether:roof_tile_reeds_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_stalagnate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/roof_tile_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..5ff2aba --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# #", + "###", + " # " + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:roof_tile_stalagnate", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json b/src/generated/resources/data/minecraft/recipes/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json new file mode 100644 index 0000000..fea7153 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_stalagnate" + } + }, + "result": { + "item": "betternether:roof_tile_stalagnate_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json b/src/generated/resources/data/minecraft/recipes/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json new file mode 100644 index 0000000..bd772b5 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_stalagnate" + } + }, + "result": { + "item": "betternether:roof_tile_stalagnate_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_wart_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/roof_tile_wart_from_wart_planks.json new file mode 100644 index 0000000..78a197a --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_wart_from_wart_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# #", + "###", + " # " + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:roof_tile_wart", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_wart_slab_from_roof_tile_wart.json b/src/generated/resources/data/minecraft/recipes/roof_tile_wart_slab_from_roof_tile_wart.json new file mode 100644 index 0000000..90ea8cb --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_wart_slab_from_roof_tile_wart.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_wart" + } + }, + "result": { + "item": "betternether:roof_tile_wart_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_wart_stairs_from_roof_tile_wart.json b/src/generated/resources/data/minecraft/recipes/roof_tile_wart_stairs_from_roof_tile_wart.json new file mode 100644 index 0000000..03c36ca --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_wart_stairs_from_roof_tile_wart.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_wart" + } + }, + "result": { + "item": "betternether:roof_tile_wart_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_willow_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/roof_tile_willow_from_willow_planks.json new file mode 100644 index 0000000..75caee5 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_willow_from_willow_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# #", + "###", + " # " + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:roof_tile_willow", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_willow_slab_from_roof_tile_willow.json b/src/generated/resources/data/minecraft/recipes/roof_tile_willow_slab_from_roof_tile_willow.json new file mode 100644 index 0000000..b7bf954 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_willow_slab_from_roof_tile_willow.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_willow" + } + }, + "result": { + "item": "betternether:roof_tile_willow_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/roof_tile_willow_stairs_from_roof_tile_willow.json b/src/generated/resources/data/minecraft/recipes/roof_tile_willow_stairs_from_roof_tile_willow.json new file mode 100644 index 0000000..8a59eef --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/roof_tile_willow_stairs_from_roof_tile_willow.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_willow" + } + }, + "result": { + "item": "betternether:roof_tile_willow_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_bark_from_rubeus_log.json b/src/generated/resources/data/minecraft/recipes/rubeus_bark_from_rubeus_log.json new file mode 100644 index 0000000..325d54a --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_bark_from_rubeus_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:rubeus_log" + } + }, + "result": { + "item": "betternether:rubeus_bark", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_button_from_rubeus_planks.json b/src/generated/resources/data/minecraft/recipes/rubeus_button_from_rubeus_planks.json new file mode 100644 index 0000000..437aaa7 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_button_from_rubeus_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:rubeus_planks" + } + ], + "result": { + "item": "betternether:rubeus_button" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_door_from_rubeus_planks.json b/src/generated/resources/data/minecraft/recipes/rubeus_door_from_rubeus_planks.json new file mode 100644 index 0000000..51e5904 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_door_from_rubeus_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:rubeus_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_fence_from_rubeus_planks.json b/src/generated/resources/data/minecraft/recipes/rubeus_fence_from_rubeus_planks.json new file mode 100644 index 0000000..04e4a4d --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_fence_from_rubeus_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:rubeus_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_gate_from_rubeus_planks.json b/src/generated/resources/data/minecraft/recipes/rubeus_gate_from_rubeus_planks.json new file mode 100644 index 0000000..20a5458 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_gate_from_rubeus_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:rubeus_gate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_ladder_from_rubeus_planks.json b/src/generated/resources/data/minecraft/recipes/rubeus_ladder_from_rubeus_planks.json new file mode 100644 index 0000000..f194d38 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_ladder_from_rubeus_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:rubeus_ladder" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_planks_from_rubeus_bark.json b/src/generated/resources/data/minecraft/recipes/rubeus_planks_from_rubeus_bark.json new file mode 100644 index 0000000..6725932 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_planks_from_rubeus_bark.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:rubeus_bark" + } + ], + "result": { + "item": "betternether:rubeus_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_planks_from_rubeus_log.json b/src/generated/resources/data/minecraft/recipes/rubeus_planks_from_rubeus_log.json new file mode 100644 index 0000000..05cc09c --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_planks_from_rubeus_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:rubeus_log" + } + ], + "result": { + "item": "betternether:rubeus_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_planks_from_striped_bark_rubeus.json b/src/generated/resources/data/minecraft/recipes/rubeus_planks_from_striped_bark_rubeus.json new file mode 100644 index 0000000..a4ee4d7 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_planks_from_striped_bark_rubeus.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_bark_rubeus" + } + ], + "result": { + "item": "betternether:rubeus_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_planks_from_striped_log_rubeus.json b/src/generated/resources/data/minecraft/recipes/rubeus_planks_from_striped_log_rubeus.json new file mode 100644 index 0000000..7e6c9ab --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_planks_from_striped_log_rubeus.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_rubeus" + } + ], + "result": { + "item": "betternether:rubeus_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_plate_from_rubeus_planks.json b/src/generated/resources/data/minecraft/recipes/rubeus_plate_from_rubeus_planks.json new file mode 100644 index 0000000..cac95ae --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_plate_from_rubeus_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:rubeus_plate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_slab_from_rubeus_planks.json b/src/generated/resources/data/minecraft/recipes/rubeus_slab_from_rubeus_planks.json new file mode 100644 index 0000000..fdd78e2 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_slab_from_rubeus_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:rubeus_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_stairs_from_rubeus_planks.json b/src/generated/resources/data/minecraft/recipes/rubeus_stairs_from_rubeus_planks.json new file mode 100644 index 0000000..75b934a --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_stairs_from_rubeus_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:rubeus_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/rubeus_trapdoor_from_rubeus_planks.json b/src/generated/resources/data/minecraft/recipes/rubeus_trapdoor_from_rubeus_planks.json new file mode 100644 index 0000000..dd4652f --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/rubeus_trapdoor_from_rubeus_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:rubeus_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/sign_anchor_tree_from_anchor_tree_planks.json b/src/generated/resources/data/minecraft/recipes/sign_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..881576c --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/sign_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_anchor_tree" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/sign_mushroom_fir_from_mushroom_fir_planks.json b/src/generated/resources/data/minecraft/recipes/sign_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..ae08be9 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/sign_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/sign_mushroom_from_mushroom_planks.json b/src/generated/resources/data/minecraft/recipes/sign_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..f979efa --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/sign_mushroom_from_mushroom_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_mushroom" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/sign_nether_sakura_from_nether_sakura_planks.json b/src/generated/resources/data/minecraft/recipes/sign_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..9cb8ed0 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/sign_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_nether_sakura" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/sign_reed_from_reeds_block.json b/src/generated/resources/data/minecraft/recipes/sign_reed_from_reeds_block.json new file mode 100644 index 0000000..3f74a6b --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/sign_reed_from_reeds_block.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:reeds_block" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_reed" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/sign_rubeus_from_rubeus_planks.json b/src/generated/resources/data/minecraft/recipes/sign_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..3e72b83 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/sign_rubeus_from_rubeus_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_rubeus" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/sign_stalagnate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/sign_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..4b88953 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/sign_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_stalagnate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/sign_wart_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/sign_wart_from_wart_planks.json new file mode 100644 index 0000000..4e1c17d --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/sign_wart_from_wart_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:wart_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_wart" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/sign_willow_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/sign_willow_from_willow_planks.json new file mode 100644 index 0000000..fca46a5 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/sign_willow_from_willow_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:willow_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_willow" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/soul_sandstone_chiseled_from_soul_sandstone_smooth.json b/src/generated/resources/data/minecraft/recipes/soul_sandstone_chiseled_from_soul_sandstone_smooth.json new file mode 100644 index 0000000..e64867f --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/soul_sandstone_chiseled_from_soul_sandstone_smooth.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_smooth" + } + }, + "result": { + "item": "betternether:soul_sandstone_chiseled", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/soul_sandstone_cut_from_soul_sandstone.json b/src/generated/resources/data/minecraft/recipes/soul_sandstone_cut_from_soul_sandstone.json new file mode 100644 index 0000000..ade6734 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/soul_sandstone_cut_from_soul_sandstone.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone" + } + }, + "result": { + "item": "betternether:soul_sandstone_cut", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/soul_sandstone_cut_slab_from_soul_sandstone_cut.json b/src/generated/resources/data/minecraft/recipes/soul_sandstone_cut_slab_from_soul_sandstone_cut.json new file mode 100644 index 0000000..e8eeeb5 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/soul_sandstone_cut_slab_from_soul_sandstone_cut.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_cut" + } + }, + "result": { + "item": "betternether:soul_sandstone_cut_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json b/src/generated/resources/data/minecraft/recipes/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json new file mode 100644 index 0000000..55b4dc9 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_cut" + } + }, + "result": { + "item": "betternether:soul_sandstone_cut_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/soul_sandstone_slab_from_soul_sandstone.json b/src/generated/resources/data/minecraft/recipes/soul_sandstone_slab_from_soul_sandstone.json new file mode 100644 index 0000000..98c96ae --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/soul_sandstone_slab_from_soul_sandstone.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone" + } + }, + "result": { + "item": "betternether:soul_sandstone_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/soul_sandstone_smooth_from_soul_sandstone_cut.json b/src/generated/resources/data/minecraft/recipes/soul_sandstone_smooth_from_soul_sandstone_cut.json new file mode 100644 index 0000000..d1a0f21 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/soul_sandstone_smooth_from_soul_sandstone_cut.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_cut" + } + }, + "result": { + "item": "betternether:soul_sandstone_smooth", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json b/src/generated/resources/data/minecraft/recipes/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json new file mode 100644 index 0000000..5591a3b --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_smooth" + } + }, + "result": { + "item": "betternether:soul_sandstone_smooth_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json b/src/generated/resources/data/minecraft/recipes/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json new file mode 100644 index 0000000..2198171 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_smooth" + } + }, + "result": { + "item": "betternether:soul_sandstone_smooth_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/soul_sandstone_stairs_from_soul_sandstone.json b/src/generated/resources/data/minecraft/recipes/soul_sandstone_stairs_from_soul_sandstone.json new file mode 100644 index 0000000..2ee5c07 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/soul_sandstone_stairs_from_soul_sandstone.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone" + } + }, + "result": { + "item": "betternether:soul_sandstone_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/soul_sandstone_wall_from_soul_sandstone_cut.json b/src/generated/resources/data/minecraft/recipes/soul_sandstone_wall_from_soul_sandstone_cut.json new file mode 100644 index 0000000..a1c4398 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/soul_sandstone_wall_from_soul_sandstone_cut.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_cut" + } + }, + "result": { + "item": "betternether:soul_sandstone_wall", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_bark_from_stalagnate_log.json b/src/generated/resources/data/minecraft/recipes/stalagnate_bark_from_stalagnate_log.json new file mode 100644 index 0000000..7fb4291 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_bark_from_stalagnate_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:stalagnate_log" + } + }, + "result": { + "item": "betternether:stalagnate_bark", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_ladder_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/stalagnate_ladder_from_stalagnate_planks.json new file mode 100644 index 0000000..9e5fd10 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_ladder_from_stalagnate_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:stalagnate_ladder" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_log_from_stalagnate_stem.json b/src/generated/resources/data/minecraft/recipes/stalagnate_log_from_stalagnate_stem.json new file mode 100644 index 0000000..33879ea --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_log_from_stalagnate_stem.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:stalagnate_stem" + } + }, + "result": { + "item": "betternether:stalagnate_log" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_planks_button_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_button_from_stalagnate_planks.json new file mode 100644 index 0000000..b4d6c37 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_button_from_stalagnate_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:stalagnate_planks" + } + ], + "result": { + "item": "betternether:stalagnate_planks_button" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_planks_door_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_door_from_stalagnate_planks.json new file mode 100644 index 0000000..7caac0f --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_door_from_stalagnate_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:stalagnate_planks_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_planks_fence_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_fence_from_stalagnate_planks.json new file mode 100644 index 0000000..f0bba64 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_fence_from_stalagnate_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:stalagnate_planks_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_stalagnate_bark.json b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_stalagnate_bark.json new file mode 100644 index 0000000..5420f76 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_stalagnate_bark.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:stalagnate_bark" + } + ], + "result": { + "item": "betternether:stalagnate_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_stalagnate_log.json b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_stalagnate_log.json new file mode 100644 index 0000000..81b7d4e --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_stalagnate_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:stalagnate_log" + } + ], + "result": { + "item": "betternether:stalagnate_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_stalagnate_stem.json b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_stalagnate_stem.json new file mode 100644 index 0000000..bd28871 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_stalagnate_stem.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:stalagnate_stem" + } + ], + "result": { + "item": "betternether:stalagnate_planks" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_striped_bark_stalagnate.json b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_striped_bark_stalagnate.json new file mode 100644 index 0000000..73c41a6 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_striped_bark_stalagnate.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_bark_stalagnate" + } + ], + "result": { + "item": "betternether:stalagnate_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_striped_log_stalagnate.json b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_striped_log_stalagnate.json new file mode 100644 index 0000000..9f44a64 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_from_striped_log_stalagnate.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_stalagnate" + } + ], + "result": { + "item": "betternether:stalagnate_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_planks_gate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_gate_from_stalagnate_planks.json new file mode 100644 index 0000000..56f4625 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_gate_from_stalagnate_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:stalagnate_planks_gate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_planks_plate_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_plate_from_stalagnate_planks.json new file mode 100644 index 0000000..d43abab --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_plate_from_stalagnate_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:stalagnate_planks_plate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_planks_slab_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_slab_from_stalagnate_planks.json new file mode 100644 index 0000000..f829606 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_slab_from_stalagnate_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:stalagnate_planks_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_planks_stairs_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_stairs_from_stalagnate_planks.json new file mode 100644 index 0000000..9f1f9df --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_stairs_from_stalagnate_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:stalagnate_planks_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/stalagnate_planks_trapdoor_from_stalagnate_planks.json b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_trapdoor_from_stalagnate_planks.json new file mode 100644 index 0000000..d5fc1d0 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/stalagnate_planks_trapdoor_from_stalagnate_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:stalagnate_planks_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_acacia_from_acacia_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_acacia_from_acacia_slab.json new file mode 100644 index 0000000..28efc1f --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_acacia_from_acacia_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:acacia_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_acacia" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_anchor_tree_from_anchor_tree_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_anchor_tree_from_anchor_tree_slab.json new file mode 100644 index 0000000..c78f045 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_anchor_tree_from_anchor_tree_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_anchor_tree" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_birch_from_birch_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_birch_from_birch_slab.json new file mode 100644 index 0000000..a52d654 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_birch_from_birch_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:birch_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_birch" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_cincinnasite_from_cincinnasite_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_cincinnasite_from_cincinnasite_slab.json new file mode 100644 index 0000000..c8aa4a3 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_cincinnasite_from_cincinnasite_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_cincinnasite" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_crimson_from_crimson_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_crimson_from_crimson_slab.json new file mode 100644 index 0000000..f99bda7 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_crimson_from_crimson_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:crimson_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_crimson" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_dark_oak_from_dark_oak_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_dark_oak_from_dark_oak_slab.json new file mode 100644 index 0000000..b0fc1be --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_dark_oak_from_dark_oak_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:dark_oak_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_dark_oak" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_jungle_from_jungle_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_jungle_from_jungle_slab.json new file mode 100644 index 0000000..cf10bc1 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_jungle_from_jungle_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:jungle_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_jungle" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_mushroom_fir_from_mushroom_fir_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_mushroom_fir_from_mushroom_fir_slab.json new file mode 100644 index 0000000..7fb0e04 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_mushroom_fir_from_mushroom_fir_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_mushroom_from_mushroom_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_mushroom_from_mushroom_slab.json new file mode 100644 index 0000000..3c58d2a --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_mushroom_from_mushroom_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:mushroom_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_mushroom" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_nether_sakura_from_nether_sakura_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_nether_sakura_from_nether_sakura_slab.json new file mode 100644 index 0000000..fdb1425 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_nether_sakura_from_nether_sakura_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_nether_sakura" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_oak_from_oak_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_oak_from_oak_slab.json new file mode 100644 index 0000000..e2843af --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_oak_from_oak_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:oak_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_oak" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_reeds_from_reeds_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_reeds_from_reeds_slab.json new file mode 100644 index 0000000..2487fe2 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_reeds_from_reeds_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:reeds_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_reeds" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_rubeus_from_rubeus_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_rubeus_from_rubeus_slab.json new file mode 100644 index 0000000..fd8dcef --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_rubeus_from_rubeus_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:rubeus_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_rubeus" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_spruce_from_spruce_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_spruce_from_spruce_slab.json new file mode 100644 index 0000000..b75ba4c --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_spruce_from_spruce_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:spruce_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_spruce" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_stalagnate_from_stalagnate_planks_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_stalagnate_from_stalagnate_planks_slab.json new file mode 100644 index 0000000..a9ef859 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_stalagnate_from_stalagnate_planks_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_stalagnate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_warped_from_warped_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_warped_from_warped_slab.json new file mode 100644 index 0000000..6b1a5e6 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_warped_from_warped_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:warped_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_warped" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_wart_from_wart_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_wart_from_wart_slab.json new file mode 100644 index 0000000..c4732a9 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_wart_from_wart_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:wart_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_wart" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/taburet_willow_from_willow_slab.json b/src/generated/resources/data/minecraft/recipes/taburet_willow_from_willow_slab.json new file mode 100644 index 0000000..5465229 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/taburet_willow_from_willow_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:willow_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_willow" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/warped_ladder_from_warped_planks.json b/src/generated/resources/data/minecraft/recipes/warped_ladder_from_warped_planks.json new file mode 100644 index 0000000..3cded2c --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/warped_ladder_from_warped_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "minecraft:warped_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:warped_ladder" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_bark_from_wart_log.json b/src/generated/resources/data/minecraft/recipes/wart_bark_from_wart_log.json new file mode 100644 index 0000000..2ac353e --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_bark_from_wart_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:wart_log" + } + }, + "result": { + "item": "betternether:wart_bark", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_button_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/wart_button_from_wart_planks.json new file mode 100644 index 0000000..897577b --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_button_from_wart_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:wart_planks" + } + ], + "result": { + "item": "betternether:wart_button" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_door_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/wart_door_from_wart_planks.json new file mode 100644 index 0000000..b70ef67 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_door_from_wart_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:wart_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_fence_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/wart_fence_from_wart_planks.json new file mode 100644 index 0000000..142b1ed --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_fence_from_wart_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:wart_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_gate_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/wart_gate_from_wart_planks.json new file mode 100644 index 0000000..7192da1 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_gate_from_wart_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:wart_gate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_ladder_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/wart_ladder_from_wart_planks.json new file mode 100644 index 0000000..071b0c5 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_ladder_from_wart_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:wart_ladder" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_planks_from_striped_bark_wart.json b/src/generated/resources/data/minecraft/recipes/wart_planks_from_striped_bark_wart.json new file mode 100644 index 0000000..a8de183 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_planks_from_striped_bark_wart.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_bark_wart" + } + ], + "result": { + "item": "betternether:wart_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_planks_from_striped_log_wart.json b/src/generated/resources/data/minecraft/recipes/wart_planks_from_striped_log_wart.json new file mode 100644 index 0000000..fdc947c --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_planks_from_striped_log_wart.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_wart" + } + ], + "result": { + "item": "betternether:wart_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_planks_from_wart_bark.json b/src/generated/resources/data/minecraft/recipes/wart_planks_from_wart_bark.json new file mode 100644 index 0000000..9fa74da --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_planks_from_wart_bark.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:wart_bark" + } + ], + "result": { + "item": "betternether:wart_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_planks_from_wart_log.json b/src/generated/resources/data/minecraft/recipes/wart_planks_from_wart_log.json new file mode 100644 index 0000000..7f38bc5 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_planks_from_wart_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:wart_log" + } + ], + "result": { + "item": "betternether:wart_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_plate_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/wart_plate_from_wart_planks.json new file mode 100644 index 0000000..46a058e --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_plate_from_wart_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:wart_plate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_slab_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/wart_slab_from_wart_planks.json new file mode 100644 index 0000000..b06a9c2 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_slab_from_wart_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:wart_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_stairs_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/wart_stairs_from_wart_planks.json new file mode 100644 index 0000000..9cc6d6e --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_stairs_from_wart_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:wart_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/wart_trapdoor_from_wart_planks.json b/src/generated/resources/data/minecraft/recipes/wart_trapdoor_from_wart_planks.json new file mode 100644 index 0000000..9d6b648 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/wart_trapdoor_from_wart_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:wart_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_bark_from_willow_log.json b/src/generated/resources/data/minecraft/recipes/willow_bark_from_willow_log.json new file mode 100644 index 0000000..8e6a866 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_bark_from_willow_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:willow_log" + } + }, + "result": { + "item": "betternether:willow_bark", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_button_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/willow_button_from_willow_planks.json new file mode 100644 index 0000000..40767b0 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_button_from_willow_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:willow_planks" + } + ], + "result": { + "item": "betternether:willow_button" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_door_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/willow_door_from_willow_planks.json new file mode 100644 index 0000000..a6f47d1 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_door_from_willow_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:willow_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_fence_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/willow_fence_from_willow_planks.json new file mode 100644 index 0000000..1592127 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_fence_from_willow_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:willow_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_gate_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/willow_gate_from_willow_planks.json new file mode 100644 index 0000000..e5cd2d7 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_gate_from_willow_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:willow_gate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_ladder_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/willow_ladder_from_willow_planks.json new file mode 100644 index 0000000..757892b --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_ladder_from_willow_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:willow_ladder" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_planks_from_striped_bark_willow.json b/src/generated/resources/data/minecraft/recipes/willow_planks_from_striped_bark_willow.json new file mode 100644 index 0000000..149d361 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_planks_from_striped_bark_willow.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_bark_willow" + } + ], + "result": { + "item": "betternether:willow_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_planks_from_striped_log_willow.json b/src/generated/resources/data/minecraft/recipes/willow_planks_from_striped_log_willow.json new file mode 100644 index 0000000..9d13337 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_planks_from_striped_log_willow.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_willow" + } + ], + "result": { + "item": "betternether:willow_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_planks_from_willow_bark.json b/src/generated/resources/data/minecraft/recipes/willow_planks_from_willow_bark.json new file mode 100644 index 0000000..8b716ea --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_planks_from_willow_bark.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:willow_bark" + } + ], + "result": { + "item": "betternether:willow_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_planks_from_willow_log.json b/src/generated/resources/data/minecraft/recipes/willow_planks_from_willow_log.json new file mode 100644 index 0000000..3a584d4 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_planks_from_willow_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:willow_log" + } + ], + "result": { + "item": "betternether:willow_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_plate_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/willow_plate_from_willow_planks.json new file mode 100644 index 0000000..ec27df4 --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_plate_from_willow_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:willow_plate" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_slab_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/willow_slab_from_willow_planks.json new file mode 100644 index 0000000..bb1fafe --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_slab_from_willow_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:willow_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_stairs_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/willow_stairs_from_willow_planks.json new file mode 100644 index 0000000..4fbe60a --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_stairs_from_willow_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:willow_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/recipes/willow_trapdoor_from_willow_planks.json b/src/generated/resources/data/minecraft/recipes/willow_trapdoor_from_willow_planks.json new file mode 100644 index 0000000..a1b9e0f --- /dev/null +++ b/src/generated/resources/data/minecraft/recipes/willow_trapdoor_from_willow_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:willow_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/BetterNether.java b/src/main/java/redd90/betternether/BetterNether.java new file mode 100644 index 0000000..5103785 --- /dev/null +++ b/src/main/java/redd90/betternether/BetterNether.java @@ -0,0 +1,142 @@ +package redd90.betternether; + +import net.minecraft.block.Block; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.RenderTypeLookup; +import net.minecraft.entity.EntityType; +import net.minecraft.item.Item; +import net.minecraft.tileentity.TileEntityType; +import net.minecraft.util.SoundEvent; +import net.minecraft.world.biome.Biome; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.eventbus.api.IEventBus; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; +import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; +import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; +import net.minecraftforge.registries.ForgeRegistries; +import redd90.betternether.biomes.NetherBiome; +import redd90.betternether.blocks.BNRenderLayer; +import redd90.betternether.client.IRenderTypeable; +import redd90.betternether.config.Config; +import redd90.betternether.config.Configs; +import redd90.betternether.datagen.DataGenerators; +import redd90.betternether.recipes.ItemRecipes; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.BrewingRegistry; +import redd90.betternether.registry.EntityRegistry; +import redd90.betternether.registry.EntityRenderRegistry; +import redd90.betternether.registry.FuelRegistry; +import redd90.betternether.registry.ItemsRegistry; +import redd90.betternether.registry.NetherBiomesRegistry; +import redd90.betternether.registry.SoundsRegistry; +import redd90.betternether.registry.TileEntitiesRegistry; +import redd90.betternether.registry.TileEntityRenderRegistry; +import redd90.betternether.world.BNWorldGenerator; +import redd90.betternether.world.NetherBiomeProvider; +import redd90.betternether.world.structures.piece.StructureTypes; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +@Mod(BetterNether.MOD_ID) +public class BetterNether +{ + // Directly reference a log4j logger. + public static final Logger LOGGER = LogManager.getLogger(); + public static final String MOD_ID = "betternether"; + private static boolean thinArmor = true; + private static boolean lavafallParticles = true; + private static float fogStart = 0.05F; + private static float fogEnd = 0.5F; + + public BetterNether() { + IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus(); + IEventBus forgeEventBus = MinecraftForge.EVENT_BUS; + + initOptions(); + + modEventBus.addListener(this::commonSetup); + modEventBus.addListener(this::clientSetup); + + modEventBus.addListener(DataGenerators::gatherData); + forgeEventBus.addListener(FuelRegistry::onFuelBurnTimeEvent); + modEventBus.addListener(NetherBiomesRegistry::createRegistry); + modEventBus.addGenericListener(SoundEvent.class, SoundsRegistry::registerAll); + modEventBus.addGenericListener(EntityType.class, EntityRegistry::registerAll); + modEventBus.addGenericListener(Block.class, BlocksRegistry::registerAll); + modEventBus.addGenericListener(Item.class, ItemsRegistry::registerAll); + modEventBus.addGenericListener(TileEntityType.class, TileEntitiesRegistry::registerAll); + modEventBus.addGenericListener(NetherBiome.class, NetherBiomesRegistry::registerNetherBiomes); + modEventBus.addGenericListener(Biome.class, NetherBiomesRegistry::registerBiomes); + + //StructureRegistry.DEFERRED_FEATURES.register(modEventBus); + //StructureRegistry.DEFERRED_STRUCTURES.register(modEventBus); + NetherBiomesRegistry.init(); + EntityRegistry.registerNetherEntities(); + StructureTypes.init(); + BNWorldGenerator.onModInit(); + BrewingRegistry.register(); + Config.save(); + + NetherTags.init(); + + NetherBiomeProvider.register(); + } + + private void clientSetup(FMLClientSetupEvent e) { + registerRenderLayers(); + EntityRenderRegistry.register(); + TileEntityRenderRegistry.register(); + } + + private void commonSetup(FMLCommonSetupEvent e) { + ItemRecipes.register(); + } + + private void initOptions() { + thinArmor = Configs.MAIN.getBoolean("improvement", "smaller_armor_offset", true); + lavafallParticles = Configs.MAIN.getBoolean("improvement", "lavafall_particles", true); + float density = Configs.MAIN.getFloat("improvement", "fog_density[vanilla: 1.0]", 0.75F); + changeFogDensity(density); + } + + private void registerRenderLayers() { + RenderType cutout = RenderType.getCutout(); + RenderType translucent = RenderType.getTranslucent(); + ForgeRegistries.BLOCKS.forEach(block -> { + if (block instanceof IRenderTypeable) { + BNRenderLayer layer = ((IRenderTypeable) block).getRenderLayer(); + if (layer == BNRenderLayer.CUTOUT) + RenderTypeLookup.setRenderLayer(block, cutout); + else if (layer == BNRenderLayer.TRANSLUCENT) + RenderTypeLookup.setRenderLayer(block, translucent); + } + }); + } + + public static boolean hasThinArmor() { + return thinArmor; + } + + public static void setThinArmor(boolean value) { + thinArmor = value; + } + + public static boolean hasLavafallParticles() { + return lavafallParticles; + } + + public static void changeFogDensity(float density) { + fogStart = -0.45F * density + 0.5F; + fogEnd = -0.5F * density + 1; + } + + public static float getFogStart() { + return fogStart; + } + + public static float getFogEnd() { + return fogEnd; + } +} diff --git a/src/main/java/redd90/betternether/BlocksHelper.java b/src/main/java/redd90/betternether/BlocksHelper.java new file mode 100644 index 0000000..502bf7c --- /dev/null +++ b/src/main/java/redd90/betternether/BlocksHelper.java @@ -0,0 +1,150 @@ +package redd90.betternether; + +import java.util.HashSet; +import java.util.Iterator; +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.fluid.LavaFluid; +import net.minecraft.state.Property; +import net.minecraft.util.Direction; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.vector.Vector3i; +import net.minecraft.world.IWorld; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.blocks.BlockFarmland; +import redd90.betternether.registry.BlocksRegistry; + +public class BlocksHelper { + public static final int FLAG_UPDATE_BLOCK = 1; + public static final int FLAG_SEND_CLIENT_CHANGES = 2; + public static final int FLAG_NO_RERENDER = 4; + public static final int FORSE_RERENDER = 8; + public static final int FLAG_IGNORE_OBSERVERS = 16; + + public static final int SET_SILENT = FLAG_UPDATE_BLOCK | FLAG_IGNORE_OBSERVERS | FLAG_SEND_CLIENT_CHANGES; + public static final int SET_UPDATE = FLAG_UPDATE_BLOCK | FLAG_SEND_CLIENT_CHANGES; + public static final Direction[] HORIZONTAL = new Direction[] { Direction.NORTH, Direction.SOUTH, Direction.EAST, Direction.WEST }; + + private static final Vector3i[] OFFSETS = new Vector3i[] { + new Vector3i(-1, -1, -1), new Vector3i(-1, -1, 0), new Vector3i(-1, -1, 1), + new Vector3i(-1, 0, -1), new Vector3i(-1, 0, 0), new Vector3i(-1, 0, 1), + new Vector3i(-1, 1, -1), new Vector3i(-1, 1, 0), new Vector3i(-1, 1, 1), + + new Vector3i(0, -1, -1), new Vector3i(0, -1, 0), new Vector3i(0, -1, 1), + new Vector3i(0, 0, -1), new Vector3i(0, 0, 0), new Vector3i(0, 0, 1), + new Vector3i(0, 1, -1), new Vector3i(0, 1, 0), new Vector3i(0, 1, 1), + + new Vector3i(1, -1, -1), new Vector3i(1, -1, 0), new Vector3i(1, -1, 1), + new Vector3i(1, 0, -1), new Vector3i(1, 0, 0), new Vector3i(1, 0, 1), + new Vector3i(1, 1, -1), new Vector3i(1, 1, 0), new Vector3i(1, 1, 1) + }; + + public static boolean isLava(BlockState state) { + return state.getFluidState().getFluid() instanceof LavaFluid; + } + + public static boolean isNetherrack(BlockState state) { + return state.isIn(NetherTags.Blocks.NETHERRACK); + } + + public static boolean isSoulSand(BlockState state) { + return state.isIn(NetherTags.Blocks.SOUL_GROUND); + } + + public static boolean isNetherGround(BlockState state) { + return isNetherrack(state) || isSoulSand(state) || isNetherMycelium(state) || isNylium(state); + // return state.isIn(NetherTags.NETHER_GROUND); + } + + public static boolean isNetherGroundMagma(BlockState state) { + return isNetherGround(state) || state.getBlock() == Blocks.MAGMA_BLOCK; + } + + public static boolean isBone(BlockState state) { + Block b = state.getBlock(); + return b == Blocks.BONE_BLOCK || b == BlocksRegistry.BONE_BLOCK; + } + + public static boolean isNetherMycelium(BlockState state) { + return state.isIn(NetherTags.Blocks.MYCELIUM); + } + + public static void setWithUpdate(IWorld world, BlockPos pos, BlockState state) { + world.setBlockState(pos, state, SET_UPDATE); + } + + public static void setWithoutUpdate(IWorld world, BlockPos pos, BlockState state) { + world.setBlockState(pos, state, SET_SILENT); + } + + public static int upRay(IWorld world, BlockPos pos, int maxDist) { + int length = 0; + for (int j = 1; j < maxDist && (world.isAirBlock(pos.up(j))); j++) + length++; + return length; + } + + public static int downRay(IWorld world, BlockPos pos, int maxDist) { + int length = 0; + for (int j = 1; j < maxDist && (world.isAirBlock(pos.down(j))); j++) + length++; + return length; + } + + public static BlockState rotateHorizontal(BlockState state, Rotation rotation, Property facing) { + return (BlockState) state.with(facing, rotation.rotate((Direction) state.get(facing))); + } + + public static BlockState mirrorHorizontal(BlockState state, Mirror mirror, Property facing) { + return state.rotate(mirror.toRotation((Direction) state.get(facing))); + } + + public static int getLengthDown(ServerWorld world, BlockPos pos, Block block) { + int count = 1; + while (world.getBlockState(pos.down(count)).getBlock() == block) + count++; + return count; + } + + public static boolean isFertile(BlockState state) { + return state.getBlock() instanceof BlockFarmland; + } + + public static void cover(IWorld world, BlockPos center, Block ground, BlockState cover, int radius, Random random) { + HashSet points = new HashSet(); + HashSet points2 = new HashSet(); + if (world.getBlockState(center).getBlock() == ground) { + points.add(center); + points2.add(center); + for (int i = 0; i < radius; i++) { + Iterator iterator = points.iterator(); + while (iterator.hasNext()) { + BlockPos pos = iterator.next(); + for (Vector3i offset : OFFSETS) { + if (random.nextBoolean()) { + BlockPos pos2 = pos.add(offset); + if (random.nextBoolean() && world.getBlockState(pos2).getBlock() == ground && !points.contains(pos2)) + points2.add(pos2); + } + } + } + points.addAll(points2); + points2.clear(); + } + Iterator iterator = points.iterator(); + while (iterator.hasNext()) { + BlockPos pos = iterator.next(); + BlocksHelper.setWithoutUpdate(world, pos, cover); + } + } + } + + public static boolean isNylium(BlockState state) { + return state.isIn(NetherTags.Blocks.NYLIUM); + } +} diff --git a/src/main/java/redd90/betternether/MHelper.java b/src/main/java/redd90/betternether/MHelper.java new file mode 100644 index 0000000..e7a538f --- /dev/null +++ b/src/main/java/redd90/betternether/MHelper.java @@ -0,0 +1,51 @@ +package redd90.betternether; + +import java.util.Random; + +public class MHelper { + public static final float PI2 = (float) (Math.PI * 2); + private static final int ALPHA = 255 << 24; + public static final Random RANDOM = new Random(); + + public static int color(int r, int g, int b) { + return ALPHA | (r << 16) | (g << 8) | b; + } + + public static int randRange(int min, int max, Random random) { + return min + random.nextInt(max - min + 1); + } + + public static float randRange(float min, float max, Random random) { + return min + random.nextFloat() * (max - min); + } + + public static byte setBit(byte source, int pos, boolean value) { + return value ? setBitTrue(source, pos) : setBitFalse(source, pos); + } + + public static byte setBitTrue(byte source, int pos) { + source |= 1 << pos; + return source; + } + + public static byte setBitFalse(byte source, int pos) { + source &= ~(1 << pos); + return source; + } + + public static boolean getBit(byte source, int pos) { + return ((source >> pos) & 1) == 1; + } + + public static int floor(float x) { + return x < 0 ? (int) (x - 1) : (int) x; + } + + public static float wrap(float x, float side) { + return x - floor(x / side) * side; + } + + public static int floor(double x) { + return x < 0 ? (int) (x - 1) : (int) x; + } +} diff --git a/src/main/java/redd90/betternether/NetherTags.java b/src/main/java/redd90/betternether/NetherTags.java new file mode 100644 index 0000000..5655e85 --- /dev/null +++ b/src/main/java/redd90/betternether/NetherTags.java @@ -0,0 +1,41 @@ +package redd90.betternether; + +import net.minecraft.block.Block; +import net.minecraft.item.Item; +import net.minecraft.tags.BlockTags; +import net.minecraft.tags.ItemTags; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.common.Tags.IOptionalNamedTag; + +public class NetherTags { + public static void init () + { + Blocks.init(); + Items.init(); + } + + public static class Blocks { + private static void init(){} + + public static final IOptionalNamedTag SOUL_GROUND = tag("soul_ground"); + public static final IOptionalNamedTag NETHERRACK = tag("netherrack"); + public static final IOptionalNamedTag MYCELIUM = tag("nether_mycelium"); + public static final IOptionalNamedTag NYLIUM = tag("nylium"); + + private static IOptionalNamedTag tag(String name) + { + return BlockTags.createOptional(new ResourceLocation(BetterNether.MOD_ID, name)); + } + } + + public static class Items { + private static void init(){} + + public static final IOptionalNamedTag SOUL_GROUND = tag("soul_ground"); + + private static IOptionalNamedTag tag(String name) + { + return ItemTags.createOptional(new ResourceLocation(BetterNether.MOD_ID, name)); + } + } +} diff --git a/src/main/java/redd90/betternether/biomes/BiomeDefinition.java b/src/main/java/redd90/betternether/biomes/BiomeDefinition.java new file mode 100644 index 0000000..8589dc1 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/BiomeDefinition.java @@ -0,0 +1,381 @@ +package redd90.betternether.biomes; + +import java.util.List; + +import com.google.common.collect.Lists; + +import net.minecraft.client.audio.BackgroundMusicTracks; +import net.minecraft.entity.EntityClassification; +import net.minecraft.entity.EntityType; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.MathHelper; +import net.minecraft.world.biome.Biome; +import net.minecraft.world.biome.Biome.Category; +import net.minecraft.world.biome.Biome.RainType; +import net.minecraft.world.biome.BiomeAmbience; +import net.minecraft.world.biome.BiomeGenerationSettings; +import net.minecraft.world.biome.DefaultBiomeFeatures; +import net.minecraft.world.biome.MobSpawnInfo; +import net.minecraft.world.biome.MoodSoundAmbience; +import net.minecraft.world.biome.ParticleEffectAmbience; +import net.minecraft.world.biome.SoundAdditionsAmbience; +import net.minecraft.world.gen.GenerationStage; +import net.minecraft.world.gen.carver.ConfiguredCarvers; +import net.minecraft.world.gen.feature.ConfiguredFeature; +import net.minecraft.world.gen.feature.Features; +import net.minecraft.world.gen.feature.StructureFeature; +import net.minecraft.world.gen.feature.structure.StructureFeatures; +import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders; +import net.minecraftforge.registries.ForgeRegistries; +import redd90.betternether.BetterNether; +import redd90.betternether.MHelper; +import redd90.betternether.config.Configs; + + +public class BiomeDefinition { + private final List> structures = Lists.newArrayList(); + private final List features = Lists.newArrayList(); + private final List mobs = Lists.newArrayList(); + + private ParticleEffectAmbience particleConfig; + private SoundAdditionsAmbience additions; + private MoodSoundAmbience mood; + private SoundEvent music; + private SoundEvent loop; + + private int waterFogColor = 329011; + private int waterColor = 4159204; + private int fogColor = 3344392; + + private boolean defaultOres = true; + private boolean defaultMobs = true; + private boolean defaultFeatures = true; + private boolean defaultStructureFeatures = true; + private boolean stalactites = true; + private boolean bnStructures = true; + + private final ResourceLocation id; + + public BiomeDefinition(String name) { + this.id = new ResourceLocation(BetterNether.MOD_ID, name.replace(' ', '_').toLowerCase()); + } + + public BiomeDefinition(ResourceLocation id) { + this.id = id; + } + + public BiomeDefinition setStalactites(boolean value) { + stalactites = value; + return this; + } + + public BiomeDefinition setBNStructures(boolean value) { + bnStructures = value; + return this; + } + + /** + * Set default ores generation + * + * @param value + * - if true (default) then default ores will be generated + * @return this {@link BiomeDefinition} + */ + public BiomeDefinition setDefaultOres(boolean value) { + defaultOres = value; + return this; + } + + /** + * Set default nether structure features to be added + * + * @param value + * - if true (default) then default structure features (nether + * fortresses, caves, etc.) will be added into biome + * @return this {@link BiomeDefinition} + */ + public BiomeDefinition setDefaultStructureFeatures(boolean value) { + defaultStructureFeatures = value; + return this; + } + + /** + * Set default nether features to be added + * + * @param value + * - if true (default) then default features (small structures) + * will be added into biome + * @return this {@link BiomeDefinition} + */ + public BiomeDefinition setDefaultFeatures(boolean value) { + defaultFeatures = value; + return this; + } + + /** + * Set default Nether Wastes mobs to be added + * + * @param value + * - if true (default) then default mobs will be added into biome + * @return this {@link BiomeDefinition} + */ + public BiomeDefinition setDefaultMobs(boolean value) { + defaultMobs = value; + return this; + } + + public BiomeDefinition setParticleConfig(ParticleEffectAmbience config) { + this.particleConfig = config; + return this; + } + + /** + * Adds mob into biome + * + * @param type + * - {@link EntityType} + * @param group + * - {@link SpawnGroup} + * @param weight + * - cumulative spawning weight + * @param minGroupSize + * - minimum count of mobs in the group + * @param maxGroupSize + * - maximum count of mobs in the group + * @return this {@link BiomeDefinition} + */ + public BiomeDefinition addMobSpawn(EntityType type, int weight, int minGroupSize, int maxGroupSize) { + ResourceLocation eID = ForgeRegistries.ENTITIES.getKey(type); + if (eID != ForgeRegistries.ENTITIES.getDefaultKey()) { + String path = "generator.biome." + id.getNamespace() + "." + id.getPath() + ".mobs." + eID.getNamespace() + "." + eID.getPath(); + SpawnInfo info = new SpawnInfo(); + info.type = type; + info.weight = Configs.BIOMES.getInt(path, "weight", weight); + info.minGroupSize = Configs.BIOMES.getInt(path, "min_group_size", minGroupSize); + info.maxGroupSize = Configs.BIOMES.getInt(path, "max_group_size", maxGroupSize); + mobs.add(info); + } + return this; + } + + /** + * Adds feature (small structure) into biome - plants, ores, small + * buildings, etc. + * + * @param feature + * - {@link StructureFeature} to add + * @return this {@link BiomeDefinition} + */ + public BiomeDefinition addStructureFeature(StructureFeature feature) { + structures.add(feature); + return this; + } + + public BiomeDefinition addFeature(GenerationStage.Decoration featureStep, ConfiguredFeature feature) { + FeatureInfo info = new FeatureInfo(); + info.featureStep = featureStep; + info.feature = feature; + features.add(info); + return this; + } + + /** + * Sets biome fog color + * + * @param r + * - Red [0 - 255] + * @param g + * - Green [0 - 255] + * @param b + * - Blue [0 - 255] + * @return this {@link BiomeDefinition} + */ + public BiomeDefinition setFogColor(int r, int g, int b) { + String path = "generator.biome." + id.getNamespace() + "." + id.getPath() + ".fog_color"; + r = MathHelper.clamp(Configs.BIOMES.getInt(path, "red", r), 0, 255); + g = MathHelper.clamp(Configs.BIOMES.getInt(path, "green", g), 0, 255); + b = MathHelper.clamp(Configs.BIOMES.getInt(path, "blue", b), 0, 255); + this.fogColor = MHelper.color(r, g, b); + return this; + } + + /** + * Sets biome water color + * + * @param r + * - Red [0 - 255] + * @param g + * - Green [0 - 255] + * @param b + * - Blue [0 - 255] + * @return this {@link BiomeDefinition} + */ + public BiomeDefinition setWaterColor(int r, int g, int b) { + String path = "generator.biome." + id.getNamespace() + "." + id.getPath() + ".water_color"; + r = MathHelper.clamp(Configs.BIOMES.getInt(path, "red", r), 0, 255); + g = MathHelper.clamp(Configs.BIOMES.getInt(path, "green", g), 0, 255); + b = MathHelper.clamp(Configs.BIOMES.getInt(path, "blue", b), 0, 255); + this.waterColor = MHelper.color(r, g, b); + return this; + } + + /** + * Sets biome underwater fog color + * + * @param r + * - Red [0 - 255] + * @param g + * - Green [0 - 255] + * @param b + * - Blue [0 - 255] + * @return this {@link BiomeDefinition} + */ + public BiomeDefinition setWaterFogColor(int r, int g, int b) { + String path = "generator.biome." + id.getNamespace() + "." + id.getPath() + ".water_fog_color"; + r = MathHelper.clamp(Configs.BIOMES.getInt(path, "red", r), 0, 255); + g = MathHelper.clamp(Configs.BIOMES.getInt(path, "green", g), 0, 255); + b = MathHelper.clamp(Configs.BIOMES.getInt(path, "blue", b), 0, 255); + this.waterFogColor = MHelper.color(r, g, b); + return this; + } + + /** + * Plays in never-ending loop for as long as player is in the biome + * + * @param loop + * - SoundEvent + * @return this {@link BiomeDefinition} + */ + public BiomeDefinition setLoop(SoundEvent loop) { + this.loop = loop; + return this; + } + + /** + * Plays commonly while the player is in the biome + * + * @param mood + * - SoundEvent + * @return this {@link BiomeDefinition} + */ + public BiomeDefinition setMood(SoundEvent mood) { + this.mood = new MoodSoundAmbience(mood, 6000, 8, 2.0D); + return this; + } + + /** + * Set additional sounds. They plays once every 6000-17999 ticks while the + * player is in the biome + * + * @param additions + * - SoundEvent + * @return this BiomeDefenition + */ + public BiomeDefinition setAdditions(SoundEvent additions) { + this.additions = new SoundAdditionsAmbience(additions, 0.0111); + return this; + } + + /** + * Set background music for biome + * + * @param music + * @return + */ + public BiomeDefinition setMusic(SoundEvent music) { + this.music = music; + return this; + } + + public Biome build() { + MobSpawnInfo.Builder spawnSettings = new MobSpawnInfo.Builder(); + BiomeGenerationSettings.Builder generationSettings = new BiomeGenerationSettings.Builder(); + BiomeAmbience.Builder effects = new BiomeAmbience.Builder(); + + if (defaultMobs) addDefaultMobs(spawnSettings); + mobs.forEach((spawn) -> { + spawnSettings.withSpawner(spawn.type.getClassification(), new MobSpawnInfo.Spawners(spawn.type, spawn.weight, spawn.minGroupSize, spawn.maxGroupSize)); + }); + + generationSettings.withSurfaceBuilder(ConfiguredSurfaceBuilders.field_244183_o); + structures.forEach((structure) -> generationSettings.withStructure(structure)); + features.forEach((info) -> generationSettings.withFeature(info.featureStep, info.feature)); + if (defaultOres) DefaultBiomeFeatures.withCommonNetherBlocks(generationSettings); + if (defaultStructureFeatures) addDefaultStructures(generationSettings); + if (defaultFeatures) addDefaultFeatures(generationSettings); + + effects.withSkyColor(fogColor).setWaterColor(waterColor).setWaterFogColor(waterFogColor).setFogColor(fogColor); + if (loop != null) effects.setAmbientSound(loop); + if (mood != null) effects.setMoodSound(mood); + if (additions != null) effects.setAdditionsSound(additions); + if (particleConfig != null) effects.setParticle(particleConfig); + effects.setMusic(BackgroundMusicTracks.getDefaultBackgroundMusicSelector(music != null ? music : SoundEvents.MUSIC_NETHER_NETHER_WASTES)); + + return new Biome.Builder() + .precipitation(RainType.NONE) + .category(Category.NETHER) + .depth(0.1F) + .scale(0.2F) + .temperature(2.0F) + .downfall(0.0F) + .setEffects(effects.build()) + .withMobSpawnSettings(spawnSettings.copy()) + .withGenerationSettings(generationSettings.build()) + .build(); + } + + private void addDefaultStructures(BiomeGenerationSettings.Builder generationSettings) { + generationSettings.withStructure(StructureFeatures.RUINED_PORTAL_NETHER); + generationSettings.withStructure(StructureFeatures.FORTRESS); + generationSettings.withStructure(StructureFeatures.BASTION_REMNANT); + generationSettings.withCarver(GenerationStage.Carving.AIR, ConfiguredCarvers.field_243772_f); + generationSettings.withFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SPRING_LAVA); + } + + private void addDefaultFeatures(BiomeGenerationSettings.Builder generationSettings) { + generationSettings.withFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.SPRING_OPEN); + generationSettings.withFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.PATCH_FIRE); + generationSettings.withFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.PATCH_SOUL_FIRE); + generationSettings.withFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.GLOWSTONE_EXTRA); + generationSettings.withFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.GLOWSTONE); + generationSettings.withFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.BROWN_MUSHROOM_NETHER); + generationSettings.withFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.RED_MUSHROOM_NETHER); + generationSettings.withFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.ORE_MAGMA); + generationSettings.withFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.SPRING_CLOSED); + } + + private void addDefaultMobs(MobSpawnInfo.Builder spawnSettings) { + spawnSettings.withSpawner(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.GHAST, 50, 4, 4)); + spawnSettings.withSpawner(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIFIED_PIGLIN, 100, 4, 4)); + spawnSettings.withSpawner(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.MAGMA_CUBE, 2, 4, 4)); + spawnSettings.withSpawner(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 1, 4, 4)); + spawnSettings.withSpawner(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.PIGLIN, 15, 4, 4)); + spawnSettings.withSpawner(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.STRIDER, 60, 1, 2)); + } + + private static final class SpawnInfo { + EntityType type; + int weight; + int minGroupSize; + int maxGroupSize; + } + + private static final class FeatureInfo { + GenerationStage.Decoration featureStep; + ConfiguredFeature feature; + } + + public ResourceLocation getID() { + return id; + } + + public boolean hasStalactites() { + return stalactites; + } + + public boolean hasBNStructures() { + return bnStructures; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/biomes/CrimsonGlowingWoods.java b/src/main/java/redd90/betternether/biomes/CrimsonGlowingWoods.java new file mode 100644 index 0000000..4777895 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/CrimsonGlowingWoods.java @@ -0,0 +1,53 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.ParticleEffectAmbience; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.noise.OpenSimplexNoise; +import redd90.betternether.registry.EntityRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureCrimsonFungus; +import redd90.betternether.structures.plants.StructureCrimsonGlowingTree; +import redd90.betternether.structures.plants.StructureCrimsonRoots; +import redd90.betternether.structures.plants.StructureGoldenVine; +import redd90.betternether.structures.plants.StructureWallMoss; +import redd90.betternether.structures.plants.StructureWallRedMushroom; +import redd90.betternether.structures.plants.StructureWartBush; +import redd90.betternether.structures.plants.StructureWartSeed; + +public class CrimsonGlowingWoods extends NetherBiome { + private static final OpenSimplexNoise TERRAIN = new OpenSimplexNoise(614); + + public CrimsonGlowingWoods(String name) { + super(new BiomeDefinition(name) + .setFogColor(51, 3, 3) + .setLoop(SoundEvents.AMBIENT_CRIMSON_FOREST_LOOP) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setParticleConfig(new ParticleEffectAmbience(ParticleTypes.CRIMSON_SPORE, 0.025F)) + .addMobSpawn(EntityRegistry.FLYING_PIG, 20, 2, 4)); + addStructure("crimson_glowing_tree", new StructureCrimsonGlowingTree(), StructureType.FLOOR, 0.2F, false); + addStructure("wart_bush", new StructureWartBush(), StructureType.FLOOR, 0.05F, false); + addStructure("wart_seed", new StructureWartSeed(), StructureType.FLOOR, 0.02F, true); + addStructure("crimson_fungus", new StructureCrimsonFungus(), StructureType.FLOOR, 0.05F, true); + addStructure("crimson_roots", new StructureCrimsonRoots(), StructureType.FLOOR, 0.2F, true); + addStructure("golden_vine", new StructureGoldenVine(), StructureType.CEIL, 0.3F, true); + addStructure("wall_moss", new StructureWallMoss(), StructureType.WALL, 0.8F, true); + addStructure("wall_red_mushroom", new StructureWallRedMushroom(), StructureType.WALL, 0.4F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + if (TERRAIN.eval(pos.getX() * 0.1, pos.getZ() * 0.1) > MHelper.randRange(0.5F, 0.7F, random)) + BlocksHelper.setWithoutUpdate(world, pos, Blocks.NETHER_WART_BLOCK.getDefaultState()); + else + BlocksHelper.setWithoutUpdate(world, pos, Blocks.CRIMSON_NYLIUM.getDefaultState()); + } +} diff --git a/src/main/java/redd90/betternether/biomes/CrimsonPinewood.java b/src/main/java/redd90/betternether/biomes/CrimsonPinewood.java new file mode 100644 index 0000000..dab2ef0 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/CrimsonPinewood.java @@ -0,0 +1,53 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.ParticleEffectAmbience; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.noise.OpenSimplexNoise; +import redd90.betternether.registry.EntityRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureCrimsonFungus; +import redd90.betternether.structures.plants.StructureCrimsonPinewood; +import redd90.betternether.structures.plants.StructureCrimsonRoots; +import redd90.betternether.structures.plants.StructureGoldenVine; +import redd90.betternether.structures.plants.StructureWallMoss; +import redd90.betternether.structures.plants.StructureWallRedMushroom; +import redd90.betternether.structures.plants.StructureWartBush; +import redd90.betternether.structures.plants.StructureWartSeed; + +public class CrimsonPinewood extends NetherBiome { + private static final OpenSimplexNoise TERRAIN = new OpenSimplexNoise(614); + + public CrimsonPinewood(String name) { + super(new BiomeDefinition(name) + .setFogColor(51, 3, 3) + .setLoop(SoundEvents.AMBIENT_CRIMSON_FOREST_LOOP) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setParticleConfig(new ParticleEffectAmbience(ParticleTypes.CRIMSON_SPORE, 0.025F)) + .addMobSpawn(EntityRegistry.FLYING_PIG, 20, 2, 4)); + addStructure("crimson_pinewood", new StructureCrimsonPinewood(), StructureType.FLOOR, 0.2F, false); + addStructure("wart_bush", new StructureWartBush(), StructureType.FLOOR, 0.1F, false); + addStructure("wart_seed", new StructureWartSeed(), StructureType.FLOOR, 0.05F, true); + addStructure("crimson_fungus", new StructureCrimsonFungus(), StructureType.FLOOR, 0.05F, true); + addStructure("crimson_roots", new StructureCrimsonRoots(), StructureType.FLOOR, 0.2F, true); + addStructure("golden_vine", new StructureGoldenVine(), StructureType.CEIL, 0.3F, true); + addStructure("wall_moss", new StructureWallMoss(), StructureType.WALL, 0.8F, true); + addStructure("wall_red_mushroom", new StructureWallRedMushroom(), StructureType.WALL, 0.4F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + if (TERRAIN.eval(pos.getX() * 0.1, pos.getZ() * 0.1) > MHelper.randRange(0.5F, 0.7F, random)) + BlocksHelper.setWithoutUpdate(world, pos, Blocks.NETHER_WART_BLOCK.getDefaultState()); + else + BlocksHelper.setWithoutUpdate(world, pos, Blocks.CRIMSON_NYLIUM.getDefaultState()); + } +} diff --git a/src/main/java/redd90/betternether/biomes/FloodedDeltas.java b/src/main/java/redd90/betternether/biomes/FloodedDeltas.java new file mode 100644 index 0000000..6e4c090 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/FloodedDeltas.java @@ -0,0 +1,67 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.ParticleEffectAmbience; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.structures.StructureType; + +public class FloodedDeltas extends NetherBiome { + private static final Mutable POS = new Mutable(); + + public FloodedDeltas(String name) { + super(new BiomeDefinition(name) + .setFogColor(104, 95, 112) + .setLoop(SoundEvents.AMBIENT_BASALT_DELTAS_LOOP) + .setAdditions(SoundEvents.AMBIENT_BASALT_DELTAS_ADDITIONS) + .setMood(SoundEvents.AMBIENT_BASALT_DELTAS_MOOD) + .setMusic(SoundEvents.MUSIC_NETHER_BASALT_DELTAS) + .setStalactites(false) + .setParticleConfig(new ParticleEffectAmbience(ParticleTypes.WHITE_ASH, 0.12F))); + + addStructure("blackstone_stalactite", STALACTITE_BLACKSTONE, StructureType.FLOOR, 0.2F, true); + addStructure("stalactite_stalactite", STALACTITE_BASALT, StructureType.FLOOR, 0.2F, true); + + addStructure("blackstone_stalagmite", STALAGMITE_BLACKSTONE, StructureType.CEIL, 0.1F, true); + addStructure("basalt_stalagmite", STALAGMITE_BASALT, StructureType.CEIL, 0.1F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + POS.setPos(pos); + int d = MHelper.randRange(2, 4, random); + BlockState state = isLavaValid(world, pos) ? Blocks.LAVA.getDefaultState() : (random.nextInt(16) > 0 ? Blocks.BASALT.getDefaultState() : Blocks.AIR.getDefaultState()); + BlocksHelper.setWithoutUpdate(world, POS, state); + if (state.getBlock() == Blocks.LAVA) + world.getChunk(pos.getX() >> 4, pos.getZ() >> 4).markBlockForPostprocessing(POS.setPos(pos.getX() & 15, pos.getY(), pos.getZ() & 15)); + POS.setPos(pos); + for (int h = 1; h < d; h++) { + POS.setY(pos.getY() - h); + if (BlocksHelper.isNetherGround(world.getBlockState(POS))) + BlocksHelper.setWithoutUpdate(world, POS, Blocks.BASALT.getDefaultState()); + else + break; + } + } + + protected boolean isLavaValid(IWorld world, BlockPos pos) { + return validWall(world, pos.down()) && + validWall(world, pos.north()) && + validWall(world, pos.south()) && + validWall(world, pos.east()) && + validWall(world, pos.west()); + } + + protected boolean validWall(IWorld world, BlockPos pos) { + BlockState state = world.getBlockState(pos); + return BlocksHelper.isLava(state) || state.hasOpaqueCollisionShape(world, pos); + } +} diff --git a/src/main/java/redd90/betternether/biomes/NetherBiome.java b/src/main/java/redd90/betternether/biomes/NetherBiome.java new file mode 100644 index 0000000..53132c7 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherBiome.java @@ -0,0 +1,421 @@ +package redd90.betternether.biomes; + +import java.util.ArrayList; +import java.util.List; +import java.util.Locale; +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.Biome; +import net.minecraftforge.registries.ForgeRegistryEntry; +import redd90.betternether.config.Configs; +import redd90.betternether.noise.OpenSimplexNoise; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.EntityRegistry; +import redd90.betternether.structures.IStructure; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.StructureWorld; +import redd90.betternether.structures.decorations.StructureStalactite; +import redd90.betternether.structures.decorations.StructureStalagmite; +import redd90.betternether.structures.plants.StructureWartCap; + +public class NetherBiome extends ForgeRegistryEntry { + private static final OpenSimplexNoise SCATTER = new OpenSimplexNoise(1337); + private static int structureID = 0; + + private ArrayList generatorsFloor = new ArrayList(); + private ArrayList generatorsWall = new ArrayList(); + private ArrayList generatorsCeil = new ArrayList(); + private ArrayList generatorsLava = new ArrayList(); + + private ArrayList buildGeneratorsFloor = new ArrayList(); + private ArrayList buildGeneratorsCeil = new ArrayList(); + private ArrayList buildGeneratorsLava = new ArrayList(); + private ArrayList buildGeneratorsUnder = new ArrayList(); + + protected final ResourceLocation mcID; + protected final Biome biome; + + protected float maxSubBiomeChance = 1; + protected float plantDensity = 1.0001F; + protected float noiseDensity = 0.3F; + protected float genChance = 1; + protected float edgeSize; + + protected List subbiomes; + protected NetherBiome biomeParent; + protected NetherBiome edge; + + private static final String[] DEF_STRUCTURES = new String[] { + structureFormat("altar_01", -2, StructureType.FLOOR, 1), + structureFormat("altar_02", -4, StructureType.FLOOR, 1), + structureFormat("altar_03", -3, StructureType.FLOOR, 1), + structureFormat("altar_04", -3, StructureType.FLOOR, 1), + structureFormat("altar_05", -2, StructureType.FLOOR, 1), + structureFormat("altar_06", -2, StructureType.FLOOR, 1), + structureFormat("altar_07", -2, StructureType.FLOOR, 1), + structureFormat("altar_08", -2, StructureType.FLOOR, 1), + structureFormat("portal_01", -4, StructureType.FLOOR, 1), + structureFormat("portal_02", -3, StructureType.FLOOR, 1), + structureFormat("garden_01", -3, StructureType.FLOOR, 1), + structureFormat("garden_02", -2, StructureType.FLOOR, 1), + structureFormat("pillar_01", -1, StructureType.FLOOR, 1), + structureFormat("pillar_02", -1, StructureType.FLOOR, 1), + structureFormat("pillar_03", -1, StructureType.FLOOR, 1), + structureFormat("pillar_04", -1, StructureType.FLOOR, 1), + structureFormat("pillar_05", -1, StructureType.FLOOR, 1), + structureFormat("pillar_06", -1, StructureType.FLOOR, 1), + structureFormat("respawn_point_01", -3, StructureType.FLOOR, 1), + structureFormat("respawn_point_02", -2, StructureType.FLOOR, 1), + structureFormat("respawn_point_03", -3, StructureType.FLOOR, 1), + structureFormat("respawn_point_04", -2, StructureType.FLOOR, 1), + structureFormat("spawn_altar_ladder", -5, StructureType.FLOOR, 1), + + structureFormat("ghast_hive", -20, StructureType.CEIL, 1F), + + structureFormat("lava/pyramid_1", -1, StructureType.LAVA, 1F), + structureFormat("lava/pyramid_2", -1, StructureType.LAVA, 1F), + structureFormat("lava/pyramid_3", -1, StructureType.LAVA, 1F), + structureFormat("lava/pyramid_4", -1, StructureType.LAVA, 1F) + }; + + private ArrayList structures; + private Biome actualBiome; + + protected static final StructureStalagmite STALACTITE_NETHERRACK = new StructureStalagmite(BlocksRegistry.NETHERRACK_STALACTITE, null); + protected static final StructureStalagmite STALACTITE_GLOWSTONE = new StructureStalagmite(BlocksRegistry.GLOWSTONE_STALACTITE, Blocks.GLOWSTONE); + protected static final StructureStalagmite STALACTITE_BLACKSTONE = new StructureStalagmite(BlocksRegistry.BLACKSTONE_STALACTITE, Blocks.BLACKSTONE, Blocks.BLACKSTONE, Blocks.NETHERRACK); + protected static final StructureStalagmite STALACTITE_BASALT = new StructureStalagmite(BlocksRegistry.BASALT_STALACTITE, Blocks.BASALT, Blocks.BASALT, Blocks.NETHERRACK); + + protected static final StructureStalactite STALAGMITE_NETHERRACK = new StructureStalactite(BlocksRegistry.NETHERRACK_STALACTITE, null); + protected static final StructureStalactite STALAGMITE_GLOWSTONE = new StructureStalactite(BlocksRegistry.GLOWSTONE_STALACTITE, Blocks.GLOWSTONE); + protected static final StructureStalactite STALAGMITE_BLACKSTONE = new StructureStalactite(BlocksRegistry.BLACKSTONE_STALACTITE, Blocks.BLACKSTONE, Blocks.BLACKSTONE, Blocks.NETHERRACK); + protected static final StructureStalactite STALAGMITE_BASALT = new StructureStalactite(BlocksRegistry.BASALT_STALACTITE, Blocks.BASALT, Blocks.BASALT, Blocks.NETHERRACK); + + public NetherBiome(BiomeDefinition definition) { + //definition.addMobSpawn(EntityRegistry.FIREFLY, 5, 2, 6); + definition.addMobSpawn(EntityRegistry.SKULL, 2, 2, 4); + definition.addMobSpawn(EntityRegistry.NAGA, 20, 2, 4); + definition.addMobSpawn(EntityRegistry.HYDROGEN_JELLYFISH, 5, 2, 5); + + biome = definition.build(); + mcID = definition.getID(); + + subbiomes = new ArrayList(); + addStructure("cap_gen", new StructureWartCap(), StructureType.WALL, 0.8F, true); + subbiomes.add(new Subbiome(this, 1)); + + structures = new ArrayList(DEF_STRUCTURES.length); + if (definition.hasBNStructures()) { + for (String s : DEF_STRUCTURES) + structures.add(s); + } + + if (definition.hasStalactites()) { + addStructure("netherrack_stalactite", STALACTITE_NETHERRACK, StructureType.FLOOR, 0.05F, true); + addStructure("glowstone_stalactite", STALACTITE_GLOWSTONE, StructureType.FLOOR, 0.01F, true); + + addStructure("netherrack_stalagmite", STALAGMITE_NETHERRACK, StructureType.CEIL, 0.01F, true); + addStructure("glowstone_stalagmite", STALAGMITE_GLOWSTONE, StructureType.CEIL, 0.005F, true); + } + } + + public void setPlantDensity(float density) { + this.plantDensity = density * 1.0001F; + } + + public float getPlantDensity() { + return plantDensity; + } + + public void setNoiseDensity(float density) { + this.noiseDensity = 1 - density * 2; + } + + public float getNoiseDensity() { + return (1F - this.noiseDensity) / 2F; + } + + private String getGroup() { + return "generator.biome." + mcID.getNamespace() + "." + getRegistryName(); + } + + public void build() { + String group = getGroup(); + String[] structAll = Configs.BIOMES.getStringArray(group, "schematics", structures.toArray(new String[] {})); + for (String struct : structAll) { + structureFromString(struct); + } + setNoiseDensity(Configs.BIOMES.getFloat(group, "noise_density", getNoiseDensity())); + } + + public void genSurfColumn(IWorld world, BlockPos pos, Random random) {} + + public void genFloorObjects(IServerWorld world, BlockPos pos, Random random) { + for (StructureInfo info : generatorsFloor) + if (info.canGenerate(random, pos)) + info.structure.generate(world, pos, random); + } + + public void genWallObjects(IServerWorld world, BlockPos pos, Random random) { + for (StructureInfo info : generatorsWall) + if (info.canGenerate(random, pos)) + info.structure.generate(world, pos, random); + } + + public void genCeilObjects(IServerWorld world, BlockPos pos, Random random) { + for (StructureInfo info : generatorsCeil) + if (info.canGenerate(random, pos)) + info.structure.generate(world, pos, random); + } + + public void genLavaObjects(IServerWorld world, BlockPos pos, Random random) { + for (StructureInfo info : generatorsLava) + if (info.canGenerate(random, pos)) + info.structure.generate(world, pos, random); + } + + protected static double getFeatureNoise(BlockPos pos, int id) { + return SCATTER.eval(pos.getX() * 0.1, pos.getY() * 0.1 + id * 10, pos.getZ() * 0.1); + } + + public String getRawBiomeRegistryName() { + return mcID.getPath(); + } + + public NetherBiome getEdge() { + return edge; + } + + public void setEdge(NetherBiome edge) { + this.edge = edge; + edge.biomeParent = this; + } + + public float getEdgeSize() { + return edgeSize; + } + + public void setEdgeSize(float size) { + edgeSize = size; + } + + public void addSubBiome(NetherBiome biome, float chance) { + maxSubBiomeChance += chance; + biome.biomeParent = this; + subbiomes.add(new Subbiome(biome, maxSubBiomeChance)); + } + + public NetherBiome getSubBiome(Random random) { + float chance = random.nextFloat() * maxSubBiomeChance; + for (Subbiome biome : subbiomes) + if (biome.canGenerate(chance)) + return biome.biome; + return this; + } + + public NetherBiome getParentBiome() { + return this.biomeParent; + } + + public boolean hasEdge() { + return edge != null; + } + + public boolean hasParentBiome() { + return biomeParent != null; + } + + public boolean isSame(NetherBiome biome) { + return biome == this || (biome.hasParentBiome() && biome.getParentBiome() == this); + } + + protected void addStructure(String name, IStructure structure, StructureType type, float density, boolean useNoise) { + String group = getGroup() + ".procedural." + type.getName() + "." + name; + float dens = Configs.BIOMES.getFloat(group, "density", density); + boolean limit = Configs.BIOMES.getBoolean(group, "limit", useNoise); + this.addStructure(structure, type, dens, limit); + } + + private void addStructure(IStructure structure, StructureType type, float density, boolean useNoise) { + switch (type) { + case CEIL: + generatorsCeil.add(new StructureInfo(structure, density, useNoise)); + break; + case FLOOR: + generatorsFloor.add(new StructureInfo(structure, density, useNoise)); + break; + case WALL: + generatorsWall.add(new StructureInfo(structure, density, useNoise)); + break; + default: + break; + } + } + + protected void addWorldStructures(String... structures) { + for (String s : structures) + this.structures.add(s); + } + + protected class StructureInfo { + final IStructure structure; + final float density; + final boolean useNoise; + final int id; + + StructureInfo(IStructure structure, float density, boolean useNoise) { + this.structure = structure; + this.density = density; + this.useNoise = useNoise; + id = structureID++; + } + + boolean canGenerate(Random random, BlockPos pos) { + return (!useNoise || getFeatureNoise(pos, id) > noiseDensity) && random.nextFloat() < density; + } + } + + protected class Subbiome { + NetherBiome biome; + float chance; + + Subbiome(NetherBiome biome, float chance) { + this.biome = biome; + this.chance = chance; + } + + public boolean canGenerate(float chance) { + return chance < this.chance; + } + } + + public boolean canGenerate(float chance) { + return chance <= this.genChance; + } + + public void setGenChance(float chance) { + this.genChance = chance; + } + + protected static String structureFormat(String name, int offset, StructureType type, float chance) { + return String.format(Locale.ROOT, "name: %s; offset: %d; type: %s; chance: %f", name, offset, type.getName(), chance); + } + + public void genFloorBuildings(IServerWorld world, BlockPos pos, Random random) { + chancedStructure(world, pos, random, buildGeneratorsFloor); + } + + public void genCeilBuildings(IServerWorld world, BlockPos pos, Random random) { + chancedStructure(world, pos, random, buildGeneratorsCeil); + } + + public void genLavaBuildings(IServerWorld world, BlockPos pos, Random random) { + chancedStructure(world, pos, random, buildGeneratorsLava); + } + + public void genUnderBuildings(IServerWorld world, BlockPos pos, Random random) { + chancedStructure(world, pos, random, buildGeneratorsUnder); + } + + private void chancedStructure(IServerWorld world, BlockPos pos, Random random, List infoList) { + float chance = getLastChance(infoList); + if (chance > 0) { + float rnd = random.nextFloat() * chance; + for (StructureInfo info : infoList) + if (rnd <= info.density) { + info.structure.generate(world, pos, random); + return; + } + } + } + + private void structureFromString(String structureString) { + String[] args = structureString.split(";"); + + String name = ""; + int offset = 0; + StructureType type = StructureType.FLOOR; + float chance = 0; + + for (String a : args) { + if (a.contains("name:")) { + name = a.replace("name:", "").trim(); + } + else if (a.contains("offset:")) { + offset = Integer.parseInt(a.replace("offset:", "").trim()); + } + else if (a.contains("type:")) { + type = StructureType.fromString(a); + } + else if (a.contains("chance:")) { + chance = Float.parseFloat(a.replace("chance:", "").trim()); + } + } + + if (!name.isEmpty()) { + StructureWorld structure = new StructureWorld(name, offset, type); + if (structure.loaded()) { + List infoList = null; + switch (structure.getType()) { + case CEIL: + infoList = buildGeneratorsCeil; + break; + case FLOOR: + infoList = buildGeneratorsFloor; + break; + case LAVA: + infoList = buildGeneratorsLava; + break; + case UNDER: + infoList = buildGeneratorsUnder; + break; + default: + break; + } + + chance += getLastChance(infoList); + StructureInfo info = new StructureInfo(structure, chance, false); + infoList.add(info); + } + } + } + + private float getLastChance(List info) { + int size = info.size(); + return size > 0 ? info.get(size - 1).density : 0; + } + + public Biome getBiome() { + return biome; + } + + public boolean hasCeilStructures() { + return !buildGeneratorsCeil.isEmpty(); + } + + public String getNamespace() { + return mcID.getNamespace(); + } + + @Override + public String toString() { + return mcID.toString(); + } + + public ResourceLocation getID() { + return mcID; + } + + public Biome getActualBiome() { + return actualBiome; + } + + public void setActualBiome(Biome actualBiome) { + this.actualBiome = actualBiome; + } +} diff --git a/src/main/java/redd90/betternether/biomes/NetherBiomeWrapper.java b/src/main/java/redd90/betternether/biomes/NetherBiomeWrapper.java new file mode 100644 index 0000000..a7015a8 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherBiomeWrapper.java @@ -0,0 +1,37 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.Biome; +import net.minecraftforge.registries.ForgeRegistries; +import redd90.betternether.structures.StructureType; + +public class NetherBiomeWrapper extends NetherBiome { + final Biome biome; + + public NetherBiomeWrapper(ResourceLocation id) { + super(new BiomeDefinition(id)); + this.biome = ForgeRegistries.BIOMES.getValue(id); + + if (id.getPath().equals("basalt_deltas")) { + addStructure("blackstone_stalactite", STALACTITE_BLACKSTONE, StructureType.FLOOR, 0.2F, true); + addStructure("stalactite_stalactite", STALACTITE_BASALT, StructureType.FLOOR, 0.2F, true); + + addStructure("blackstone_stalagmite", STALAGMITE_BLACKSTONE, StructureType.CEIL, 0.1F, true); + addStructure("basalt_stalagmite", STALAGMITE_BASALT, StructureType.CEIL, 0.1F, true); + } + } + + public NetherBiomeWrapper(ResourceLocation id, Biome biome) { + super(new BiomeDefinition(id)); + this.biome = biome; + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + //BlocksHelper.setWithoutUpdate(world, pos, biome.getGenerationSettings().getSurfaceConfig().getTopMaterial()); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/biomes/NetherBoneReef.java b/src/main/java/redd90/betternether/biomes/NetherBoneReef.java new file mode 100644 index 0000000..1e63459 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherBoneReef.java @@ -0,0 +1,49 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.ParticleEffectAmbience; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.decorations.StructureStalactite; +import redd90.betternether.structures.decorations.StructureStalagmite; +import redd90.betternether.structures.plants.StructureBoneGrass; +import redd90.betternether.structures.plants.StructureBoneReef; +import redd90.betternether.structures.plants.StructureFeatherFern; +import redd90.betternether.structures.plants.StructureJellyfishMushroom; +import redd90.betternether.structures.plants.StructureLumabusVine; +import redd90.betternether.structures.plants.StructureReeds; + +public class NetherBoneReef extends NetherBiome { + public NetherBoneReef(String name) { + super(new BiomeDefinition(name) + .setFogColor(47, 221, 202) + .setLoop(SoundEvents.AMBIENT_CRIMSON_FOREST_LOOP) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setStalactites(false) + .setParticleConfig(new ParticleEffectAmbience(ParticleTypes.WARPED_SPORE, 0.01F))); + + addStructure("bone_stalactite", new StructureStalagmite(BlocksRegistry.BONE_STALACTITE, BlocksRegistry.BONE_BLOCK), StructureType.FLOOR, 0.05F, true); + + addStructure("nether_reed", new StructureReeds(), StructureType.FLOOR, 0.5F, false); + addStructure("bone_reef", new StructureBoneReef(), StructureType.FLOOR, 0.2F, true); + addStructure("jellyfish_mushroom", new StructureJellyfishMushroom(), StructureType.FLOOR, 0.02F, true); + addStructure("feather_fern", new StructureFeatherFern(), StructureType.FLOOR, 0.05F, true); + addStructure("bone_grass", new StructureBoneGrass(), StructureType.FLOOR, 0.1F, false); + + addStructure("bone_stalagmite", new StructureStalactite(BlocksRegistry.BONE_STALACTITE, BlocksRegistry.BONE_BLOCK), StructureType.CEIL, 0.05F, true); + + addStructure("lumabus_vine", new StructureLumabusVine(), StructureType.CEIL, 0.3F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.MUSHROOM_GRASS.getDefaultState()); + } +} diff --git a/src/main/java/redd90/betternether/biomes/NetherGrasslands.java b/src/main/java/redd90/betternether/biomes/NetherGrasslands.java new file mode 100644 index 0000000..8f585a7 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherGrasslands.java @@ -0,0 +1,67 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureBlackApple; +import redd90.betternether.structures.plants.StructureBlackBush; +import redd90.betternether.structures.plants.StructureInkBush; +import redd90.betternether.structures.plants.StructureMagmaFlower; +import redd90.betternether.structures.plants.StructureNetherGrass; +import redd90.betternether.structures.plants.StructureNetherWart; +import redd90.betternether.structures.plants.StructureReeds; +import redd90.betternether.structures.plants.StructureSmoker; +import redd90.betternether.structures.plants.StructureWallBrownMushroom; +import redd90.betternether.structures.plants.StructureWallMoss; +import redd90.betternether.structures.plants.StructureWallRedMushroom; +import redd90.betternether.structures.plants.StructureWartSeed; + +public class NetherGrasslands extends NetherBiome { + public NetherGrasslands(String name) { + super(new BiomeDefinition(name) + .setFogColor(113, 73, 133) + .setLoop(SoundEvents.AMBIENT_CRIMSON_FOREST_LOOP) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD)); + addStructure("nether_reed", new StructureReeds(), StructureType.FLOOR, 0.5F, false); + addStructure("nether_wart", new StructureNetherWart(), StructureType.FLOOR, 0.05F, true); + addStructure("magma_flower", new StructureMagmaFlower(), StructureType.FLOOR, 0.5F, true); + addStructure("smoker", new StructureSmoker(), StructureType.FLOOR, 0.05F, true); + addStructure("ink_bush", new StructureInkBush(), StructureType.FLOOR, 0.05F, true); + addStructure("black_apple", new StructureBlackApple(), StructureType.FLOOR, 0.01F, true); + addStructure("black_bush", new StructureBlackBush(), StructureType.FLOOR, 0.02F, true); + addStructure("wart_seed", new StructureWartSeed(), StructureType.FLOOR, 0.02F, true); + addStructure("nether_grass", new StructureNetherGrass(), StructureType.FLOOR, 0.4F, true); + addStructure("wall_moss", new StructureWallMoss(), StructureType.WALL, 0.8F, true); + addStructure("wall_red_mushroom", new StructureWallRedMushroom(), StructureType.WALL, 0.8F, true); + addStructure("wall_brown_mushroom", new StructureWallBrownMushroom(), StructureType.WALL, 0.8F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + switch (random.nextInt(3)) { + case 0: + BlocksHelper.setWithoutUpdate(world, pos, Blocks.SOUL_SOIL.getDefaultState()); + break; + case 1: + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.NETHERRACK_MOSS.getDefaultState()); + break; + default: + super.genSurfColumn(world, pos, random); + break; + } + for (int i = 1; i < random.nextInt(3); i++) { + BlockPos down = pos.down(i); + if (random.nextInt(3) == 0 && BlocksHelper.isNetherGround(world.getBlockState(down))) { + BlocksHelper.setWithoutUpdate(world, down, Blocks.SOUL_SAND.getDefaultState()); + } + } + } +} + diff --git a/src/main/java/redd90/betternether/biomes/NetherGravelDesert.java b/src/main/java/redd90/betternether/biomes/NetherGravelDesert.java new file mode 100644 index 0000000..caf3412 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherGravelDesert.java @@ -0,0 +1,45 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.ParticleEffectAmbience; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.SoundsRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureAgave; +import redd90.betternether.structures.plants.StructureBarrelCactus; +import redd90.betternether.structures.plants.StructureNetherCactus; + +public class NetherGravelDesert extends NetherBiome { + public NetherGravelDesert(String name) { + super(new BiomeDefinition(name) + .setFogColor(170, 48, 0) + .setLoop(SoundsRegistry.AMBIENT_GRAVEL_DESERT) + .setMood(SoundEvents.AMBIENT_NETHER_WASTES_MOOD) + .setAdditions(SoundEvents.AMBIENT_NETHER_WASTES_ADDITIONS) + .setMusic(SoundEvents.MUSIC_NETHER_NETHER_WASTES) + .setParticleConfig(new ParticleEffectAmbience(ParticleTypes.ASH, 0.02F))); + addStructure("nether_cactus", new StructureNetherCactus(), StructureType.FLOOR, 0.02F, true); + addStructure("agave", new StructureAgave(), StructureType.FLOOR, 0.02F, true); + addStructure("barrel_cactus", new StructureBarrelCactus(), StructureType.FLOOR, 0.02F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + for (int i = 0; i < 1 + random.nextInt(3); i++) { + BlockPos p2 = pos.down(i); + if (BlocksHelper.isNetherGround(world.getBlockState(p2))) + if (world.isAirBlock(p2.down())) { + BlocksHelper.setWithoutUpdate(world, p2, Blocks.NETHERRACK.getDefaultState()); + return; + } + else + BlocksHelper.setWithoutUpdate(world, p2, Blocks.GRAVEL.getDefaultState()); + } + } +} diff --git a/src/main/java/redd90/betternether/biomes/NetherJungle.java b/src/main/java/redd90/betternether/biomes/NetherJungle.java new file mode 100644 index 0000000..db6bde1 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherJungle.java @@ -0,0 +1,75 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.EntityRegistry; +import redd90.betternether.registry.SoundsRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureBlackVine; +import redd90.betternether.structures.plants.StructureBloomingVine; +import redd90.betternether.structures.plants.StructureEggPlant; +import redd90.betternether.structures.plants.StructureEye; +import redd90.betternether.structures.plants.StructureFeatherFern; +import redd90.betternether.structures.plants.StructureGoldenVine; +import redd90.betternether.structures.plants.StructureJellyfishMushroom; +import redd90.betternether.structures.plants.StructureJungleMoss; +import redd90.betternether.structures.plants.StructureJunglePlant; +import redd90.betternether.structures.plants.StructureLucis; +import redd90.betternether.structures.plants.StructureMagmaFlower; +import redd90.betternether.structures.plants.StructureReeds; +import redd90.betternether.structures.plants.StructureRubeus; +import redd90.betternether.structures.plants.StructureRubeusBush; +import redd90.betternether.structures.plants.StructureStalagnate; +import redd90.betternether.structures.plants.StructureWallBrownMushroom; +import redd90.betternether.structures.plants.StructureWallMoss; +import redd90.betternether.structures.plants.StructureWallRedMushroom; + +public class NetherJungle extends NetherBiome { + public NetherJungle(String name) { + super(new BiomeDefinition(name) + .setFogColor(62, 169, 61) + .setLoop(SoundsRegistry.AMBIENT_NETHER_JUNGLE) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setDefaultMobs(false) + .addMobSpawn(EntityRegistry.JUNGLE_SKELETON, 40, 2, 4)); + addStructure("nether_reed", new StructureReeds(), StructureType.FLOOR, 0.5F, false); + addStructure("stalagnate", new StructureStalagnate(), StructureType.FLOOR, 0.2F, false); + addStructure("rubeus_tree", new StructureRubeus(), StructureType.FLOOR, 0.1F, false); + addStructure("bush_rubeus", new StructureRubeusBush(), StructureType.FLOOR, 0.1F, false); + addStructure("magma_flower", new StructureMagmaFlower(), StructureType.FLOOR, 0.5F, false); + addStructure("egg_plant", new StructureEggPlant(), StructureType.FLOOR, 0.05F, true); + addStructure("jellyfish_mushroom", new StructureJellyfishMushroom(), StructureType.FLOOR, 0.03F, true); + addStructure("feather_fern", new StructureFeatherFern(), StructureType.FLOOR, 0.05F, true); + addStructure("jungle_plant", new StructureJunglePlant(), StructureType.FLOOR, 0.1F, false); + addStructure("lucis", new StructureLucis(), StructureType.WALL, 0.1F, false); + addStructure("eye", new StructureEye(), StructureType.CEIL, 0.1F, true); + addStructure("black_vine", new StructureBlackVine(), StructureType.CEIL, 0.1F, true); + addStructure("golden_vine", new StructureGoldenVine(), StructureType.CEIL, 0.1F, true); + addStructure("flowered_vine", new StructureBloomingVine(), StructureType.CEIL, 0.1F, true); + addStructure("jungle_moss", new StructureJungleMoss(), StructureType.WALL, 0.8F, true); + addStructure("wall_moss", new StructureWallMoss(), StructureType.WALL, 0.2F, true); + addStructure("wall_red_mushroom", new StructureWallRedMushroom(), StructureType.WALL, 0.8F, true); + addStructure("wall_brown_mushroom", new StructureWallBrownMushroom(), StructureType.WALL, 0.8F, true); + + addWorldStructures(structureFormat("ruined_temple", -4, StructureType.FLOOR, 10F)); + addWorldStructures(structureFormat("jungle_temple_altar", -2, StructureType.FLOOR, 10F)); + addWorldStructures(structureFormat("jungle_temple_2", -2, StructureType.FLOOR, 10F)); + + addWorldStructures(structureFormat("jungle_bones_1", 0, StructureType.FLOOR, 20F)); + addWorldStructures(structureFormat("jungle_bones_2", 0, StructureType.FLOOR, 20F)); + addWorldStructures(structureFormat("jungle_bones_3", 0, StructureType.FLOOR, 20F)); + + this.setNoiseDensity(0.5F); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.JUNGLE_GRASS.getDefaultState()); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/biomes/NetherMagmaLand.java b/src/main/java/redd90/betternether/biomes/NetherMagmaLand.java new file mode 100644 index 0000000..2de82ee --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherMagmaLand.java @@ -0,0 +1,87 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.decorations.StructureCrystal; +import redd90.betternether.structures.decorations.StructureGeyser; +import redd90.betternether.structures.plants.StructureGoldenVine; +import redd90.betternether.structures.plants.StructureMagmaFlower; + +public class NetherMagmaLand extends NetherBiome { + private static final Mutable POS = new Mutable(); + private static final boolean[] MASK; + + public NetherMagmaLand(String name) { + super(new BiomeDefinition(name) + .setFogColor(248, 158, 68) + .setLoop(SoundEvents.AMBIENT_NETHER_WASTES_LOOP) + .setAdditions(SoundEvents.AMBIENT_NETHER_WASTES_ADDITIONS) + .setMood(SoundEvents.AMBIENT_NETHER_WASTES_MOOD)); + addStructure("geyser", new StructureGeyser(), StructureType.FLOOR, 0.1F, false); + addStructure("obsidian_crystals", new StructureCrystal(), StructureType.FLOOR, 0.04F, true); + addStructure("magma_flower", new StructureMagmaFlower(), StructureType.FLOOR, 0.4F, false); + addStructure("golden_vine", new StructureGoldenVine(), StructureType.CEIL, 0.2F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + if (isMask(pos.getX(), pos.getZ())) { + POS.setPos(pos); + boolean magma = true; + if (random.nextInt(4) == 0) { + if (validWall(world, POS.down()) && validWall(world, POS.north()) && validWall(world, POS.south()) && validWall(world, POS.east()) && validWall(world, POS.west())) { + BlocksHelper.setWithoutUpdate(world, POS, Blocks.LAVA.getDefaultState()); + magma = false; + } + } + if (magma) + for (int y = 0; y < random.nextInt(3) + 1; y++) { + POS.setY(pos.getY() - y); + if (BlocksHelper.isNetherGround(world.getBlockState(POS))) + BlocksHelper.setWithoutUpdate(world, POS, Blocks.MAGMA_BLOCK.getDefaultState()); + } + } + else + super.genSurfColumn(world, pos, random); + } + + protected boolean validWall(IWorld world, BlockPos pos) { + BlockState state = world.getBlockState(pos); + return BlocksHelper.isLava(state) || BlocksHelper.isNetherGroundMagma(state); + } + + protected boolean isMask(int x, int z) { + x &= 15; + z &= 15; + return MASK[(x << 4) | z]; + } + + static { + MASK = new boolean[] { + false, true, false, false, false, false, false, true, false, false, false, false, true, true, false, false, + false, false, false, false, false, false, false, true, false, false, false, false, true, true, false, false, + true, true, true, false, false, false, true, true, false, false, false, true, false, false, true, true, + true, false, false, true, true, true, true, false, true, true, true, true, false, false, false, true, + true, false, false, true, true, true, false, false, false, false, false, true, false, false, false, false, + true, false, false, false, true, false, false, false, false, false, false, false, true, false, false, false, + false, false, false, false, true, false, false, false, false, false, false, false, true, true, true, true, + true, false, false, false, true, true, true, true, false, false, false, true, true, false, true, true, + true, true, true, true, true, false, false, true, true, false, true, true, false, false, false, true, + false, false, true, false, false, false, false, false, true, true, true, false, false, false, false, true, + false, false, true, false, false, false, false, false, false, true, false, false, false, false, true, false, + false, false, true, true, false, false, false, false, false, true, false, false, false, false, true, false, + true, false, false, false, true, false, false, false, false, true, false, false, false, false, true, false, + true, true, false, false, true, false, false, false, true, true, true, true, true, true, false, true, + false, true, true, true, true, true, true, true, false, false, false, false, true, false, false, false, + false, true, true, false, false, false, true, false, false, false, false, false, true, true, false, false + }; + } +} diff --git a/src/main/java/redd90/betternether/biomes/NetherMushroomForest.java b/src/main/java/redd90/betternether/biomes/NetherMushroomForest.java new file mode 100644 index 0000000..5e8058b --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherMushroomForest.java @@ -0,0 +1,53 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.ParticleEffectAmbience; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.SoundsRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureGiantMold; +import redd90.betternether.structures.plants.StructureGrayMold; +import redd90.betternether.structures.plants.StructureLucis; +import redd90.betternether.structures.plants.StructureMedBrownMushroom; +import redd90.betternether.structures.plants.StructureMedRedMushroom; +import redd90.betternether.structures.plants.StructureMushroomFir; +import redd90.betternether.structures.plants.StructureOrangeMushroom; +import redd90.betternether.structures.plants.StructureRedMold; +import redd90.betternether.structures.plants.StructureVanillaMushroom; +import redd90.betternether.structures.plants.StructureWallBrownMushroom; +import redd90.betternether.structures.plants.StructureWallRedMushroom; + +public class NetherMushroomForest extends NetherBiome { + public NetherMushroomForest(String name) { + super(new BiomeDefinition(name) + .setFogColor(166, 38, 95) + .setLoop(SoundsRegistry.AMBIENT_MUSHROOM_FOREST) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setMusic(SoundEvents.MUSIC_NETHER_CRIMSON_FOREST) + .setParticleConfig(new ParticleEffectAmbience(ParticleTypes.MYCELIUM, 0.1F))); + this.setNoiseDensity(0.5F); + addStructure("large_red_mushroom", new StructureMedRedMushroom(), StructureType.FLOOR, 0.12F, true); + addStructure("large_brown_mushroom", new StructureMedBrownMushroom(), StructureType.FLOOR, 0.12F, true); + addStructure("giant_mold", new StructureGiantMold(), StructureType.FLOOR, 0.12F, true); + addStructure("mushroom_fir", new StructureMushroomFir(), StructureType.FLOOR, 0.2F, true); + addStructure("vanilla_mushrooms", new StructureVanillaMushroom(), StructureType.FLOOR, 0.1F, false); + addStructure("orange_mushroom", new StructureOrangeMushroom(), StructureType.FLOOR, 0.05F, true); + addStructure("red_mold", new StructureRedMold(), StructureType.FLOOR, 0.5F, true); + addStructure("gray_mold", new StructureGrayMold(), StructureType.FLOOR, 0.5F, true); + addStructure("lucis", new StructureLucis(), StructureType.WALL, 0.05F, false); + addStructure("wall_red_mushroom", new StructureWallRedMushroom(), StructureType.WALL, 0.8F, true); + addStructure("wall_brown_mushroom", new StructureWallBrownMushroom(), StructureType.WALL, 0.8F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.NETHER_MYCELIUM.getDefaultState()); + } +} diff --git a/src/main/java/redd90/betternether/biomes/NetherMushroomForestEdge.java b/src/main/java/redd90/betternether/biomes/NetherMushroomForestEdge.java new file mode 100644 index 0000000..642e06d --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherMushroomForestEdge.java @@ -0,0 +1,37 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureGrayMold; +import redd90.betternether.structures.plants.StructureOrangeMushroom; +import redd90.betternether.structures.plants.StructureRedMold; +import redd90.betternether.structures.plants.StructureVanillaMushroom; + +public class NetherMushroomForestEdge extends NetherBiome { + public NetherMushroomForestEdge(String name) { + super(new BiomeDefinition(name) + .setFogColor(200, 121, 157) + .setLoop(SoundEvents.AMBIENT_CRIMSON_FOREST_LOOP) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setMusic(SoundEvents.MUSIC_NETHER_CRIMSON_FOREST)); + addStructure("orange_mushroom", new StructureOrangeMushroom(), StructureType.FLOOR, 0.05F, true); + addStructure("vanilla_mushrooms", new StructureVanillaMushroom(), StructureType.FLOOR, 0.1F, false); + addStructure("red_mold", new StructureRedMold(), StructureType.FLOOR, 0.5F, false); + addStructure("gray_mold", new StructureGrayMold(), StructureType.FLOOR, 0.5F, false); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + if (random.nextInt(4) > 0) + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.NETHER_MYCELIUM.getDefaultState()); + else if (random.nextBoolean()) + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.NETHERRACK_MOSS.getDefaultState()); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/biomes/NetherPoorGrasslands.java b/src/main/java/redd90/betternether/biomes/NetherPoorGrasslands.java new file mode 100644 index 0000000..23e4df4 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherPoorGrasslands.java @@ -0,0 +1,60 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureBlackApple; +import redd90.betternether.structures.plants.StructureBlackBush; +import redd90.betternether.structures.plants.StructureInkBush; +import redd90.betternether.structures.plants.StructureMagmaFlower; +import redd90.betternether.structures.plants.StructureNetherGrass; +import redd90.betternether.structures.plants.StructureNetherWart; +import redd90.betternether.structures.plants.StructureReeds; +import redd90.betternether.structures.plants.StructureSmoker; +import redd90.betternether.structures.plants.StructureWartSeed; + +public class NetherPoorGrasslands extends NetherBiome { + public NetherPoorGrasslands(String name) { + super(new BiomeDefinition(name) + .setFogColor(113, 73, 133) + .setLoop(SoundEvents.AMBIENT_CRIMSON_FOREST_LOOP) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD)); + addStructure("nether_reed", new StructureReeds(), StructureType.FLOOR, 0.05F, false); + addStructure("nether_wart", new StructureNetherWart(), StructureType.FLOOR, 0.005F, true); + addStructure("magma_flower", new StructureMagmaFlower(), StructureType.FLOOR, 0.05F, true); + addStructure("smoker", new StructureSmoker(), StructureType.FLOOR, 0.005F, true); + addStructure("ink_bush", new StructureInkBush(), StructureType.FLOOR, 0.005F, true); + addStructure("black_apple", new StructureBlackApple(), StructureType.FLOOR, 0.001F, true); + addStructure("black_bush", new StructureBlackBush(), StructureType.FLOOR, 0.002F, true); + addStructure("wart_seed", new StructureWartSeed(), StructureType.FLOOR, 0.002F, true); + addStructure("nether_grass", new StructureNetherGrass(), StructureType.FLOOR, 0.04F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + switch (random.nextInt(3)) { + case 0: + BlocksHelper.setWithoutUpdate(world, pos, Blocks.SOUL_SOIL.getDefaultState()); + break; + case 1: + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.NETHERRACK_MOSS.getDefaultState()); + break; + default: + super.genSurfColumn(world, pos, random); + break; + } + for (int i = 1; i < random.nextInt(3); i++) { + BlockPos down = pos.down(i); + if (random.nextInt(3) == 0 && BlocksHelper.isNetherGround(world.getBlockState(down))) { + BlocksHelper.setWithoutUpdate(world, down, Blocks.SOUL_SAND.getDefaultState()); + } + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/biomes/NetherSoulPlain.java b/src/main/java/redd90/betternether/biomes/NetherSoulPlain.java new file mode 100644 index 0000000..d9d4a98 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherSoulPlain.java @@ -0,0 +1,63 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.ParticleEffectAmbience; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.BlockSoulSandstone; +import redd90.betternether.noise.OpenSimplexNoise; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureBlackBush; +import redd90.betternether.structures.plants.StructureSoulGrass; +import redd90.betternether.structures.plants.StructureSoulVein; + +public class NetherSoulPlain extends NetherBiome { + private static final OpenSimplexNoise TERRAIN = new OpenSimplexNoise(245); + private static final Mutable POS = new Mutable(); + + public NetherSoulPlain(String name) { + super(new BiomeDefinition(name) + .setFogColor(196, 113, 239) + .setLoop(SoundEvents.AMBIENT_CRIMSON_FOREST_LOOP) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setParticleConfig(new ParticleEffectAmbience(ParticleTypes.PORTAL, 0.02F))); + addStructure("soul_vein", new StructureSoulVein(), StructureType.FLOOR, 0.5F, true); + addStructure("black_bush", new StructureBlackBush(), StructureType.FLOOR, 0.02F, false); + addStructure("soul_grass", new StructureSoulGrass(), StructureType.FLOOR, 0.3F, false); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + POS.setPos(pos); + int d1 = MHelper.randRange(2, 4, random); + + for (int i = 0; i < d1; i++) { + POS.setY(pos.getY() - i); + if (BlocksHelper.isNetherGround(world.getBlockState(POS))) + if (TERRAIN.eval(pos.getX() * 0.1, pos.getY() * 0.1, pos.getZ() * 0.1) > 0) + BlocksHelper.setWithoutUpdate(world, POS, Blocks.SOUL_SOIL.getDefaultState()); + else + BlocksHelper.setWithoutUpdate(world, POS, Blocks.SOUL_SAND.getDefaultState()); + else + return; + } + + int d2 = MHelper.randRange(5, 7, random); + for (int i = d1; i < d2; i++) { + POS.setY(pos.getY() - i); + if (BlocksHelper.isNetherGround(world.getBlockState(POS))) + BlocksHelper.setWithoutUpdate(world, POS, BlocksRegistry.SOUL_SANDSTONE.getDefaultState().with(BlockSoulSandstone.UP, i == d1)); + else + return; + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/biomes/NetherSulfuricBoneReef.java b/src/main/java/redd90/betternether/biomes/NetherSulfuricBoneReef.java new file mode 100644 index 0000000..44fcded --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherSulfuricBoneReef.java @@ -0,0 +1,47 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.ParticleEffectAmbience; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.decorations.StructureStalactite; +import redd90.betternether.structures.decorations.StructureStalagmite; +import redd90.betternether.structures.plants.StructureBoneReef; +import redd90.betternether.structures.plants.StructureGoldenLumabusVine; +import redd90.betternether.structures.plants.StructureJellyfishMushroom; +import redd90.betternether.structures.plants.StructureReeds; +import redd90.betternether.structures.plants.StructureSepiaBoneGrass; + +public class NetherSulfuricBoneReef extends NetherBiome { + public NetherSulfuricBoneReef(String name) { + super(new BiomeDefinition(name) + .setFogColor(154, 144, 49) + .setLoop(SoundEvents.AMBIENT_CRIMSON_FOREST_LOOP) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setStalactites(false) + .setParticleConfig(new ParticleEffectAmbience(ParticleTypes.ASH, 0.01F))); + + addStructure("bone_stalactite", new StructureStalagmite(BlocksRegistry.BONE_STALACTITE, BlocksRegistry.BONE_BLOCK), StructureType.FLOOR, 0.05F, true); + + addStructure("nether_reed", new StructureReeds(), StructureType.FLOOR, 0.5F, false); + addStructure("bone_reef", new StructureBoneReef(), StructureType.FLOOR, 0.2F, true); + addStructure("jellyfish_mushroom", new StructureJellyfishMushroom(), StructureType.FLOOR, 0.02F, true); + addStructure("sulfuric_bone_grass", new StructureSepiaBoneGrass(), StructureType.FLOOR, 0.1F, false); + + addStructure("bone_stalagmite", new StructureStalactite(BlocksRegistry.BONE_STALACTITE, BlocksRegistry.BONE_BLOCK), StructureType.CEIL, 0.05F, true); + + addStructure("golden_lumabus_vine", new StructureGoldenLumabusVine(), StructureType.CEIL, 0.3F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.SEPIA_MUSHROOM_GRASS.getDefaultState()); + } +} diff --git a/src/main/java/redd90/betternether/biomes/NetherSwampland.java b/src/main/java/redd90/betternether/biomes/NetherSwampland.java new file mode 100644 index 0000000..c8c1681 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherSwampland.java @@ -0,0 +1,83 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.entity.EntityType; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.noise.OpenSimplexNoise; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.SoundsRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureBlackBush; +import redd90.betternether.structures.plants.StructureBlackVine; +import redd90.betternether.structures.plants.StructureFeatherFern; +import redd90.betternether.structures.plants.StructureJellyfishMushroom; +import redd90.betternether.structures.plants.StructureReeds; +import redd90.betternether.structures.plants.StructureSmoker; +import redd90.betternether.structures.plants.StructureSoulVein; +import redd90.betternether.structures.plants.StructureSwampGrass; +import redd90.betternether.structures.plants.StructureWallBrownMushroom; +import redd90.betternether.structures.plants.StructureWallMoss; +import redd90.betternether.structures.plants.StructureWallRedMushroom; +import redd90.betternether.structures.plants.StructureWillow; +import redd90.betternether.structures.plants.StructureWillowBush; + +public class NetherSwampland extends NetherBiome { + protected static final OpenSimplexNoise TERRAIN = new OpenSimplexNoise(523); + + public NetherSwampland(String name) { + super(new BiomeDefinition(name) + .setFogColor(137, 19, 78) + .setLoop(SoundsRegistry.AMBIENT_SWAMPLAND) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setMusic(SoundEvents.MUSIC_NETHER_CRIMSON_FOREST) + .setDefaultMobs(false) + .addMobSpawn(EntityType.STRIDER, 40, 2, 4) + .addMobSpawn(EntityType.MAGMA_CUBE, 40, 2, 4)); + addStructure("willow", new StructureWillow(), StructureType.FLOOR, 0.05F, false); + addStructure("willow_bush", new StructureWillowBush(), StructureType.FLOOR, 0.2F, true); + addStructure("feather_fern", new StructureFeatherFern(), StructureType.FLOOR, 0.05F, true); + addStructure("nether_reed", new StructureReeds(), StructureType.FLOOR, 0.8F, false); + addStructure("soul_vein", new StructureSoulVein(), StructureType.FLOOR, 0.5F, false); + addStructure("smoker", new StructureSmoker(), StructureType.FLOOR, 0.05F, false); + addStructure("jellyfish_mushroom", new StructureJellyfishMushroom(), StructureType.FLOOR, 0.03F, true); + addStructure("black_bush", new StructureBlackBush(), StructureType.FLOOR, 0.01F, false); + addStructure("swamp_grass", new StructureSwampGrass(), StructureType.FLOOR, 0.4F, false); + addStructure("black_vine", new StructureBlackVine(), StructureType.CEIL, 0.4F, true); + addStructure("wall_moss", new StructureWallMoss(), StructureType.WALL, 0.8F, true); + addStructure("wall_red_mushroom", new StructureWallRedMushroom(), StructureType.WALL, 0.8F, true); + addStructure("wall_brown_mushroom", new StructureWallBrownMushroom(), StructureType.WALL, 0.8F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + double value = TERRAIN.eval(pos.getX() * 0.2, pos.getY() * 0.2, pos.getZ() * 0.2); + if (value > 0.3 && validWalls(world, pos)) + BlocksHelper.setWithoutUpdate(world, pos, Blocks.LAVA.getDefaultState()); + else if (value > -0.3) + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.SWAMPLAND_GRASS.getDefaultState()); + else { + value = TERRAIN.eval(pos.getX() * 0.5, pos.getZ() * 0.5); + BlocksHelper.setWithoutUpdate(world, pos, value > 0 ? Blocks.SOUL_SAND.getDefaultState() : Blocks.SOUL_SOIL.getDefaultState()); + } + } + + protected boolean validWalls(IWorld world, BlockPos pos) { + return validWall(world, pos.down()) + && validWall(world, pos.north()) + && validWall(world, pos.south()) + && validWall(world, pos.east()) + && validWall(world, pos.west()); + } + + protected boolean validWall(IWorld world, BlockPos pos) { + BlockState state = world.getBlockState(pos); + return BlocksHelper.isLava(state) || BlocksHelper.isNetherGround(state); + } +} diff --git a/src/main/java/redd90/betternether/biomes/NetherSwamplandTerraces.java b/src/main/java/redd90/betternether/biomes/NetherSwamplandTerraces.java new file mode 100644 index 0000000..330a99d --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherSwamplandTerraces.java @@ -0,0 +1,31 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; + +public class NetherSwamplandTerraces extends NetherSwampland { + public NetherSwamplandTerraces(String name) { + super(name); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + if (validWall(world, pos.down()) && validWall(world, pos.north()) && validWall(world, pos.south()) && validWall(world, pos.east()) && validWall(world, pos.west())) { + BlocksHelper.setWithoutUpdate(world, pos, Blocks.LAVA.getDefaultState()); + } + else { + double value = TERRAIN.eval(pos.getX() * 0.2, pos.getY() * 0.2, pos.getZ() * 0.2); + if (value > -0.3) + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.SWAMPLAND_GRASS.getDefaultState()); + else { + value = TERRAIN.eval(pos.getX() * 0.5, pos.getZ() * 0.5); + BlocksHelper.setWithoutUpdate(world, pos, value > 0 ? Blocks.SOUL_SAND.getDefaultState() : Blocks.SOUL_SOIL.getDefaultState()); + } + } + } +} diff --git a/src/main/java/redd90/betternether/biomes/NetherWartForest.java b/src/main/java/redd90/betternether/biomes/NetherWartForest.java new file mode 100644 index 0000000..21b6d9b --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherWartForest.java @@ -0,0 +1,95 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.ParticleEffectAmbience; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.BlockSoulSandstone; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.EntityRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureBlackBush; +import redd90.betternether.structures.plants.StructureNetherWart; +import redd90.betternether.structures.plants.StructureSoulLily; +import redd90.betternether.structures.plants.StructureWartDeadwood; +import redd90.betternether.structures.plants.StructureWartSeed; +import redd90.betternether.structures.plants.StructureWartTree; + +public class NetherWartForest extends NetherBiome { + private static final Mutable POS = new Mutable(); + + public NetherWartForest(String name) { + super(new BiomeDefinition(name) + .setFogColor(151, 6, 6) + .setLoop(SoundEvents.AMBIENT_CRIMSON_FOREST_LOOP) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setMusic(SoundEvents.MUSIC_NETHER_CRIMSON_FOREST) + .setParticleConfig(new ParticleEffectAmbience(ParticleTypes.CRIMSON_SPORE, 0.05F)) + .addMobSpawn(EntityRegistry.FLYING_PIG, 20, 2, 4)); + this.setNoiseDensity(0.45F); + addStructure("wart_deadwood", new StructureWartDeadwood(), StructureType.FLOOR, 0.02F, false); + addStructure("wart_tree", new StructureWartTree(), StructureType.FLOOR, 0.1F, false); + addStructure("nether_wart", new StructureNetherWart(), StructureType.FLOOR, 0.2F, false); + addStructure("wart_seed", new StructureWartSeed(), StructureType.FLOOR, 0.05F, false); + addStructure("black_bush", new StructureBlackBush(), StructureType.FLOOR, 0.05F, false); + addStructure("soul_lily", new StructureSoulLily(), StructureType.FLOOR, 0.2F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + switch (random.nextInt(4)) { + case 0: + super.genSurfColumn(world, pos, random); + break; + case 1: + BlocksHelper.setWithoutUpdate(world, pos, Blocks.SOUL_SAND.getDefaultState()); + break; + case 2: + BlocksHelper.setWithoutUpdate(world, pos, Blocks.SOUL_SOIL.getDefaultState()); + break; + case 3: + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.NETHERRACK_MOSS.getDefaultState()); + break; + } + + int d1 = MHelper.randRange(2, 4, random); + POS.setX(pos.getX()); + POS.setZ(pos.getZ()); + + for (int i = 1; i < d1; i++) { + POS.setY(pos.getY() - i); + if (BlocksHelper.isNetherGround(world.getBlockState(POS))) { + switch (random.nextInt(3)) { + case 0: + BlocksHelper.setWithoutUpdate(world, pos, Blocks.SOUL_SAND.getDefaultState()); + break; + case 1: + BlocksHelper.setWithoutUpdate(world, pos, Blocks.SOUL_SOIL.getDefaultState()); + break; + case 2: + BlocksHelper.setWithoutUpdate(world, pos, Blocks.NETHERRACK.getDefaultState()); + break; + } + } + else + return; + } + + int d2 = MHelper.randRange(5, 7, random); + for (int i = d1; i < d2; i++) { + POS.setY(pos.getY() - i); + if (BlocksHelper.isNetherGround(world.getBlockState(POS))) + BlocksHelper.setWithoutUpdate(world, POS, BlocksRegistry.SOUL_SANDSTONE.getDefaultState().with(BlockSoulSandstone.UP, i == d1)); + else + return; + } + } +} diff --git a/src/main/java/redd90/betternether/biomes/NetherWartForestEdge.java b/src/main/java/redd90/betternether/biomes/NetherWartForestEdge.java new file mode 100644 index 0000000..c27ccb5 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/NetherWartForestEdge.java @@ -0,0 +1,53 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.EntityRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureBlackBush; +import redd90.betternether.structures.plants.StructureNetherWart; +import redd90.betternether.structures.plants.StructureWartSeed; + +public class NetherWartForestEdge extends NetherBiome { + public NetherWartForestEdge(String name) { + super(new BiomeDefinition(name) + .setFogColor(191, 28, 28) + .setLoop(SoundEvents.AMBIENT_CRIMSON_FOREST_LOOP) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setMusic(SoundEvents.MUSIC_NETHER_CRIMSON_FOREST) + .addMobSpawn(EntityRegistry.FLYING_PIG, 20, 2, 4)); + addStructure("nether_wart", new StructureNetherWart(), StructureType.FLOOR, 0.02F, false); + addStructure("wart_seed", new StructureWartSeed(), StructureType.FLOOR, 0.01F, false); + addStructure("black_bush", new StructureBlackBush(), StructureType.FLOOR, 0.01F, false); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + switch (random.nextInt(3)) { + case 0: + super.genSurfColumn(world, pos, random); + break; + case 1: + BlocksHelper.setWithoutUpdate(world, pos, Blocks.SOUL_SAND.getDefaultState()); + break; + case 2: + BlocksHelper.setWithoutUpdate(world, pos, Blocks.SOUL_SOIL.getDefaultState()); + break; + case 3: + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.NETHERRACK_MOSS.getDefaultState()); + break; + } + for (int i = 1; i < random.nextInt(3); i++) { + BlockPos down = pos.down(i); + if (random.nextInt(3) == 0 && BlocksHelper.isNetherGround(world.getBlockState(down))) + BlocksHelper.setWithoutUpdate(world, down, Blocks.SOUL_SAND.getDefaultState()); + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/biomes/OldFungiwoods.java b/src/main/java/redd90/betternether/biomes/OldFungiwoods.java new file mode 100644 index 0000000..963deee --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/OldFungiwoods.java @@ -0,0 +1,49 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.ParticleEffectAmbience; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.SoundsRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureGrayMold; +import redd90.betternether.structures.plants.StructureMedBrownMushroom; +import redd90.betternether.structures.plants.StructureMedRedMushroom; +import redd90.betternether.structures.plants.StructureOldBrownMushrooms; +import redd90.betternether.structures.plants.StructureOldRedMushrooms; +import redd90.betternether.structures.plants.StructureRedMold; +import redd90.betternether.structures.plants.StructureVanillaMushroom; +import redd90.betternether.structures.plants.StructureWallBrownMushroom; +import redd90.betternether.structures.plants.StructureWallRedMushroom; + +public class OldFungiwoods extends NetherBiome { + public OldFungiwoods(String name) { + super(new BiomeDefinition(name) + .setFogColor(166, 38, 95) + .setLoop(SoundsRegistry.AMBIENT_MUSHROOM_FOREST) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setMusic(SoundEvents.MUSIC_NETHER_CRIMSON_FOREST) + .setParticleConfig(new ParticleEffectAmbience(ParticleTypes.MYCELIUM, 0.1F))); + this.setNoiseDensity(0.5F); + addStructure("old_red_mushrooms", new StructureOldRedMushrooms(), StructureType.FLOOR, 0.1F, false); + addStructure("old_brown_mushrooms", new StructureOldBrownMushrooms(), StructureType.FLOOR, 0.1F, false); + addStructure("large_red_mushroom", new StructureMedRedMushroom(), StructureType.FLOOR, 0.12F, true); + addStructure("large_brown_mushroom", new StructureMedBrownMushroom(), StructureType.FLOOR, 0.12F, true); + addStructure("vanilla_mushrooms", new StructureVanillaMushroom(), StructureType.FLOOR, 0.5F, false); + addStructure("red_mold", new StructureRedMold(), StructureType.FLOOR, 0.9F, true); + addStructure("gray_mold", new StructureGrayMold(), StructureType.FLOOR, 0.9F, true); + addStructure("wall_red_mushroom", new StructureWallRedMushroom(), StructureType.WALL, 0.9F, true); + addStructure("wall_brown_mushroom", new StructureWallBrownMushroom(), StructureType.WALL, 0.9F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.NETHER_MYCELIUM.getDefaultState()); + } +} diff --git a/src/main/java/redd90/betternether/biomes/OldSwampland.java b/src/main/java/redd90/betternether/biomes/OldSwampland.java new file mode 100644 index 0000000..1613eb0 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/OldSwampland.java @@ -0,0 +1,85 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.entity.EntityType; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.noise.OpenSimplexNoise; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.SoundsRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureBlackBush; +import redd90.betternether.structures.plants.StructureBlackVine; +import redd90.betternether.structures.plants.StructureFeatherFern; +import redd90.betternether.structures.plants.StructureJellyfishMushroom; +import redd90.betternether.structures.plants.StructureOldWillow; +import redd90.betternether.structures.plants.StructureReeds; +import redd90.betternether.structures.plants.StructureSmoker; +import redd90.betternether.structures.plants.StructureSoulVein; +import redd90.betternether.structures.plants.StructureSwampGrass; +import redd90.betternether.structures.plants.StructureWallBrownMushroom; +import redd90.betternether.structures.plants.StructureWallMoss; +import redd90.betternether.structures.plants.StructureWallRedMushroom; +import redd90.betternether.structures.plants.StructureWillow; +import redd90.betternether.structures.plants.StructureWillowBush; + +public class OldSwampland extends NetherBiome { + protected static final OpenSimplexNoise TERRAIN = new OpenSimplexNoise(523); + + public OldSwampland(String name) { + super(new BiomeDefinition(name) + .setFogColor(137, 19, 78) + .setLoop(SoundsRegistry.AMBIENT_SWAMPLAND) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setMusic(SoundEvents.MUSIC_NETHER_CRIMSON_FOREST) + .setDefaultMobs(false) + .addMobSpawn(EntityType.STRIDER, 40, 2, 4) + .addMobSpawn(EntityType.MAGMA_CUBE, 40, 2, 4)); + addStructure("old_willow", new StructureOldWillow(), StructureType.FLOOR, 0.02F, false); + addStructure("willow", new StructureWillow(), StructureType.FLOOR, 0.02F, false); + addStructure("willow_bush", new StructureWillowBush(), StructureType.FLOOR, 0.1F, true); + addStructure("feather_fern", new StructureFeatherFern(), StructureType.FLOOR, 0.05F, true); + addStructure("nether_reed", new StructureReeds(), StructureType.FLOOR, 0.8F, false); + addStructure("soul_vein", new StructureSoulVein(), StructureType.FLOOR, 0.5F, false); + addStructure("smoker", new StructureSmoker(), StructureType.FLOOR, 0.05F, false); + addStructure("jellyfish_mushroom", new StructureJellyfishMushroom(), StructureType.FLOOR, 0.03F, true); + addStructure("black_bush", new StructureBlackBush(), StructureType.FLOOR, 0.01F, false); + addStructure("swamp_grass", new StructureSwampGrass(), StructureType.FLOOR, 0.4F, false); + addStructure("black_vine", new StructureBlackVine(), StructureType.CEIL, 0.4F, true); + addStructure("wall_moss", new StructureWallMoss(), StructureType.WALL, 0.8F, true); + addStructure("wall_red_mushroom", new StructureWallRedMushroom(), StructureType.WALL, 0.8F, true); + addStructure("wall_brown_mushroom", new StructureWallBrownMushroom(), StructureType.WALL, 0.8F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + double value = TERRAIN.eval(pos.getX() * 0.2, pos.getY() * 0.2, pos.getZ() * 0.2); + if (value > 0.3 && validWalls(world, pos)) + BlocksHelper.setWithoutUpdate(world, pos, Blocks.LAVA.getDefaultState()); + else if (value > -0.3) + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.SWAMPLAND_GRASS.getDefaultState()); + else { + value = TERRAIN.eval(pos.getX() * 0.5, pos.getZ() * 0.5); + BlocksHelper.setWithoutUpdate(world, pos, value > 0 ? Blocks.SOUL_SAND.getDefaultState() : Blocks.SOUL_SOIL.getDefaultState()); + } + } + + protected boolean validWalls(IWorld world, BlockPos pos) { + return validWall(world, pos.down()) + && validWall(world, pos.north()) + && validWall(world, pos.south()) + && validWall(world, pos.east()) + && validWall(world, pos.west()); + } + + protected boolean validWall(IWorld world, BlockPos pos) { + BlockState state = world.getBlockState(pos); + return BlocksHelper.isLava(state) || BlocksHelper.isNetherGround(state); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/biomes/OldWarpedWoods.java b/src/main/java/redd90/betternether/biomes/OldWarpedWoods.java new file mode 100644 index 0000000..fe0c1a3 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/OldWarpedWoods.java @@ -0,0 +1,42 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.entity.EntityType; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.ParticleEffectAmbience; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.StructureBigWarpedTree; +import redd90.betternether.structures.plants.StructureBlackVine; +import redd90.betternether.structures.plants.StructureTwistedVines; +import redd90.betternether.structures.plants.StructureWarpedFungus; +import redd90.betternether.structures.plants.StructureWarpedRoots; + +public class OldWarpedWoods extends NetherBiome { + public OldWarpedWoods(String name) { + super(new BiomeDefinition(name) + .setFogColor(26, 5, 26) + .setLoop(SoundEvents.AMBIENT_WARPED_FOREST_LOOP) + .setAdditions(SoundEvents.AMBIENT_WARPED_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_WARPED_FOREST_MOOD) + .setParticleConfig(new ParticleEffectAmbience(ParticleTypes.WARPED_SPORE, 0.025F)) + .setDefaultMobs(false) + .addMobSpawn(EntityType.ENDERMAN, 1, 4, 4) + .addMobSpawn(EntityType.STRIDER, 60, 1, 2)); + addStructure("big_warped_tree", new StructureBigWarpedTree(), StructureType.FLOOR, 0.1F, false); + addStructure("warped_fungus", new StructureWarpedFungus(), StructureType.FLOOR, 0.05F, true); + addStructure("warped_roots", new StructureWarpedRoots(), StructureType.FLOOR, 0.2F, true); + addStructure("twisted_vine", new StructureTwistedVines(), StructureType.FLOOR, 0.1F, true); + addStructure("black_vine", new StructureBlackVine(), StructureType.CEIL, 0.3F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + BlocksHelper.setWithoutUpdate(world, pos, Blocks.WARPED_NYLIUM.getDefaultState()); + } +} diff --git a/src/main/java/redd90/betternether/biomes/UpsideDownForest.java b/src/main/java/redd90/betternether/biomes/UpsideDownForest.java new file mode 100644 index 0000000..a153047 --- /dev/null +++ b/src/main/java/redd90/betternether/biomes/UpsideDownForest.java @@ -0,0 +1,58 @@ +package redd90.betternether.biomes; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.decorations.StructureForestLitter; +import redd90.betternether.structures.plants.StructureAnchorTree; +import redd90.betternether.structures.plants.StructureAnchorTreeBranch; +import redd90.betternether.structures.plants.StructureAnchorTreeRoot; +import redd90.betternether.structures.plants.StructureCeilingMushrooms; +import redd90.betternether.structures.plants.StructureHookMushroom; +import redd90.betternether.structures.plants.StructureJungleMoss; +import redd90.betternether.structures.plants.StructureMossCover; +import redd90.betternether.structures.plants.StructureNeonEquisetum; +import redd90.betternether.structures.plants.StructureNetherSakura; +import redd90.betternether.structures.plants.StructureNetherSakuraBush; +import redd90.betternether.structures.plants.StructureWallBrownMushroom; +import redd90.betternether.structures.plants.StructureWallRedMushroom; +import redd90.betternether.structures.plants.StructureWhisperingGourd; + +public class UpsideDownForest extends NetherBiome { + public UpsideDownForest(String name) { + super(new BiomeDefinition(name) + .setFogColor(111, 188, 111) + .setLoop(SoundEvents.AMBIENT_CRIMSON_FOREST_LOOP) + .setAdditions(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS) + .setMood(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD) + .setMusic(SoundEvents.MUSIC_NETHER_CRIMSON_FOREST) + .setBNStructures(false) + .setStalactites(false)); + this.setNoiseDensity(0.5F); + addStructure("anchor_tree", new StructureAnchorTree(), StructureType.CEIL, 0.2F, false); + addStructure("anchor_tree_root", new StructureAnchorTreeRoot(), StructureType.CEIL, 0.03F, false); + addStructure("anchor_tree_branch", new StructureAnchorTreeBranch(), StructureType.CEIL, 0.02F, true); + addStructure("nether_sakura", new StructureNetherSakura(), StructureType.CEIL, 0.01F, true); + addStructure("nether_sakura_bush", new StructureNetherSakuraBush(), StructureType.FLOOR, 0.01F, true); + addStructure("moss_cover", new StructureMossCover(), StructureType.FLOOR, 0.6F, false); + addStructure("jungle_moss", new StructureJungleMoss(), StructureType.WALL, 0.4F, true); + addStructure("wall_red_mushroom", new StructureWallRedMushroom(), StructureType.WALL, 0.4F, true); + addStructure("wall_brown_mushroom", new StructureWallBrownMushroom(), StructureType.WALL, 0.4F, true); + addStructure("forest_litter", new StructureForestLitter(), StructureType.FLOOR, 0.1F, false); + addStructure("ceiling_mushrooms", new StructureCeilingMushrooms(), StructureType.CEIL, 1F, false); + addStructure("neon_equisetum", new StructureNeonEquisetum(), StructureType.CEIL, 0.1F, true); + addStructure("hook_mushroom", new StructureHookMushroom(), StructureType.CEIL, 0.03F, true); + addStructure("whispering_gourd", new StructureWhisperingGourd(), StructureType.CEIL, 0.02F, true); + } + + @Override + public void genSurfColumn(IWorld world, BlockPos pos, Random random) { + BlocksHelper.setWithoutUpdate(world, pos, random.nextInt(3) == 0 ? BlocksRegistry.NETHERRACK_MOSS.getDefaultState() : Blocks.NETHERRACK.getDefaultState()); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNBarStool.java b/src/main/java/redd90/betternether/blocks/BNBarStool.java new file mode 100644 index 0000000..de00e72 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNBarStool.java @@ -0,0 +1,21 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; + +public class BNBarStool extends BNChair { + private static final VoxelShape SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 16, 12); + + public BNBarStool(Block block) { + super(block, 15); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BNBarrel.java b/src/main/java/redd90/betternether/blocks/BNBarrel.java new file mode 100644 index 0000000..dceacef --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNBarrel.java @@ -0,0 +1,86 @@ +package redd90.betternether.blocks; + +import java.util.List; +import java.util.Random; + +import javax.annotation.Nullable; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BarrelBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockRenderType; +import net.minecraft.block.BlockState; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.monster.piglin.PiglinTasks; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.stats.Stats; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.ActionResultType; +import net.minecraft.util.Hand; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockRayTraceResult; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.registry.TileEntitiesRegistry; +import redd90.betternether.tileentities.BNBarrelTileEntity; + +public class BNBarrel extends BarrelBlock { + public BNBarrel(Block source) { + super(AbstractBlock.Properties.from(source).notSolid()); + } + + @Override + public TileEntity createNewTileEntity(IBlockReader world) { + return TileEntitiesRegistry.BARREL.create(); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + List drop = super.getDrops(state, builder); + drop.add(new ItemStack(this.asItem())); + return drop; + } + + @Override + public ActionResultType onBlockActivated(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockRayTraceResult hit) { + if (world.isRemote) { + return ActionResultType.SUCCESS; + } + else { + TileEntity blockEntity = world.getTileEntity(pos); + if (blockEntity instanceof BNBarrelTileEntity) { + player.openContainer((BNBarrelTileEntity) blockEntity); + player.addStat(Stats.OPEN_BARREL); + PiglinTasks.func_234478_a_(player, true); + } + + return ActionResultType.CONSUME; + } + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + TileEntity blockEntity = world.getTileEntity(pos); + if (blockEntity instanceof BNBarrelTileEntity) { + ((BNBarrelTileEntity) blockEntity).tick(); + } + } + + @Override + public BlockRenderType getRenderType(BlockState state) { + return BlockRenderType.MODEL; + } + + @Override + public void onBlockPlacedBy(World world, BlockPos pos, BlockState state, @Nullable LivingEntity placer, ItemStack itemStack) { + if (itemStack.hasDisplayName()) { + TileEntity blockEntity = world.getTileEntity(pos); + if (blockEntity instanceof BNBarrelTileEntity) { + ((BNBarrelTileEntity) blockEntity).setCustomName(itemStack.getDisplayName()); + } + } + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNBoneBlock.java b/src/main/java/redd90/betternether/blocks/BNBoneBlock.java new file mode 100644 index 0000000..ddcc29c --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNBoneBlock.java @@ -0,0 +1,21 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; + +public class BNBoneBlock extends BlockBase { + public BNBoneBlock() { + super(AbstractBlock.Properties.from(Blocks.BONE_BLOCK)); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this.asItem())); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNBrewingStand.java b/src/main/java/redd90/betternether/blocks/BNBrewingStand.java new file mode 100644 index 0000000..33d8a35 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNBrewingStand.java @@ -0,0 +1,78 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.BrewingStandBlock; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.inventory.IInventory; +import net.minecraft.inventory.InventoryHelper; +import net.minecraft.item.ItemStack; +import net.minecraft.stats.Stats; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.ActionResultType; +import net.minecraft.util.Hand; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockRayTraceResult; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.World; +import redd90.betternether.client.IRenderTypeable; +import redd90.betternether.tileentities.BNBrewingStandTileEntity; + +public class BNBrewingStand extends BrewingStandBlock implements IRenderTypeable { + public BNBrewingStand() { + super(AbstractBlock.Properties.from(Blocks.NETHER_BRICKS) + .hardnessAndResistance(0.5F, 0.5F) + .setLightLevel((state) -> {return 1;}) + .notSolid()); + } + + @Override + public TileEntity createNewTileEntity(IBlockReader view) { + return new BNBrewingStandTileEntity(); + } + + @Override + public ActionResultType onBlockActivated(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockRayTraceResult hit) { + if (world.isRemote) { + return ActionResultType.SUCCESS; + } + else { + TileEntity blockEntity = world.getTileEntity(pos); + if (blockEntity instanceof BNBrewingStandTileEntity) { + player.openContainer((BNBrewingStandTileEntity) blockEntity); + player.addStat(Stats.INTERACT_WITH_BREWINGSTAND); + } + + return ActionResultType.SUCCESS; + } + } + + @Override + public void onBlockPlacedBy(World world, BlockPos pos, BlockState state, LivingEntity placer, ItemStack itemStack) { + if (itemStack.hasDisplayName()) { + TileEntity blockEntity = world.getTileEntity(pos); + if (blockEntity instanceof BNBrewingStandTileEntity) { + ((BNBrewingStandTileEntity) blockEntity).setCustomName(itemStack.getDisplayName()); + } + } + } + + @Override + public void onReplaced(BlockState state, World world, BlockPos pos, BlockState newState, boolean notify) { + if (!state.isIn(newState.getBlock())) { + TileEntity blockEntity = world.getTileEntity(pos); + if (blockEntity instanceof BNBrewingStandTileEntity) { + InventoryHelper.dropInventoryItems(world, (BlockPos) pos, (IInventory) ((BNBrewingStandTileEntity) blockEntity)); + } + + super.onReplaced(state, world, pos, newState, notify); + } + } + + @Override + public BNRenderLayer getRenderLayer() { + return BNRenderLayer.CUTOUT; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNButton.java b/src/main/java/redd90/betternether/blocks/BNButton.java new file mode 100644 index 0000000..3535ea4 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNButton.java @@ -0,0 +1,22 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.WoodButtonBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; + +public class BNButton extends WoodButtonBlock { + public BNButton(Block block) { + super(AbstractBlock.Properties.from(block).notSolid()); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this.asItem())); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNChain.java b/src/main/java/redd90/betternether/blocks/BNChain.java new file mode 100644 index 0000000..b0c4609 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNChain.java @@ -0,0 +1,28 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.ChainBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import redd90.betternether.client.IRenderTypeable; + +public class BNChain extends ChainBlock implements IRenderTypeable { + public BNChain() { + super(AbstractBlock.Properties.from(Blocks.CHAIN)); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this.asItem())); + } + + @Override + public BNRenderLayer getRenderLayer() { + return BNRenderLayer.CUTOUT; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BNChair.java b/src/main/java/redd90/betternether/blocks/BNChair.java new file mode 100644 index 0000000..dc0094a --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNChair.java @@ -0,0 +1,95 @@ +package redd90.betternether.blocks; + +import java.util.List; +import java.util.function.Predicate; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.HorizontalBlock; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.state.DirectionProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.ActionResultType; +import net.minecraft.util.Hand; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockRayTraceResult; +import net.minecraft.world.World; +import redd90.betternether.BlocksHelper; +import redd90.betternether.entity.EntityChair; +import redd90.betternether.registry.EntityRegistry; + + +public class BNChair extends BlockBaseNotFull { + public static final DirectionProperty FACING = HorizontalBlock.HORIZONTAL_FACING; + private float height; + + public BNChair(Block block, int height) { + super(AbstractBlock.Properties.from(block).notSolid()); + this.height = (float) (height - 3F) / 16F; + } + + @Override + protected void fillStateContainer(StateContainer.Builder StateContainer) { + StateContainer.add(FACING); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + return this.getDefaultState().with(FACING, ctx.getPlacementHorizontalFacing().getOpposite()); + } + + @Override + public ActionResultType onBlockActivated(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockRayTraceResult hit) { + if (world.isRemote) { + return ActionResultType.FAIL; + } + else { + if (player.isPassenger() || player.isSpectator()) + return ActionResultType.FAIL; + + double px = pos.getX() + 0.5; + double py = pos.getY() + height; + double pz = pos.getZ() + 0.5; + + List active = world.getEntitiesWithinAABB(EntityChair.class, new AxisAlignedBB(pos), new Predicate() { + @Override + public boolean test(EntityChair entity) { + return entity.isOnePlayerRiding(); + } + }); + if (!active.isEmpty()) + return ActionResultType.FAIL; + + float yaw = state.get(FACING).getOpposite().getHorizontalAngle(); + EntityChair entity = EntityRegistry.CHAIR.create(world); + entity.setLocationAndAngles(px, py, pz, yaw, 0); + entity.setNoGravity(true); + entity.setSilent(true); + entity.setInvisible(true); + entity.setRotationYawHead(yaw); + entity.setRenderYawOffset(yaw); + if (world.addEntity(entity)) { + player.startRiding(entity, true); + player.setRenderYawOffset(yaw); + player.setRotationYawHead(yaw); + return ActionResultType.SUCCESS; + } + return ActionResultType.FAIL; + } + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + return BlocksHelper.rotateHorizontal(state, rotation, FACING); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + return BlocksHelper.mirrorHorizontal(state, mirror, FACING); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNChest.java b/src/main/java/redd90/betternether/blocks/BNChest.java new file mode 100644 index 0000000..99645e4 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNChest.java @@ -0,0 +1,34 @@ +package redd90.betternether.blocks; + +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.ChestBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.IBlockReader; +import redd90.betternether.registry.TileEntitiesRegistry; + + +public class BNChest extends ChestBlock { + public BNChest(Block source) { + super(AbstractBlock.Properties.from(source).notSolid(), () -> { + return TileEntitiesRegistry.CHEST; + }); + } + + @Override + public TileEntity createNewTileEntity(IBlockReader world) { + return TileEntitiesRegistry.CHEST.create(); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + List drop = super.getDrops(state, builder); + drop.add(new ItemStack(this.asItem())); + return drop; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNCraftingTable.java b/src/main/java/redd90/betternether/blocks/BNCraftingTable.java new file mode 100644 index 0000000..7d6277d --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNCraftingTable.java @@ -0,0 +1,29 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.CraftingTableBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import redd90.betternether.client.IRenderTypeable; + + +public class BNCraftingTable extends CraftingTableBlock implements IRenderTypeable { + public BNCraftingTable(Block block) { + super(AbstractBlock.Properties.from(block)); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this.asItem())); + } + + @Override + public BNRenderLayer getRenderLayer() { + return BNRenderLayer.CUTOUT; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNDoor.java b/src/main/java/redd90/betternether/blocks/BNDoor.java new file mode 100644 index 0000000..1ee4fce --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNDoor.java @@ -0,0 +1,33 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.DoorBlock; +import net.minecraft.block.material.Material; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.state.properties.DoubleBlockHalf; +import redd90.betternether.client.IRenderTypeable; + +public class BNDoor extends DoorBlock implements IRenderTypeable { + public BNDoor(Block block) { + super(AbstractBlock.Properties.create(Material.NETHER_WOOD).sound(block.getSoundType(block.getDefaultState())).notSolid()); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + if (state.get(HALF) == DoubleBlockHalf.LOWER) + return Collections.singletonList(new ItemStack(this.asItem())); + else + return Collections.emptyList(); + } + + @Override + public BNRenderLayer getRenderLayer() { + return BNRenderLayer.CUTOUT; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNFence.java b/src/main/java/redd90/betternether/blocks/BNFence.java new file mode 100644 index 0000000..ba7eedf --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNFence.java @@ -0,0 +1,22 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.FenceBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; + +public class BNFence extends FenceBlock { + public BNFence(Block block) { + super(AbstractBlock.Properties.from(block).notSolid()); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this.asItem())); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNGate.java b/src/main/java/redd90/betternether/blocks/BNGate.java new file mode 100644 index 0000000..3f96e5a --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNGate.java @@ -0,0 +1,22 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.FenceGateBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; + +public class BNGate extends FenceGateBlock { + public BNGate(Block block) { + super(AbstractBlock.Properties.from(block).notSolid()); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this.asItem())); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNGlass.java b/src/main/java/redd90/betternether/blocks/BNGlass.java new file mode 100644 index 0000000..761229a --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNGlass.java @@ -0,0 +1,44 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockReader; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import net.minecraftforge.common.ToolType; + +public class BNGlass extends BlockBaseNotFull { + public BNGlass(Block block) { + super(AbstractBlock.Properties.from(block) + .harvestTool(ToolType.PICKAXE) + .hardnessAndResistance(0.3F) + .notSolid() + .setSuffocates((arg1, arg2, arg3) -> { + return false; + }) + .setBlocksVision((arg1, arg2, arg3) -> { + return false; + })); + this.setRenderLayer(BNRenderLayer.TRANSLUCENT); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + @OnlyIn(Dist.CLIENT) + public boolean isSideInvisible(BlockState state, BlockState neighbor, Direction facing) { + return neighbor.getBlock() == this ? true : super.isSideInvisible(state, neighbor, facing); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BNLadder.java b/src/main/java/redd90/betternether/blocks/BNLadder.java new file mode 100644 index 0000000..00a979b --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNLadder.java @@ -0,0 +1,128 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.HorizontalBlock; +import net.minecraft.fluid.FluidState; +import net.minecraft.fluid.Fluids; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.DirectionProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.state.properties.BlockStateProperties; +import net.minecraft.util.Direction; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import redd90.betternether.BlocksHelper; + +public class BNLadder extends BlockBaseNotFull { + public static final DirectionProperty FACING = HorizontalBlock.HORIZONTAL_FACING; + public static final BooleanProperty WATERLOGGED = BlockStateProperties.WATERLOGGED; + protected static final VoxelShape EAST_SHAPE = Block.makeCuboidShape(0.0D, 0.0D, 0.0D, 3.0D, 16.0D, 16.0D); + protected static final VoxelShape WEST_SHAPE = Block.makeCuboidShape(13.0D, 0.0D, 0.0D, 16.0D, 16.0D, 16.0D); + protected static final VoxelShape SOUTH_SHAPE = Block.makeCuboidShape(0.0D, 0.0D, 0.0D, 16.0D, 16.0D, 3.0D); + protected static final VoxelShape NORTH_SHAPE = Block.makeCuboidShape(0.0D, 0.0D, 13.0D, 16.0D, 16.0D, 16.0D); + + public BNLadder(Block block) { + super(AbstractBlock.Properties.from(block).notSolid()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FACING); + stateManager.add(WATERLOGGED); + } + + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + switch (state.get(FACING)) { + case NORTH: + return NORTH_SHAPE; + case SOUTH: + return SOUTH_SHAPE; + case WEST: + return WEST_SHAPE; + case EAST: + default: + return EAST_SHAPE; + } + } + + private boolean canPlaceOn(IBlockReader world, BlockPos pos, Direction side) { + BlockState blockState = world.getBlockState(pos); + return !blockState.canProvidePower() && blockState.isSolidSide(world, pos, side); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + Direction direction = (Direction) state.get(FACING); + return this.canPlaceOn(world, pos.offset(direction.getOpposite()), direction); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (facing.getOpposite() == state.get(FACING) && !state.isValidPosition(world, pos)) { + return Blocks.AIR.getDefaultState(); + } + else { + if ((Boolean) state.get(WATERLOGGED)) { + world .getPendingFluidTicks().scheduleTick(pos, Fluids.WATER, Fluids.WATER.getTickRate(world)); + } + + return super.updatePostPlacement(state, facing, neighborState, world, pos, neighborPos); + } + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + BlockState blockState2; + if (!ctx.replacingClickedOnBlock()) { + blockState2 = ctx.getWorld().getBlockState(ctx.getPos().offset(ctx.getFace().getOpposite())); + if (blockState2.getBlock() == this && blockState2.get(FACING) == ctx.getFace()) { + return null; + } + } + + blockState2 = this.getDefaultState(); + IWorldReader worldView = ctx.getWorld(); + BlockPos blockPos = ctx.getPos(); + FluidState fluidState = ctx.getWorld().getFluidState(ctx.getPos()); + Direction[] var6 = ctx.getNearestLookingDirections(); + int var7 = var6.length; + + for (int var8 = 0; var8 < var7; ++var8) { + Direction direction = var6[var8]; + if (direction.getAxis().isHorizontal()) { + blockState2 = (BlockState) blockState2.with(FACING, direction.getOpposite()); + if (blockState2.isValidPosition(worldView, blockPos)) { + return (BlockState) blockState2.with(WATERLOGGED, fluidState.getFluid() == Fluids.WATER); + } + } + } + + return null; + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + return BlocksHelper.rotateHorizontal(state, rotation, FACING); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + return BlocksHelper.mirrorHorizontal(state, mirror, FACING); + } + + @Override + public FluidState getFluidState(BlockState state) { + return (Boolean) state.get(WATERLOGGED) ? Fluids.WATER.getStillFluidState(false) : super.getFluidState(state); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNLogStripable.java b/src/main/java/redd90/betternether/blocks/BNLogStripable.java new file mode 100644 index 0000000..05f3db7 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNLogStripable.java @@ -0,0 +1,46 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.RotatedPillarBlock; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.player.ServerPlayerEntity; +import net.minecraft.util.ActionResultType; +import net.minecraft.util.Hand; +import net.minecraft.util.SoundCategory; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockRayTraceResult; +import net.minecraft.world.World; +import net.minecraftforge.common.ToolType; +import redd90.betternether.blocks.materials.MaterialBuilder; + +public class BNLogStripable extends BNPillar { + Block result; + + public BNLogStripable(Block source, Block result) { + super(source); + this.result = result; + } + + public BNLogStripable(MaterialColor color, Block result) { + super(MaterialBuilder.makeWood(MaterialColor.LIME_TERRACOTTA)); + this.result = result; + } + + @Override + public ActionResultType onBlockActivated(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockRayTraceResult hit) { + if (player.getHeldItemMainhand().getToolTypes().contains(ToolType.AXE)) { + world.playSound(player, pos, SoundEvents.ITEM_AXE_STRIP, SoundCategory.BLOCKS, 1.0F, 1.0F); + if (!world.isRemote) { + world.setBlockState(pos, result.getDefaultState().with(RotatedPillarBlock.AXIS, state.get(RotatedPillarBlock.AXIS)), 11); + if (player != null && !player.isCreative()) { + player.getHeldItemMainhand().attemptDamageItem(1, world.rand, (ServerPlayerEntity) player); + } + } + return ActionResultType.SUCCESS; + } + return ActionResultType.FAIL; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNNetherBrick.java b/src/main/java/redd90/betternether/blocks/BNNetherBrick.java new file mode 100644 index 0000000..9b78d94 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNNetherBrick.java @@ -0,0 +1,10 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Blocks; + +public class BNNetherBrick extends BlockBase { + public BNNetherBrick() { + super(AbstractBlock.Properties.from(Blocks.NETHER_BRICKS)); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BNNormalChair.java b/src/main/java/redd90/betternether/blocks/BNNormalChair.java new file mode 100644 index 0000000..f4ec9b9 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNNormalChair.java @@ -0,0 +1,104 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.ActionResultType; +import net.minecraft.util.Direction; +import net.minecraft.util.Hand; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockRayTraceResult; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.shapes.VoxelShapes; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; + +public class BNNormalChair extends BNChair { + private static final VoxelShape SHAPE_BOTTOM = Block.makeCuboidShape(3, 0, 3, 13, 16, 13); + private static final VoxelShape SHAPE_TOP = Block.makeCuboidShape(3, 0, 3, 13, 6, 13); + private static final VoxelShape COLLIDER = Block.makeCuboidShape(3, 0, 3, 13, 10, 13); + public static final BooleanProperty TOP = BooleanProperty.create("top"); + + public BNNormalChair(Block block) { + super(block, 10); + this.setDefaultState(getStateContainer().getBaseState().with(FACING, Direction.NORTH).with(TOP, false)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FACING, TOP); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return state.get(TOP) ? SHAPE_TOP : SHAPE_BOTTOM; + } + + @Override + public VoxelShape getCollisionShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return state.get(TOP) ? VoxelShapes.empty() : COLLIDER; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + if (state.get(TOP)) + return true; + BlockState up = world.getBlockState(pos.up()); + return up.isAir() || (up.getBlock() == this && up.get(TOP)); + } + + @Override + public void onBlockPlacedBy(World world, BlockPos pos, BlockState state, LivingEntity placer, ItemStack itemStack) { + if (!world.isRemote()) + BlocksHelper.setWithUpdate((ServerWorld) world, pos.up(), state.with(TOP, true)); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (state.get(TOP)) { + return world.getBlockState(pos.down()).getBlock() == this ? state : Blocks.AIR.getDefaultState(); + } + else { + return world.getBlockState(pos.up()).getBlock() == this ? state : Blocks.AIR.getDefaultState(); + } + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + if (!state.get(TOP)) + return Collections.singletonList(new ItemStack(this.asItem())); + else + return Collections.emptyList(); + } + + @Override + public ActionResultType onBlockActivated(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockRayTraceResult hit) { + if (state.get(TOP)) { + pos = pos.down(); + state = world.getBlockState(pos); + } + return super.onBlockActivated(state, world, pos, player, hand, hit); + } + + @Override + public void onBlockHarvested(World world, BlockPos pos, BlockState state, PlayerEntity player) { + if (player.isCreative() && state.get(TOP) && world.getBlockState(pos.down()).getBlock() == this) { + world.setBlockState(pos.down(), Blocks.AIR.getDefaultState()); + } + super.onBlockHarvested(world, pos, state, player); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNObsidian.java b/src/main/java/redd90/betternether/blocks/BNObsidian.java new file mode 100644 index 0000000..9aae807 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNObsidian.java @@ -0,0 +1,10 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Blocks; + +public class BNObsidian extends BlockBase { + public BNObsidian() { + super(AbstractBlock.Properties.from(Blocks.OBSIDIAN)); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNPane.java b/src/main/java/redd90/betternether/blocks/BNPane.java new file mode 100644 index 0000000..552345a --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNPane.java @@ -0,0 +1,52 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.PaneBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.util.Direction; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.client.IRenderTypeable; + +public class BNPane extends PaneBlock implements IRenderTypeable { + private boolean dropSelf; + + public BNPane(Block block, boolean dropSelf) { + super(AbstractBlock.Properties.from(block).hardnessAndResistance(0.3F, 0.3F).notSolid()); + this.dropSelf = dropSelf; + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + if (dropSelf) + return Collections.singletonList(new ItemStack(this.asItem())); + else + return super.getDrops(state, builder); + } + + @Override + public BNRenderLayer getRenderLayer() { + return BNRenderLayer.TRANSLUCENT; + } + + @OnlyIn(Dist.CLIENT) + public boolean isSideInvisible(BlockState state, BlockState neighbor, Direction facing) { + if (neighbor.getBlock() == this) { + if (!facing.getAxis().isHorizontal()) { + return false; + } + + if (state.get(FACING_TO_PROPERTY_MAP.get(facing)) && neighbor.get(FACING_TO_PROPERTY_MAP.get(facing.getOpposite()))) { + return true; + } + } + + return super.isSideInvisible(state, neighbor, facing); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNPillar.java b/src/main/java/redd90/betternether/blocks/BNPillar.java new file mode 100644 index 0000000..0f0e62b --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNPillar.java @@ -0,0 +1,32 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.RotatedPillarBlock; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import redd90.betternether.blocks.materials.MaterialBuilder; + +public class BNPillar extends RotatedPillarBlock { + public BNPillar(AbstractBlock.Properties settings) { + super(settings); + } + + public BNPillar(Block block) { + super(AbstractBlock.Properties.from(block)); + } + + public BNPillar(MaterialColor color) { + super(MaterialBuilder.makeWood(color)); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this)); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNPlanks.java b/src/main/java/redd90/betternether/blocks/BNPlanks.java new file mode 100644 index 0000000..f97e3aa --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNPlanks.java @@ -0,0 +1,10 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.material.MaterialColor; +import redd90.betternether.blocks.materials.MaterialBuilder; + +public class BNPlanks extends BlockBase { + public BNPlanks(MaterialColor color) { + super(MaterialBuilder.makeWood(color)); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNPlate.java b/src/main/java/redd90/betternether/blocks/BNPlate.java new file mode 100644 index 0000000..90dc37b --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNPlate.java @@ -0,0 +1,22 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.PressurePlateBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; + +public class BNPlate extends PressurePlateBlock { + public BNPlate(Sensitivity type, Block block) { + super(type, AbstractBlock.Properties.from(block).notSolid()); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this.asItem())); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNRenderLayer.java b/src/main/java/redd90/betternether/blocks/BNRenderLayer.java new file mode 100644 index 0000000..7c94bfd --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNRenderLayer.java @@ -0,0 +1,5 @@ +package redd90.betternether.blocks; + +public enum BNRenderLayer { + SOLID, CUTOUT, TRANSLUCENT; +} diff --git a/src/main/java/redd90/betternether/blocks/BNSign.java b/src/main/java/redd90/betternether/blocks/BNSign.java new file mode 100644 index 0000000..0c72d7d --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNSign.java @@ -0,0 +1,157 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import javax.annotation.Nullable; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.AbstractSignBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.WoodType; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.player.ServerPlayerEntity; +import net.minecraft.fluid.FluidState; +import net.minecraft.fluid.Fluids; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.item.DyeItem; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.network.play.server.SOpenSignMenuPacket; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.IntegerProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.state.properties.BlockStateProperties; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.ActionResultType; +import net.minecraft.util.Direction; +import net.minecraft.util.Hand; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockRayTraceResult; +import net.minecraft.util.math.MathHelper; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import redd90.betternether.tileentities.BNSignTileEntity; + +public class BNSign extends AbstractSignBlock { + public static final IntegerProperty ROTATION = BlockStateProperties.ROTATION_0_15; + public static final BooleanProperty FLOOR = BooleanProperty.create("floor"); + private static final VoxelShape[] WALL_SHAPES = new VoxelShape[] { + Block.makeCuboidShape(0.0D, 4.5D, 14.0D, 16.0D, 12.5D, 16.0D), + Block.makeCuboidShape(0.0D, 4.5D, 0.0D, 2.0D, 12.5D, 16.0D), + Block.makeCuboidShape(0.0D, 4.5D, 0.0D, 16.0D, 12.5D, 2.0D), + Block.makeCuboidShape(14.0D, 4.5D, 0.0D, 16.0D, 12.5D, 16.0D) + }; + + public BNSign(Block source) { + super(AbstractBlock.Properties.from(source).doesNotBlockMovement().notSolid(), WoodType.OAK); + this.setDefaultState(this.stateContainer.getBaseState().with(ROTATION, 0).with(FLOOR, true).with(WATERLOGGED, false)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder builder) { + builder.add(ROTATION, FLOOR, WATERLOGGED); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return state.get(FLOOR) ? SHAPE : WALL_SHAPES[state.get(ROTATION) >> 2]; + } + + @Override + public TileEntity createNewTileEntity(IBlockReader world) { + return new BNSignTileEntity(); + } + + @Override + public ActionResultType onBlockActivated(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockRayTraceResult hit) { + ItemStack itemStack = player.getHeldItem(hand); + boolean bl = itemStack.getItem() instanceof DyeItem && player.abilities.allowEdit; + if (world.isRemote) { + return bl ? ActionResultType.SUCCESS : ActionResultType.CONSUME; + } + else { + TileEntity blockEntity = world.getTileEntity(pos); + if (blockEntity instanceof BNSignTileEntity) { + BNSignTileEntity signBlockEntity = (BNSignTileEntity) blockEntity; + if (bl) { + boolean bl2 = signBlockEntity.setTextColor(((DyeItem) itemStack.getItem()).getDyeColor()); + if (bl2 && !player.isCreative()) { + itemStack.shrink(1); + } + } + return signBlockEntity.onActivate(player) ? ActionResultType.SUCCESS : ActionResultType.PASS; + } + else { + return ActionResultType.PASS; + } + } + } + + @Override + public void onBlockPlacedBy(World world, BlockPos pos, BlockState state, @Nullable LivingEntity placer, ItemStack itemStack) { + if (placer != null && placer instanceof PlayerEntity) { + BNSignTileEntity sign = (BNSignTileEntity) world.getTileEntity(pos); + if (!world.isRemote) { + sign.setEditor((PlayerEntity) placer); + ((ServerPlayerEntity) placer).connection.sendPacket(new SOpenSignMenuPacket(pos)); + } + else + sign.setEditable(true); + } + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if ((Boolean) state.get(WATERLOGGED)) { + world.getPendingFluidTicks().scheduleTick(pos, Fluids.WATER, Fluids.WATER.getTickRate(world)); + } + + return super.updatePostPlacement(state, facing, neighborState, world, pos, neighborPos); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + if (ctx.getFace() == Direction.UP) { + FluidState fluidState = ctx.getWorld().getFluidState(ctx.getPos()); + return this.getDefaultState() + .with(FLOOR, true) + .with(ROTATION, MathHelper.floor((180.0 + ctx.getPlacementYaw() * 16.0 / 360.0) + 0.5 - 12) & 15) + .with(WATERLOGGED, fluidState.getFluid() == Fluids.WATER); + } + else if (ctx.getFace() != Direction.DOWN) { + BlockState blockState = this.getDefaultState(); + FluidState fluidState = ctx.getWorld().getFluidState(ctx.getPos()); + IWorldReader worldView = ctx.getWorld(); + BlockPos blockPos = ctx.getPos(); + Direction[] directions = ctx.getNearestLookingDirections(); + Direction[] var7 = directions; + int var8 = directions.length; + + for (int var9 = 0; var9 < var8; ++var9) { + Direction direction = var7[var9]; + if (direction.getAxis().isHorizontal()) { + Direction direction2 = direction.getOpposite(); + int rot = MathHelper.floor((180.0 + direction2.getHorizontalAngle() * 16.0 / 360.0) + 0.5 + 4) & 15; + blockState = blockState.with(ROTATION, rot); + if (blockState.isValidPosition(worldView, blockPos)) { + return blockState.with(FLOOR, false).with(WATERLOGGED, fluidState.getFluid() == Fluids.WATER); + } + } + } + } + + return null; + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this)); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BNSlab.java b/src/main/java/redd90/betternether/blocks/BNSlab.java new file mode 100644 index 0000000..dc9afd3 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNSlab.java @@ -0,0 +1,23 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.SlabBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.state.properties.SlabType; + +public class BNSlab extends SlabBlock { + public BNSlab(Block block) { + super(AbstractBlock.Properties.from(block)); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this.asItem(), state.get(TYPE) == SlabType.DOUBLE ? 2 : 1)); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BNStairs.java b/src/main/java/redd90/betternether/blocks/BNStairs.java new file mode 100644 index 0000000..8717ea9 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNStairs.java @@ -0,0 +1,22 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.StairsBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; + +public class BNStairs extends StairsBlock { + public BNStairs(Block block) { + super(() -> block.getDefaultState(), AbstractBlock.Properties.from(block)); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this.asItem())); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNTaburet.java b/src/main/java/redd90/betternether/blocks/BNTaburet.java new file mode 100644 index 0000000..e7f9857 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNTaburet.java @@ -0,0 +1,21 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; + +public class BNTaburet extends BNChair { + private static final VoxelShape SHAPE = Block.makeCuboidShape(2, 0, 2, 14, 10, 14); + + public BNTaburet(Block block) { + super(block, 9); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNTrapdoor.java b/src/main/java/redd90/betternether/blocks/BNTrapdoor.java new file mode 100644 index 0000000..348ac75 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNTrapdoor.java @@ -0,0 +1,28 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.TrapDoorBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import redd90.betternether.client.IRenderTypeable; + +public class BNTrapdoor extends TrapDoorBlock implements IRenderTypeable { + public BNTrapdoor(Block block) { + super(AbstractBlock.Properties.from(block).notSolid()); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this.asItem())); + } + + @Override + public BNRenderLayer getRenderLayer() { + return BNRenderLayer.CUTOUT; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BNWall.java b/src/main/java/redd90/betternether/blocks/BNWall.java new file mode 100644 index 0000000..436afef --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BNWall.java @@ -0,0 +1,22 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.WallBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; + +public class BNWall extends WallBlock { + public BNWall(Block block) { + super(AbstractBlock.Properties.from(block).notSolid()); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this.asItem())); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockAgave.java b/src/main/java/redd90/betternether/blocks/BlockAgave.java new file mode 100644 index 0000000..8780c4c --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockAgave.java @@ -0,0 +1,81 @@ +package redd90.betternether.blocks; + +import java.util.List; + +import com.google.common.collect.Lists; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.entity.Entity; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.util.DamageSource; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import redd90.betternether.MHelper; +import redd90.betternether.registry.ItemsRegistry; + +public class BlockAgave extends BlockCommonPlant { + private static final VoxelShape SHAPE = Block.makeCuboidShape(2, 0, 2, 14, 14, 14); + + public BlockAgave() { + super(AbstractBlock.Properties.create(Material.CACTUS, MaterialColor.ORANGE_TERRACOTTA) + .sound(SoundType.CLOTH) + .notSolid() + .doesNotBlockMovement() + .hardnessAndResistance(0.4F) + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + Vector3d vec3d = state.getOffset(view, pos); + return SHAPE.withOffset(vec3d.x, vec3d.y, vec3d.z); + } + + @Override + public Block.OffsetType getOffsetType() { + return Block.OffsetType.XZ; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + Block down = world.getBlockState(pos.down()).getBlock(); + return down == Blocks.GRAVEL; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (isValidPosition(state, world, pos)) + return state; + else + return Blocks.AIR.getDefaultState(); + } + + @Override + public void onEntityCollision(BlockState state, World world, BlockPos pos, Entity entity) { + if (state.get(BlockCommonPlant.AGE) > 1) entity.attackEntityFrom(DamageSource.CACTUS, 1.0F); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + if (state.get(BlockCommonPlant.AGE) == 3) { + return Lists.newArrayList(new ItemStack(this, MHelper.randRange(1, 2, MHelper.RANDOM)), new ItemStack(ItemsRegistry.AGAVE_LEAF, MHelper.randRange(2, 5, MHelper.RANDOM))); + } + return Lists.newArrayList(new ItemStack(this)); + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockAnchorTreeLeaves.java b/src/main/java/redd90/betternether/blocks/BlockAnchorTreeLeaves.java new file mode 100644 index 0000000..3af4e11 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockAnchorTreeLeaves.java @@ -0,0 +1,65 @@ +package redd90.betternether.blocks; + +import java.util.List; +import java.util.Random; + +import com.google.common.collect.Lists; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.enchantment.EnchantmentHelper; +import net.minecraft.enchantment.Enchantments; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.shapes.VoxelShapes; +import net.minecraft.world.IBlockReader; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import net.minecraftforge.common.Tags; +import redd90.betternether.blocks.materials.MaterialBuilder; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockAnchorTreeLeaves extends BlockBaseNotFull { + private Random random = new Random(); + + public BlockAnchorTreeLeaves() { + super(MaterialBuilder.makeLeaves(MaterialColor.GREEN)); + this.setDropItself(false); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + public AbstractBlock.OffsetType getOffsetType() { + return AbstractBlock.OffsetType.XZ; + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + public VoxelShape getCollisionShape(BlockState state, IBlockReader world, BlockPos pos) { + return VoxelShapes.empty(); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + ItemStack tool = builder.get(LootParameters.TOOL); + if (tool != null && tool.getItem().isIn(Tags.Items.SHEARS) || EnchantmentHelper.getEnchantmentLevel(Enchantments.SILK_TOUCH, tool) > 0) { + return Lists.newArrayList(new ItemStack(this.asItem())); + } + else { + return random.nextInt(5) == 0 ? Lists.newArrayList(new ItemStack(BlocksRegistry.ANCHOR_TREE_SAPLING)) : super.getDrops(state, builder); + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockAnchorTreeSapling.java b/src/main/java/redd90/betternether/blocks/BlockAnchorTreeSapling.java new file mode 100644 index 0000000..08762fb --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockAnchorTreeSapling.java @@ -0,0 +1,80 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.plants.StructureAnchorTreeBranch; + +public class BlockAnchorTreeSapling extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = Block.makeCuboidShape(4, 2, 4, 12, 16, 12); + private static final StructureAnchorTreeBranch STRUCTURE = new StructureAnchorTreeBranch(); + + public BlockAnchorTreeSapling() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.LIME) + .sound(SoundType.CROP) + .notSolid() + .noDrops() + .zeroHardnessAndResistance() + .doesNotBlockMovement() + .tickRandomly() + .setLightLevel((state) -> {return 10;})); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isNetherrack(world.getBlockState(pos.up())); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return random.nextInt(16) == 0; + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + STRUCTURE.grow(world, pos, random, false); + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canUseBonemeal(world, random, pos, state)) + grow(world, random, pos, state); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockAnchorTreeVine.java b/src/main/java/redd90/betternether/blocks/BlockAnchorTreeVine.java new file mode 100644 index 0000000..b1da2d1 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockAnchorTreeVine.java @@ -0,0 +1,90 @@ +package redd90.betternether.blocks; + +import java.util.function.ToIntFunction; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; + + +public class BlockAnchorTreeVine extends BlockBaseNotFull { + protected static final VoxelShape SHAPE_SELECTION = Block.makeCuboidShape(4, 0, 4, 12, 16, 12); + public static final EnumProperty SHAPE = EnumProperty.create("shape", TripleShape.class); + + public BlockAnchorTreeVine() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.GREEN) + .sound(SoundType.CROP) + .doesNotBlockMovement() + .noDrops() + .zeroHardnessAndResistance() + .notSolid() + .setLightLevel(getLuminance())); + this.setRenderLayer(BNRenderLayer.CUTOUT); + setDropItself(false); + } + + protected static ToIntFunction getLuminance() { + return (state) -> { + return state.get(SHAPE) == TripleShape.BOTTOM ? 15 : 0; + }; + } + + public AbstractBlock.OffsetType getOffsetType() { + return AbstractBlock.OffsetType.XZ; + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + Vector3d vec3d = state.getOffset(view, pos); + return SHAPE_SELECTION.withOffset(vec3d.x, vec3d.y, vec3d.z); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + Block up = world.getBlockState(pos.up()).getBlock(); + if (up != this && up != BlocksRegistry.ANCHOR_TREE_LEAVES && up != Blocks.NETHERRACK) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + return new ItemStack(BlocksRegistry.ANCHOR_TREE_LEAVES); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockBNPot.java b/src/main/java/redd90/betternether/blocks/BlockBNPot.java new file mode 100644 index 0000000..d1a1a46 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockBNPot.java @@ -0,0 +1,63 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.util.ActionResultType; +import net.minecraft.util.Direction; +import net.minecraft.util.Hand; +import net.minecraft.util.SoundCategory; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockRayTraceResult; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; + +public class BlockBNPot extends BlockBaseNotFull { + private static final VoxelShape SHAPE = Block.makeCuboidShape(3, 0, 3, 13, 8, 13); + + public BlockBNPot(Block material) { + super(AbstractBlock.Properties.from(material).notSolid()); + } + + @Override + public boolean isTransparent(BlockState state) { + return true; + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public ActionResultType onBlockActivated(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockRayTraceResult hit) { + BlockPos plantPos = pos.up(); + if (hit.getFace() == Direction.UP && world.isAirBlock(plantPos)) { + BlockState plant = BlockPottedPlant.getPlant(player.getHeldItemMainhand().getItem()); + if (plant != null) { + if (!world.isRemote()) + BlocksHelper.setWithUpdate((ServerWorld) world, plantPos, plant); + world.playSound( + pos.getX() + 0.5, + pos.getY() + 1.5, + pos.getZ() + 0.5, + SoundEvents.ITEM_CROP_PLANT, + SoundCategory.BLOCKS, + 0.8F, + 1.0F, + true); + if (!player.isCreative()) + player.getHeldItemMainhand().shrink(1); + return ActionResultType.SUCCESS; + } + } + return ActionResultType.FAIL; + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockBarrelCactus.java b/src/main/java/redd90/betternether/blocks/BlockBarrelCactus.java new file mode 100644 index 0000000..6134912 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockBarrelCactus.java @@ -0,0 +1,91 @@ +package redd90.betternether.blocks; + +import java.util.List; + +import com.google.common.collect.Lists; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.entity.Entity; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.util.DamageSource; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import redd90.betternether.MHelper; + +public class BlockBarrelCactus extends BlockCommonPlant implements IGrowable { + private static final VoxelShape EMPTY = Block.makeCuboidShape(0, 0, 0, 0, 0, 0); + private static final VoxelShape[] SHAPES = new VoxelShape[] { + Block.makeCuboidShape(5, 0, 5, 11, 5, 11), + Block.makeCuboidShape(3, 0, 3, 13, 9, 13), + Block.makeCuboidShape(2, 0, 2, 14, 12, 14), + Block.makeCuboidShape(1, 0, 1, 15, 14, 15) + }; + + public BlockBarrelCactus() { + super(AbstractBlock.Properties.create(Material.CACTUS, MaterialColor.BLUE_TERRACOTTA) + .sound(SoundType.CLOTH) + .notSolid() + .hardnessAndResistance(0.4F) + .tickRandomly()); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + Block down = world.getBlockState(pos.down()).getBlock(); + return down == Blocks.GRAVEL; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (isValidPosition(state, world, pos)) + return state; + else + return Blocks.AIR.getDefaultState(); + } + + @Override + public void onEntityCollision(BlockState state, World world, BlockPos pos, Entity entity) { + if (state.get(BlockCommonPlant.AGE) > 1) entity.attackEntityFrom(DamageSource.CACTUS, 1.0F); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + Vector3d vec3d = state.getOffset(view, pos); + return SHAPES[state.get(BlockCommonPlant.AGE)].withOffset(vec3d.x, vec3d.y, vec3d.z); + } + + @Override + public VoxelShape getCollisionShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + if (state.get(BlockCommonPlant.AGE) < 2) return EMPTY; + Vector3d vec3d = state.getOffset(view, pos); + return SHAPES[state.get(BlockCommonPlant.AGE)].withOffset(vec3d.x, vec3d.y, vec3d.z); + } + + @Override + public Block.OffsetType getOffsetType() { + return Block.OffsetType.XYZ; + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + if (state.get(BlockCommonPlant.AGE) == 3) { + return Lists.newArrayList(new ItemStack(this, MHelper.randRange(1, 3, MHelper.RANDOM))); + } + return Lists.newArrayList(new ItemStack(this)); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockBase.java b/src/main/java/redd90/betternether/blocks/BlockBase.java new file mode 100644 index 0000000..a9f40df --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockBase.java @@ -0,0 +1,45 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import redd90.betternether.client.IRenderTypeable; + +public class BlockBase extends Block implements IRenderTypeable { + private boolean dropItself = true; + private BNRenderLayer layer = BNRenderLayer.SOLID; + + public BlockBase(AbstractBlock.Properties settings) { + super(settings); + } + + public void setRenderLayer(BNRenderLayer layer) { + this.layer = layer; + } + + @Override + public BNRenderLayer getRenderLayer() { + return layer; + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + if (dropItself) + return Collections.singletonList(new ItemStack(this.asItem())); + else + return super.getDrops(state, builder); + } + + public void setDropItself(boolean drop) { + this.dropItself = drop; + } + + /* + * public int getLuminance(BlockState state) { return 0; } + */ +} diff --git a/src/main/java/redd90/betternether/blocks/BlockBaseNotFull.java b/src/main/java/redd90/betternether/blocks/BlockBaseNotFull.java new file mode 100644 index 0000000..e620252 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockBaseNotFull.java @@ -0,0 +1,26 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.entity.EntityType; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockReader; + +public class BlockBaseNotFull extends BlockBase { + + public BlockBaseNotFull(AbstractBlock.Properties settings) { + super(settings); + } + + public boolean canSuffocate(BlockState state, IBlockReader view, BlockPos pos) { + return false; + } + + public boolean isSimpleFullBlock(BlockState state, IBlockReader view, BlockPos pos) { + return false; + } + + public boolean allowsSpawning(BlockState state, IBlockReader view, BlockPos pos, EntityType type) { + return false; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockBlackApple.java b/src/main/java/redd90/betternether/blocks/BlockBlackApple.java new file mode 100644 index 0000000..93ce41e --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockBlackApple.java @@ -0,0 +1,32 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockBlackApple extends BlockCommonPlant { + private static final VoxelShape SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 16, 12); + + public BlockBlackApple() { + super(MaterialColor.ORANGE_TERRACOTTA); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + return new ItemStack(BlocksRegistry.BLACK_APPLE_SEED); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockBlackAppleSeed.java b/src/main/java/redd90/betternether/blocks/BlockBlackAppleSeed.java new file mode 100644 index 0000000..1f1a4e1 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockBlackAppleSeed.java @@ -0,0 +1,10 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.material.MaterialColor; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockBlackAppleSeed extends BlockCommonSapling { + public BlockBlackAppleSeed() { + super(BlocksRegistry.BLACK_APPLE, MaterialColor.ADOBE); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockBlackBush.java b/src/main/java/redd90/betternether/blocks/BlockBlackBush.java new file mode 100644 index 0000000..5164f2b --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockBlackBush.java @@ -0,0 +1,70 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.shapes.VoxelShapes; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; + + +public class BlockBlackBush extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = VoxelShapes.create(0.1875, 0.0, 0.1875, 0.8125, 0.625, 0.8125); + + public BlockBlackBush() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.BLACK) + .sound(SoundType.CROP) + .notSolid() + .doesNotBlockMovement() + .zeroHardnessAndResistance()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isNetherGround(world.getBlockState(pos.down())); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return true; + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + spawnAsEntity(world, pos, new ItemStack(this.asItem())); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockBlackVine.java b/src/main/java/redd90/betternether/blocks/BlockBlackVine.java new file mode 100644 index 0000000..f9a709d --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockBlackVine.java @@ -0,0 +1,127 @@ +package redd90.betternether.blocks; + +import java.util.List; +import java.util.Random; + +import com.google.common.collect.Lists; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.enchantment.EnchantmentHelper; +import net.minecraft.enchantment.Enchantments; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import net.minecraftforge.common.Tags; +import redd90.betternether.BlocksHelper; + +public class BlockBlackVine extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = Block.makeCuboidShape(2, 0, 2, 14, 16, 14); + public static final BooleanProperty BOTTOM = BooleanProperty.create("bottom"); + + public BlockBlackVine() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.RED) + .sound(SoundType.CROP) + .doesNotBlockMovement() + .zeroHardnessAndResistance() + .notSolid()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDropItself(false); + this.setDefaultState(getStateContainer().getBaseState().with(BOTTOM, true)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(BOTTOM); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + BlockState upState = world.getBlockState(pos.up()); + return upState.getBlock() == this || upState.isSolidSide(world, pos, Direction.DOWN); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (isValidPosition(state, world, pos)) + return world.getBlockState(pos.down()).getBlock() == this ? state.with(BOTTOM, false) : state.with(BOTTOM, true); + else + return Blocks.AIR.getDefaultState(); + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + Mutable blockPos = new Mutable().setPos(pos); + for (int y = pos.getY() - 1; y > 1; y--) { + blockPos.setY(y); + if (world.getBlockState(blockPos).getBlock() != this) + return world.getBlockState(blockPos).getBlock() == Blocks.AIR; + } + return false; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return true; + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + Mutable blockPos = new Mutable().setPos(pos); + for (int y = pos.getY(); y > 1; y--) { + blockPos.setY(y); + if (world.getBlockState(blockPos).getBlock() != this) + break; + } + BlocksHelper.setWithoutUpdate(world, blockPos.up(), getDefaultState().with(BOTTOM, false)); + BlocksHelper.setWithoutUpdate(world, blockPos, getDefaultState().with(BOTTOM, true)); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + ItemStack tool = builder.get(LootParameters.TOOL); + if (tool != null && tool.getItem().isIn(Tags.Items.SHEARS) || EnchantmentHelper.getEnchantmentLevel(Enchantments.SILK_TOUCH, tool) > 0) { + return Lists.newArrayList(new ItemStack(this.asItem())); + } + else { + return Lists.newArrayList(); + } + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockBoneMushroom.java b/src/main/java/redd90/betternether/blocks/BlockBoneMushroom.java new file mode 100644 index 0000000..0db0136 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockBoneMushroom.java @@ -0,0 +1,137 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.state.DirectionProperty; +import net.minecraft.state.IntegerProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.state.properties.BlockStateProperties; +import net.minecraft.util.Direction; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.BlocksHelper; + + +public class BlockBoneMushroom extends BlockBaseNotFull { + private static final VoxelShape SHAPE_NORTH = Block.makeCuboidShape(1, 1, 8, 15, 15, 16); + private static final VoxelShape SHAPE_SOUTH = Block.makeCuboidShape(1, 1, 0, 15, 15, 8); + private static final VoxelShape SHAPE_WEST = Block.makeCuboidShape(8, 1, 1, 16, 15, 15); + private static final VoxelShape SHAPE_EAST = Block.makeCuboidShape(0, 1, 1, 8, 15, 15); + private static final VoxelShape SHAPE_UP = Block.makeCuboidShape(1, 0, 1, 15, 12, 15); + public static final DirectionProperty FACING = BlockStateProperties.FACING; + public static final IntegerProperty AGE = IntegerProperty.create("age", 0, 2); + + public BlockBoneMushroom() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.LIME) + .sound(SoundType.CROP) + .notSolid() + .doesNotBlockMovement() + .zeroHardnessAndResistance() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDropItself(false); + this.setDefaultState(getStateContainer().getBaseState().with(AGE, 0).with(FACING, Direction.UP)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FACING, AGE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + switch (state.get(FACING)) { + case NORTH: + return SHAPE_NORTH; + case SOUTH: + return SHAPE_SOUTH; + case EAST: + return SHAPE_EAST; + case WEST: + return SHAPE_WEST; + case UP: + default: + return SHAPE_UP; + } + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + Direction direction = (Direction) state.get(FACING); + if (direction == Direction.DOWN) + return false; + BlockPos blockPos = pos.offset(direction.getOpposite()); + BlockState blockState = world.getBlockState(blockPos); + return BlocksHelper.isBone(blockState); + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + return BlocksHelper.rotateHorizontal(state, rotation, FACING); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + return BlocksHelper.mirrorHorizontal(state, mirror, FACING); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (isValidPosition(state, world, pos)) + return state; + else + return Blocks.AIR.getDefaultState(); + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + int age = state.get(AGE); + if (age < 2 && random.nextInt(32) == 0) { + BlocksHelper.setWithoutUpdate(world, pos, state.with(AGE, age + 1)); + } + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + BlockState blockState = this.getDefaultState(); + IWorldReader IWorldReader = ctx.getWorld(); + BlockPos blockPos = ctx.getPos(); + Direction[] directions = ctx.getNearestLookingDirections(); + for (int i = 0; i < directions.length; ++i) { + Direction direction = directions[i]; + if (direction != Direction.UP) { + Direction direction2 = direction.getOpposite(); + blockState = blockState.with(FACING, direction2); + if (blockState.isValidPosition(IWorldReader, blockPos)) { + return blockState; + } + } + } + return null; + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockBrownLargeMushroom.java b/src/main/java/redd90/betternether/blocks/BlockBrownLargeMushroom.java new file mode 100644 index 0000000..a084e0a --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockBrownLargeMushroom.java @@ -0,0 +1,196 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.IStringSerializable; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.blocks.materials.MaterialBuilder; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockBrownLargeMushroom extends BlockBaseNotFull { + private static final VoxelShape TOP_CENTER_SHAPE = Block.makeCuboidShape(0, 0.1, 0, 16, 16, 16); + private static final VoxelShape TOP_EDGE_SHAPE = Block.makeCuboidShape(0, 8, 0, 16, 16, 16); + private static final VoxelShape MIDDLE_SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 16, 12); + public static final EnumProperty SHAPE = EnumProperty.create("shape", BrownMushroomShape.class); + + private static final BrownMushroomShape[] ROT_SIDE = new BrownMushroomShape[] { + BrownMushroomShape.SIDE_N, + BrownMushroomShape.SIDE_E, + BrownMushroomShape.SIDE_S, + BrownMushroomShape.SIDE_W + }; + + private static final BrownMushroomShape[] ROT_CORNER = new BrownMushroomShape[] { + BrownMushroomShape.CORNER_N, + BrownMushroomShape.CORNER_E, + BrownMushroomShape.CORNER_S, + BrownMushroomShape.CORNER_W + }; + + public BlockBrownLargeMushroom() { + super(MaterialBuilder.makeWood(MaterialColor.BROWN).notSolid()); + this.setDropItself(false); + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + BrownMushroomShape shape = state.get(SHAPE); + return shape == BrownMushroomShape.BOTTOM || shape == BrownMushroomShape.MIDDLE ? new ItemStack(BlocksRegistry.MUSHROOM_STEM) : new ItemStack(Items.BROWN_MUSHROOM); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + BrownMushroomShape shape = state.get(SHAPE); + if (shape == BrownMushroomShape.TOP) + return TOP_CENTER_SHAPE; + else if (shape == BrownMushroomShape.MIDDLE || shape == BrownMushroomShape.BOTTOM) + return MIDDLE_SHAPE; + else + return TOP_EDGE_SHAPE; + } + + public static enum BrownMushroomShape implements IStringSerializable { + TOP("top"), SIDE_N("side_n"), SIDE_S("side_s"), SIDE_E("side_e"), SIDE_W("side_w"), CORNER_N("corner_n"), CORNER_S("corner_s"), CORNER_E("corner_e"), CORNER_W("corner_w"), MIDDLE("middle"), BOTTOM("bottom"); + + final String name; + + BrownMushroomShape(String name) { + this.name = name; + } + + @Override + public String getString() { + return name; + } + + @Override + public String toString() { + return name; + } + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + BrownMushroomShape shape = state.get(SHAPE); + + int index = getRotationIndex(shape, ROT_SIDE); + if (index < 0) { + index = getRotationIndex(shape, ROT_CORNER); + + if (index < 0) { + return state; + } + + int offset = rotOffset(rotation); + return state.with(SHAPE, ROT_CORNER[(index + offset) & 3]); + } + + int offset = rotOffset(rotation); + return state.with(SHAPE, ROT_SIDE[(index + offset) & 3]); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + BrownMushroomShape shape = state.get(SHAPE); + int index = getRotationIndex(shape, ROT_SIDE); + if (index < 0) { + index = getRotationIndex(shape, ROT_CORNER); + if (index < 0) + return state; + if (mirror == Mirror.FRONT_BACK) { + if (shape == BrownMushroomShape.CORNER_E) + shape = BrownMushroomShape.CORNER_W; + else if (shape == BrownMushroomShape.CORNER_W) + shape = BrownMushroomShape.CORNER_E; + } + else if (mirror == Mirror.LEFT_RIGHT) { + if (shape == BrownMushroomShape.CORNER_N) + shape = BrownMushroomShape.CORNER_S; + else if (shape == BrownMushroomShape.CORNER_S) + shape = BrownMushroomShape.CORNER_N; + } + return state.with(SHAPE, shape); + } + if (mirror == Mirror.FRONT_BACK) { + if (shape == BrownMushroomShape.SIDE_E) + shape = BrownMushroomShape.SIDE_W; + else if (shape == BrownMushroomShape.SIDE_W) + shape = BrownMushroomShape.SIDE_E; + } + else if (mirror == Mirror.LEFT_RIGHT) { + if (shape == BrownMushroomShape.SIDE_N) + shape = BrownMushroomShape.SIDE_S; + else if (shape == BrownMushroomShape.SIDE_S) + shape = BrownMushroomShape.SIDE_N; + } + return state.with(SHAPE, shape); + } + + private int getRotationIndex(BrownMushroomShape shape, BrownMushroomShape[] rotations) { + for (int i = 0; i < 4; i++) { + if (shape == rotations[i]) + return i; + } + return -1; + } + + private int rotOffset(Rotation rotation) { + if (rotation == Rotation.NONE) + return 0; + else if (rotation == Rotation.CLOCKWISE_90) + return 1; + else if (rotation == Rotation.CLOCKWISE_180) + return 2; + else + return 3; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + switch (state.get(SHAPE)) { + case BOTTOM: + return state; + case MIDDLE: + case TOP: + default: + return getStateIfSame(state, world, pos.down()); + case SIDE_E: + case CORNER_E: + return getStateIfSame(state, world, pos.west()); + case SIDE_N: + case CORNER_N: + return getStateIfSame(state, world, pos.south()); + case SIDE_S: + case CORNER_S: + return getStateIfSame(state, world, pos.north()); + case SIDE_W: + case CORNER_W: + return getStateIfSame(state, world, pos.east()); + } + } + + private BlockState getStateIfSame(BlockState state, IWorld world, BlockPos pos) { + return world.getBlockState(pos).getBlock() == this ? state : Blocks.AIR.getDefaultState(); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockChestOfDrawers.java b/src/main/java/redd90/betternether/blocks/BlockChestOfDrawers.java new file mode 100644 index 0000000..f450510 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockChestOfDrawers.java @@ -0,0 +1,123 @@ +package redd90.betternether.blocks; + +import java.util.ArrayList; +import java.util.EnumMap; +import java.util.List; + +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.Maps; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockRenderType; +import net.minecraft.block.BlockState; +import net.minecraft.block.ContainerBlock; +import net.minecraft.block.HorizontalBlock; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.DirectionProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.ActionResultType; +import net.minecraft.util.Direction; +import net.minecraft.util.Hand; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockRayTraceResult; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.World; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.tileentities.TileEntityChestOfDrawers; + + +public class BlockChestOfDrawers extends ContainerBlock { + private static final EnumMap BOUNDING_SHAPES = Maps.newEnumMap(ImmutableMap.of( + Direction.NORTH, Block.makeCuboidShape(0, 0, 8, 16, 16, 16), + Direction.SOUTH, Block.makeCuboidShape(0, 0, 0, 16, 16, 8), + Direction.WEST, Block.makeCuboidShape(8, 0, 0, 16, 16, 16), + Direction.EAST, Block.makeCuboidShape(0, 0, 0, 8, 16, 16))); + public static final DirectionProperty FACING = HorizontalBlock.HORIZONTAL_FACING; + public static final BooleanProperty OPEN = BooleanProperty.create("open"); + + public BlockChestOfDrawers() { + super(AbstractBlock.Properties.from(BlocksRegistry.CINCINNASITE_BLOCK).notSolid()); + this.setDefaultState(getStateContainer().getBaseState().with(FACING, Direction.NORTH).with(OPEN, false)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FACING, OPEN); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return BOUNDING_SHAPES.get(state.get(FACING)); + } + + @Override + public TileEntity createNewTileEntity(IBlockReader view) { + return new TileEntityChestOfDrawers(); + } + + @Override + public BlockRenderType getRenderType(BlockState state) { + return BlockRenderType.MODEL; + } + + @Override + public void onBlockPlacedBy(World world, BlockPos pos, BlockState state, LivingEntity placer, ItemStack itemStack) { + if (itemStack.hasDisplayName()) { + TileEntity blockEntity = world.getTileEntity(pos); + if (blockEntity instanceof TileEntityChestOfDrawers) { + ((TileEntityChestOfDrawers) blockEntity).setCustomName(itemStack.getDisplayName()); + } + } + } + + @Override + public ActionResultType onBlockActivated(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockRayTraceResult hit) { + if (world.isRemote) { + return ActionResultType.SUCCESS; + } + else { + TileEntity blockEntity = world.getTileEntity(pos); + if (blockEntity instanceof TileEntityChestOfDrawers) { + player.openContainer((TileEntityChestOfDrawers) blockEntity); + } + return ActionResultType.SUCCESS; + } + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + return this.getDefaultState().with(FACING, ctx.getPlacementHorizontalFacing().getOpposite()); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + List drop = new ArrayList(); + TileEntityChestOfDrawers entity = (TileEntityChestOfDrawers) builder.get(LootParameters.BLOCK_ENTITY); + drop.add(new ItemStack(this.asItem())); + entity.addItemsToList(drop); + return drop; + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + return BlocksHelper.rotateHorizontal(state, rotation, FACING); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + return BlocksHelper.mirrorHorizontal(state, mirror, FACING); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockCincinnasitPillar.java b/src/main/java/redd90/betternether/blocks/BlockCincinnasitPillar.java new file mode 100644 index 0000000..67fc5fd --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockCincinnasitPillar.java @@ -0,0 +1,59 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.IStringSerializable; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockCincinnasitPillar extends BlockBase { + public static final EnumProperty SHAPE = EnumProperty.create("shape", CincinnasitPillarShape.class); + + public BlockCincinnasitPillar() { + super(AbstractBlock.Properties.from(BlocksRegistry.CINCINNASITE_BLOCK)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + boolean top = world.getBlockState(pos.up()).getBlock() == this; + boolean bottom = world.getBlockState(pos.down()).getBlock() == this; + if (top && bottom) + return state.with(SHAPE, CincinnasitPillarShape.MIDDLE); + else if (top) + return state.with(SHAPE, CincinnasitPillarShape.BOTTOM); + else if (bottom) + return state.with(SHAPE, CincinnasitPillarShape.TOP); + else + return state.with(SHAPE, CincinnasitPillarShape.SMALL); + } + + public static enum CincinnasitPillarShape implements IStringSerializable { + SMALL("small"), TOP("top"), MIDDLE("middle"), BOTTOM("bottom"); + + final String name; + + CincinnasitPillarShape(String name) { + this.name = name; + } + + @Override + public String getString() { + return name; + } + + @Override + public String toString() { + return name; + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockCincinnasite.java b/src/main/java/redd90/betternether/blocks/BlockCincinnasite.java new file mode 100644 index 0000000..5d43b77 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockCincinnasite.java @@ -0,0 +1,15 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; + +public class BlockCincinnasite extends BlockBase { + public BlockCincinnasite() { + super(AbstractBlock.Properties.create(Material.IRON, MaterialColor.YELLOW) + .hardnessAndResistance(3F, 10F) + .setRequiresTool() + .sound(SoundType.METAL)); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockCincinnasiteAnvil.java b/src/main/java/redd90/betternether/blocks/BlockCincinnasiteAnvil.java new file mode 100644 index 0000000..c341e41 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockCincinnasiteAnvil.java @@ -0,0 +1,31 @@ +package redd90.betternether.blocks; + +import java.util.List; + +import com.google.common.collect.Lists; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.AnvilBlock; +import net.minecraft.block.BlockState; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import redd90.betternether.registry.BlocksRegistry; + + +public class BlockCincinnasiteAnvil extends AnvilBlock { + public BlockCincinnasiteAnvil() { + super(AbstractBlock.Properties.from(BlocksRegistry.CINCINNASITE_BLOCK).notSolid()); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + ItemStack tool = builder.get(LootParameters.TOOL); + if (tool != null && tool.canHarvestBlock(state)) { + return Lists.newArrayList(new ItemStack(this)); + } + else { + return Lists.newArrayList(); + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockCincinnasiteForge.java b/src/main/java/redd90/betternether/blocks/BlockCincinnasiteForge.java new file mode 100644 index 0000000..2916e17 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockCincinnasiteForge.java @@ -0,0 +1,73 @@ +package redd90.betternether.blocks; + +import java.util.Random; +import java.util.function.ToIntFunction; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.AbstractFurnaceBlock; +import net.minecraft.block.BlockState; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.inventory.container.INamedContainerProvider; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.state.properties.BlockStateProperties; +import net.minecraft.stats.Stats; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.Direction; +import net.minecraft.util.SoundCategory; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.World; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.tileentities.TileEntityForge; + + +public class BlockCincinnasiteForge extends AbstractFurnaceBlock { + public BlockCincinnasiteForge() { + super(AbstractBlock.Properties.from(BlocksRegistry.CINCINNASITE_BLOCK).setRequiresTool().setLightLevel(getLuminance())); + } + + private static ToIntFunction getLuminance() { + return (blockState) -> { + return (Boolean) blockState.get(BlockStateProperties.LIT) ? 13 : 0; + }; + } + + @Override + public TileEntity createNewTileEntity(IBlockReader world) { + return new TileEntityForge(); + } + + @Override + protected void interactWith(World world, BlockPos pos, PlayerEntity player) { + TileEntity blockEntity = world.getTileEntity(pos); + if (blockEntity instanceof TileEntityForge) { + player.openContainer((INamedContainerProvider) blockEntity); + player.addStat(Stats.INTERACT_WITH_FURNACE); + } + } + + @Override + @OnlyIn(Dist.CLIENT) + public void animateTick(BlockState state, World world, BlockPos pos, Random random) { + if ((Boolean) state.get(LIT)) { + double d = (double) pos.getX() + 0.5D; + double e = (double) pos.getY(); + double f = (double) pos.getZ() + 0.5D; + if (random.nextDouble() < 0.1D) { + world.playSound(d, e, f, SoundEvents.BLOCK_FURNACE_FIRE_CRACKLE, SoundCategory.BLOCKS, 1.0F, 1.0F, false); + } + + Direction direction = (Direction) state.get(FACING); + Direction.Axis axis = direction.getAxis(); + double h = random.nextDouble() * 0.6D - 0.3D; + double i = axis == Direction.Axis.X ? (double) direction.getYOffset() * 0.52D : h; + double j = random.nextDouble() * 6.0D / 16.0D; + double k = axis == Direction.Axis.Z ? (double) direction.getZOffset() * 0.52D : h; + world.addParticle(ParticleTypes.SMOKE, d + i, e + j, f + k, 0.0D, 0.0D, 0.0D); + world.addParticle(ParticleTypes.FLAME, d + i, e + j, f + k, 0.0D, 0.0D, 0.0D); + } + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockCincinnasiteFrame.java b/src/main/java/redd90/betternether/blocks/BlockCincinnasiteFrame.java new file mode 100644 index 0000000..877e3d2 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockCincinnasiteFrame.java @@ -0,0 +1,34 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockReader; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockCincinnasiteFrame extends BlockBaseNotFull { + public BlockCincinnasiteFrame() { + super(AbstractBlock.Properties.from(BlocksRegistry.CINCINNASITE_BLOCK).notSolid()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + @OnlyIn(Dist.CLIENT) + public boolean isSideInvisible(BlockState state, BlockState neighbor, Direction facing) { + return neighbor.getBlock() == this ? true : super.isSideInvisible(state, neighbor, facing); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockCincinnasiteLantern.java b/src/main/java/redd90/betternether/blocks/BlockCincinnasiteLantern.java new file mode 100644 index 0000000..417a7df --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockCincinnasiteLantern.java @@ -0,0 +1,10 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockCincinnasiteLantern extends BlockBase { + public BlockCincinnasiteLantern() { + super(AbstractBlock.Properties.from(BlocksRegistry.CINCINNASITE_BLOCK).setLightLevel((state) -> {return 15;})); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockCincinnasitePedestal.java b/src/main/java/redd90/betternether/blocks/BlockCincinnasitePedestal.java new file mode 100644 index 0000000..b293925 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockCincinnasitePedestal.java @@ -0,0 +1,23 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockCincinnasitePedestal extends BlockBaseNotFull { + private static final VoxelShape SHAPE = Block.makeCuboidShape(2, 0, 2, 14, 16, 14); + + public BlockCincinnasitePedestal() { + super(AbstractBlock.Properties.from(BlocksRegistry.CINCINNASITE_BLOCK).notSolid()); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockCommonPlant.java b/src/main/java/redd90/betternether/blocks/BlockCommonPlant.java new file mode 100644 index 0000000..d45e7d5 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockCommonPlant.java @@ -0,0 +1,96 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.state.IntegerProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; + +public class BlockCommonPlant extends BlockBaseNotFull implements IGrowable { + public static final IntegerProperty AGE = IntegerProperty.create("age", 0, 3); + + public BlockCommonPlant(MaterialColor color) { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.BLACK) + .sound(SoundType.CROP) + .notSolid() + .doesNotBlockMovement() + .zeroHardnessAndResistance() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDropItself(false); + } + + public BlockCommonPlant(AbstractBlock.Properties settings) { + super(settings); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDropItself(false); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(AGE); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isNetherGround(world.getBlockState(pos.down())); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return state.get(AGE) < 3; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + int age = state.get(AGE); + if (age < 3) + return BlocksHelper.isFertile(world.getBlockState(pos.down())) ? (random.nextBoolean()) : (random.nextInt(4) == 0); + else + return false; + } + + protected boolean canGrowTerrain(World world, Random random, BlockPos pos, BlockState state) { + int age = state.get(AGE); + if (age < 3) + return BlocksHelper.isFertile(world.getBlockState(pos.down())) ? (random.nextInt(8) == 0) : (random.nextInt(16) == 0); + else + return false; + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + int age = state.get(AGE); + world.setBlockState(pos, state.with(AGE, age + 1)); + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canGrowTerrain(world, random, pos, state)) + grow(world, random, pos, state); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockCommonSapling.java b/src/main/java/redd90/betternether/blocks/BlockCommonSapling.java new file mode 100644 index 0000000..0195709 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockCommonSapling.java @@ -0,0 +1,83 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; + +public class BlockCommonSapling extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 14, 12); + private Block plant; + + public BlockCommonSapling(Block plant, MaterialColor color) { + super(AbstractBlock.Properties.create(Material.PLANTS, color) + .sound(SoundType.CROP) + .notSolid() + .noDrops() + .zeroHardnessAndResistance() + .doesNotBlockMovement() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.plant = plant; + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isNetherGround(world.getBlockState(pos.down())); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return BlocksHelper.isFertile(world.getBlockState(pos.down())) ? (random.nextBoolean()) : (random.nextInt(4) == 0); + } + + protected boolean canGrowTerrain(World world, Random random, BlockPos pos, BlockState state) { + return BlocksHelper.isFertile(world.getBlockState(pos.down())) ? (random.nextInt(8) == 0) : (random.nextInt(16) == 0); + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + world.setBlockState(pos, plant.getDefaultState()); + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canGrowTerrain(world, random, pos, state)) + grow(world, random, pos, state); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockEggPlant.java b/src/main/java/redd90/betternether/blocks/BlockEggPlant.java new file mode 100644 index 0000000..ca1a886 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockEggPlant.java @@ -0,0 +1,117 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.entity.Entity; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.particles.BlockParticleData; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.potion.EffectInstance; +import net.minecraft.potion.Effects; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.SoundCategory; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import net.minecraftforge.common.Tags; +import redd90.betternether.config.Configs; +import redd90.betternether.registry.EntityRegistry; + +public class BlockEggPlant extends BlockCommonPlant { + private static final VoxelShape SHAPE = Block.makeCuboidShape(0, 0, 0, 16, 8, 16); + public static final BooleanProperty DESTRUCTED = BooleanProperty.create("destructed"); + + private boolean enableModDamage = true; + private boolean enablePlayerDamage = true; + + public BlockEggPlant() { + super(MaterialColor.WHITE_TERRACOTTA); + enableModDamage = Configs.MAIN.getBoolean("egg_plant", "mob_damage", true); + enablePlayerDamage = Configs.MAIN.getBoolean("egg_plant", "player_damage", true); + this.setDefaultState(getStateContainer().getBaseState().with(DESTRUCTED, false)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + super.fillStateContainer(stateManager); + stateManager.add(DESTRUCTED); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + @OnlyIn(Dist.CLIENT) + public void animateTick(BlockState state, World world, BlockPos pos, Random random) { + if (!state.get(DESTRUCTED)) + world.addParticle( + ParticleTypes.ENTITY_EFFECT, + pos.getX() + random.nextDouble(), + pos.getY() + 0.4, + pos.getZ() + random.nextDouble(), + 0.46, 0.28, 0.55); + } + + @Override + public void onEntityCollision(BlockState state, World world, BlockPos pos, Entity entity) { + if (!state.get(DESTRUCTED)) { + if (enableModDamage && entity instanceof LivingEntity && !((LivingEntity) entity).isPotionActive(Effects.POISON)) { + if (!EntityRegistry.isNetherEntity(entity)) + ((LivingEntity) entity).addPotionEffect(new EffectInstance(Effects.POISON, 100, 3)); + } + else if (enablePlayerDamage && entity instanceof PlayerEntity && !((PlayerEntity) entity).isPotionActive(Effects.POISON)) + ((PlayerEntity) entity).addPotionEffect(new EffectInstance(Effects.POISON, 100, 3)); + + double px = pos.getX() + 0.5; + double py = pos.getY() + 0.125; + double pz = pos.getZ() + 0.5; + if (world.isRemote) { + world.playSound(px, py, pz, SoundType.WART.getBreakSound(), SoundCategory.BLOCKS, 1, 1, false); + BlockParticleData effect = new BlockParticleData(ParticleTypes.BLOCK, state); + Random random = world.rand; + for (int i = 0; i < 24; i++) + world.addParticle(effect, + px + random.nextGaussian() * 0.2, + py + random.nextGaussian() * 0.2, + pz + random.nextGaussian() * 0.2, + random.nextGaussian(), + random.nextGaussian(), + random.nextGaussian()); + } + + world.setBlockState(pos, state.with(DESTRUCTED, true)); + } + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + if (builder.get(LootParameters.TOOL).getItem().isIn(Tags.Items.SHEARS)) + return Collections.singletonList(new ItemStack(this.asItem())); + else + return super.getDrops(state, builder); + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + if (state.get(DESTRUCTED)) + world.setBlockState(pos, this.getDefaultState()); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockEyeBase.java b/src/main/java/redd90/betternether/blocks/BlockEyeBase.java new file mode 100644 index 0000000..9c36727 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockEyeBase.java @@ -0,0 +1,39 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.item.ItemStack; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockEyeBase extends BlockBase { + public BlockEyeBase(AbstractBlock.Properties settings) { + super(settings.setAllowsSpawn((state, world, pos, type) -> { + return false; + })); + setDropItself(false); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + BlockPos blockPos = pos.up(); + Block up = world.getBlockState(blockPos).getBlock(); + if (up != BlocksRegistry.EYE_VINE && up != Blocks.NETHERRACK) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + return new ItemStack(BlocksRegistry.EYE_SEED); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockEyeSeed.java b/src/main/java/redd90/betternether/blocks/BlockEyeSeed.java new file mode 100644 index 0000000..9a7c24d --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockEyeSeed.java @@ -0,0 +1,79 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.plants.StructureEye; + +public class BlockEyeSeed extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = Block.makeCuboidShape(4, 6, 4, 12, 16, 12); + private static final StructureEye STRUCTURE = new StructureEye(); + + public BlockEyeSeed() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.RED) + .sound(SoundType.CROP) + .notSolid() + .zeroHardnessAndResistance() + .doesNotBlockMovement() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return random.nextInt(4) == 0 && world.getBlockState(pos.down()).getBlock() == Blocks.AIR; + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + STRUCTURE.generate(world, pos, random); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isNetherrack(world.getBlockState(pos.up())); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canUseBonemeal(world, random, pos, state)) { + grow(world, random, pos, state); + } + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockEyeVine.java b/src/main/java/redd90/betternether/blocks/BlockEyeVine.java new file mode 100644 index 0000000..088917e --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockEyeVine.java @@ -0,0 +1,68 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockEyeVine extends BlockBaseNotFull { + protected static final VoxelShape SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 16, 12); + + public BlockEyeVine() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.RED) + .sound(SoundType.CROP) + .doesNotBlockMovement() + .noDrops() + .zeroHardnessAndResistance() + .notSolid()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + setDropItself(false); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + Block up = world.getBlockState(pos.up()).getBlock(); + Block down = world.getBlockState(pos.down()).getBlock(); + if (up != this && up != Blocks.NETHERRACK) + return Blocks.AIR.getDefaultState(); + else if (down != this && !(down instanceof BlockEyeBase)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + return new ItemStack(BlocksRegistry.EYE_SEED); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockEyeball.java b/src/main/java/redd90/betternether/blocks/BlockEyeball.java new file mode 100644 index 0000000..1200be2 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockEyeball.java @@ -0,0 +1,54 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.CauldronBlock; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.BlocksHelper; + + +public class BlockEyeball extends BlockEyeBase { + public BlockEyeball() { + super(AbstractBlock.Properties.create(Material.WOOD, MaterialColor.BROWN) + .sound(SoundType.SLIME) + .hardnessAndResistance(0.5F,0.5F) + .tickRandomly()); + } + + @Override + @OnlyIn(Dist.CLIENT) + public void animateTick(BlockState state, World world, BlockPos pos, Random random) { + if (random.nextInt(5) == 0) { + double x = pos.getX() + random.nextDouble(); + double y = pos.getY() + random.nextDouble() * 0.3; + double z = pos.getZ() + random.nextDouble(); + world.addParticle(ParticleTypes.DRIPPING_WATER, x, y, z, 0, 0, 0); + } + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + if (random.nextInt(64) == 0) { + int y = BlocksHelper.downRay(world, pos, 64) + 1; + BlockPos down = pos.down(y); + BlockState cauldron = world.getBlockState(down); + if (cauldron.getBlock() == Blocks.CAULDRON) { + int level = cauldron.get(CauldronBlock.LEVEL); + if (level < 3) { + world.setBlockState(down, cauldron.with(CauldronBlock.LEVEL, level + 1)); + } + } + } + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockEyeballSmall.java b/src/main/java/redd90/betternether/blocks/BlockEyeballSmall.java new file mode 100644 index 0000000..73bebb2 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockEyeballSmall.java @@ -0,0 +1,46 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.World; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; + +public class BlockEyeballSmall extends BlockEyeBase { + protected static final VoxelShape SHAPE = Block.makeCuboidShape(4, 8, 4, 12, 16, 12); + + public BlockEyeballSmall() { + super(AbstractBlock.Properties.create(Material.WOOD, MaterialColor.BROWN) + .sound(SoundType.SLIME) + .hardnessAndResistance(0.5F, 0.5F) + .notSolid()); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + @OnlyIn(Dist.CLIENT) + public void animateTick(BlockState state, World world, BlockPos pos, Random random) { + if (random.nextInt(5) == 0) { + double x = pos.getX() + random.nextDouble() * 0.5 + 0.25; + double y = pos.getY() + random.nextDouble() * 0.1 + 0.5; + double z = pos.getZ() + random.nextDouble() * 0.5 + 0.25; + world.addParticle(ParticleTypes.DRIPPING_WATER, x, y, z, 0, 0, 0); + } + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockFarmland.java b/src/main/java/redd90/betternether/blocks/BlockFarmland.java new file mode 100644 index 0000000..057d226 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockFarmland.java @@ -0,0 +1,10 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.material.MaterialColor; +import redd90.betternether.blocks.materials.MaterialBuilder; + +public class BlockFarmland extends BlockBase { + public BlockFarmland() { + super(MaterialBuilder.makeWood(MaterialColor.LIME_TERRACOTTA)); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockFeatherFern.java b/src/main/java/redd90/betternether/blocks/BlockFeatherFern.java new file mode 100644 index 0000000..5dfbf7c --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockFeatherFern.java @@ -0,0 +1,29 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.IBlockReader; + +public class BlockFeatherFern extends BlockCommonPlant { + private static final VoxelShape SHAPE = Block.makeCuboidShape(2, 0, 2, 14, 14, 14); + + public BlockFeatherFern() { + super(MaterialColor.LIGHT_BLUE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + Vector3d vec3d = state.getOffset(view, pos); + return SHAPE.withOffset(vec3d.x, vec3d.y, vec3d.z); + } + + @Override + public Block.OffsetType getOffsetType() { + return Block.OffsetType.XZ; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockFireBowl.java b/src/main/java/redd90/betternether/blocks/BlockFireBowl.java new file mode 100644 index 0000000..206c4ff --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockFireBowl.java @@ -0,0 +1,94 @@ +package redd90.betternether.blocks; + +import java.util.Random; +import java.util.function.ToIntFunction; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.entity.Entity; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.player.ServerPlayerEntity; +import net.minecraft.item.Items; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.ActionResultType; +import net.minecraft.util.DamageSource; +import net.minecraft.util.Direction; +import net.minecraft.util.Hand; +import net.minecraft.util.SoundCategory; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockRayTraceResult; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.World; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; + + +public class BlockFireBowl extends BlockBaseNotFull { + private static final VoxelShape SHAPE = Block.makeCuboidShape(0, 0, 0, 16, 12, 16); + public static final BooleanProperty FIRE = BooleanProperty.create("fire"); + + public BlockFireBowl(Block source) { + super(AbstractBlock.Properties.from(source).notSolid().setLightLevel(getLuminance())); + this.setDefaultState(getStateContainer().getBaseState().with(FIRE, false)); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + protected static ToIntFunction getLuminance() { + return (state) -> { + return state.get(FIRE) ? 15 : 0; + }; + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FIRE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public ActionResultType onBlockActivated(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockRayTraceResult hit) { + if (hit.getFace() == Direction.UP) { + if (player.getHeldItemMainhand().getItem() == Items.FLINT_AND_STEEL && !state.get(FIRE)) { + world.setBlockState(pos, state.with(FIRE, true)); + if (!player.isCreative() && !world.isRemote) + player.getHeldItemMainhand().attemptDamageItem(1, world.rand, (ServerPlayerEntity) player); + world.playSound(player, pos, SoundEvents.ITEM_FLINTANDSTEEL_USE, SoundCategory.BLOCKS, 1.0F, world.rand.nextFloat() * 0.4F + 0.8F); + return ActionResultType.SUCCESS; + } + else if (player.getHeldItemMainhand().isEmpty() && state.get(FIRE)) { + world.setBlockState(pos, state.with(FIRE, false)); + world.playSound(player, pos, SoundEvents.BLOCK_FIRE_EXTINGUISH, SoundCategory.BLOCKS, 1.0F, world.rand.nextFloat() * 0.4F + 0.8F); + return ActionResultType.SUCCESS; + } + } + return ActionResultType.FAIL; + } + + @Override + public void onEntityWalk(World world, BlockPos pos, Entity entity) { + if (!entity.isImmuneToFire() && entity instanceof LivingEntity && world.getBlockState(pos).get(FIRE)) { + entity.attackEntityFrom(DamageSource.HOT_FLOOR, 1.0F); + } + } + + @OnlyIn(Dist.CLIENT) + public void animateTick(BlockState state, World world, BlockPos pos, Random random) { + if (state.get(FIRE)) { + if (random.nextInt(24) == 0) + world.playSound(pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, SoundEvents.BLOCK_FIRE_AMBIENT, SoundCategory.BLOCKS, 1.0F + random.nextFloat(), random.nextFloat() * 0.7F + 0.3F, false); + if (random.nextInt(4) == 0) + world.addParticle(ParticleTypes.LARGE_SMOKE, pos.getX() + random.nextDouble(), pos.getY() + 0.75, pos.getZ() + random.nextDouble(), 0.0D, 0.0D, 0.0D); + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockGeyser.java b/src/main/java/redd90/betternether/blocks/BlockGeyser.java new file mode 100644 index 0000000..a512762 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockGeyser.java @@ -0,0 +1,106 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.enchantment.EnchantmentHelper; +import net.minecraft.entity.Entity; +import net.minecraft.entity.LivingEntity; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.DamageSource; +import net.minecraft.util.Direction; +import net.minecraft.util.SoundCategory; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; + + +public class BlockGeyser extends BlockBaseNotFull { + private static final VoxelShape SHAPE = Block.makeCuboidShape(1, 0, 1, 15, 4, 15); + + public BlockGeyser() { + super(AbstractBlock.Properties.from(Blocks.NETHERRACK).notSolid().setLightLevel((state) -> {return 10;})); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + @OnlyIn(Dist.CLIENT) + public void animateTick(BlockState state, World world, BlockPos pos, Random random) { + for (int i = 0; i < 5; i++) { + world.addParticle( + ParticleTypes.FLAME, + pos.getX() + 0.4 + random.nextDouble() * 0.1, + pos.getY() + 0.125, + pos.getZ() + 0.4 + random.nextDouble() * 0.1, + random.nextDouble() * 0.02 - 0.01, + 0.05D + random.nextDouble() * 0.05, + random.nextDouble() * 0.02 - 0.01); + + world.addParticle( + ParticleTypes.LARGE_SMOKE, + pos.getX() + 0.4 + random.nextDouble() * 0.1, + pos.getY() + 0.125, + pos.getZ() + 0.4 + random.nextDouble() * 0.1, + random.nextDouble() * 0.02 - 0.01, + 0.05D + random.nextDouble() * 0.05, + random.nextDouble() * 0.02 - 0.01); + + world.addParticle( + ParticleTypes.LAVA, + pos.getX() + 0.4 + random.nextDouble() * 0.1, + pos.getY() + 0.125 + random.nextDouble() * 0.1, + pos.getZ() + 0.4 + random.nextDouble() * 0.1, + random.nextDouble() * 0.02 - 0.01, + 0.05D + random.nextDouble() * 0.05, + random.nextDouble() * 0.02 - 0.01); + } + + if (random.nextDouble() < 0.1D) { + world.playSound(pos.getX() + 0.5, pos.getY(), pos.getZ() + 0.5, SoundEvents.BLOCK_FIRE_AMBIENT, SoundCategory.BLOCKS, 1.0F, 1.0F, false); + } + if (random.nextDouble() < 0.1D) { + world.playSound(pos.getX() + 0.5, pos.getY(), pos.getZ() + 0.5, SoundEvents.BLOCK_FURNACE_FIRE_CRACKLE, SoundCategory.BLOCKS, 1.0F, 1.0F, false); + } + if (random.nextDouble() < 0.1D) { + world.playSound(pos.getX() + 0.5, pos.getY(), pos.getZ() + 0.5, SoundEvents.BLOCK_LAVA_POP, SoundCategory.BLOCKS, 1.0F, 1.0F, false); + } + } + + @Override + public void onEntityWalk(World world, BlockPos pos, Entity entity) { + if (!entity.isImmuneToFire() && entity instanceof LivingEntity && !EnchantmentHelper.hasFrostWalker((LivingEntity) entity)) { + entity.attackEntityFrom(DamageSource.IN_FIRE, 3F); + entity.setFire(1); + } + + super.onEntityWalk(world, pos, entity); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return world.getBlockState(pos.down()).isSolidSide(world, pos.down(), Direction.UP); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockGiantLucis.java b/src/main/java/redd90/betternether/blocks/BlockGiantLucis.java new file mode 100644 index 0000000..aa01708 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockGiantLucis.java @@ -0,0 +1,40 @@ +package redd90.betternether.blocks; + +import java.util.List; + +import com.google.common.collect.Lists; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.HugeMushroomBlock; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.enchantment.EnchantmentHelper; +import net.minecraft.enchantment.Enchantments; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraftforge.common.ToolType; +import redd90.betternether.MHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.ItemsRegistry; + +public class BlockGiantLucis extends HugeMushroomBlock { + public BlockGiantLucis() { + super(AbstractBlock.Properties.create(Material.ORGANIC, MaterialColor.YELLOW) + .harvestTool(ToolType.AXE) + .sound(SoundType.WOOD) + .hardnessAndResistance(1F) + .setLightLevel((state) -> {return 15;}) + .notSolid()); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + ItemStack tool = builder.get(LootParameters.TOOL); + if (EnchantmentHelper.getEnchantmentLevel(Enchantments.SILK_TOUCH, tool) > 0) return Lists.newArrayList(new ItemStack(this.asItem())); + return Lists.newArrayList(new ItemStack(BlocksRegistry.LUCIS_SPORE, MHelper.randRange(0, 1, MHelper.RANDOM)), + new ItemStack(ItemsRegistry.GLOWSTONE_PILE, MHelper.randRange(0, 2, MHelper.RANDOM))); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockGiantMold.java b/src/main/java/redd90/betternether/blocks/BlockGiantMold.java new file mode 100644 index 0000000..86d0f18 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockGiantMold.java @@ -0,0 +1,62 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.blocks.materials.MaterialBuilder; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockGiantMold extends BlockBaseNotFull { + private static final VoxelShape TOP_SHAPE = Block.makeCuboidShape(2, 2, 2, 14, 14, 14); + private static final VoxelShape MIDDLE_SHAPE = Block.makeCuboidShape(5, 0, 5, 11, 16, 11); + public static final EnumProperty SHAPE = EnumProperty.create("shape", TripleShape.class); + + public BlockGiantMold() { + super(MaterialBuilder.makeWood(MaterialColor.GRAY).sound(SoundType.FUNGUS).notSolid()); + this.setDropItself(false); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return state.get(SHAPE) == TripleShape.TOP ? TOP_SHAPE : MIDDLE_SHAPE; + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + TripleShape shape = state.get(SHAPE); + return shape == TripleShape.TOP ? new ItemStack(BlocksRegistry.GIANT_MOLD_SAPLING) : new ItemStack(BlocksRegistry.MUSHROOM_STEM); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + switch (state.get(SHAPE)) { + case BOTTOM: + return state; + case MIDDLE: + case TOP: + default: + return world.getBlockState(pos.down()).getBlock() == this ? state : Blocks.AIR.getDefaultState(); + } + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockGiantMoldSapling.java b/src/main/java/redd90/betternether/blocks/BlockGiantMoldSapling.java new file mode 100644 index 0000000..6021947 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockGiantMoldSapling.java @@ -0,0 +1,81 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.plants.StructureGiantMold; + + +public class BlockGiantMoldSapling extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 14, 12); + private static final StructureGiantMold STRUCTURE = new StructureGiantMold(); + + public BlockGiantMoldSapling() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.LIME) + .sound(SoundType.CROP) + .notSolid() + .noDrops() + .zeroHardnessAndResistance() + .doesNotBlockMovement() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return world.getBlockState(pos.down()).getBlock() == BlocksRegistry.NETHER_MYCELIUM; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return BlocksHelper.isFertile(world.getBlockState(pos.down())) ? (random.nextInt(8) == 0) : (random.nextInt(16) == 0); + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + STRUCTURE.grow(world, pos, random); + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canUseBonemeal(world, random, pos, state)) + grow(world, random, pos, state); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockGoldenVine.java b/src/main/java/redd90/betternether/blocks/BlockGoldenVine.java new file mode 100644 index 0000000..42142fd --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockGoldenVine.java @@ -0,0 +1,129 @@ +package redd90.betternether.blocks; + +import java.util.List; +import java.util.Random; + +import com.google.common.collect.Lists; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.enchantment.EnchantmentHelper; +import net.minecraft.enchantment.Enchantments; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import net.minecraftforge.common.Tags; +import redd90.betternether.BlocksHelper; + +public class BlockGoldenVine extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = Block.makeCuboidShape(2, 0, 2, 14, 16, 14); + public static final BooleanProperty BOTTOM = BooleanProperty.create("bottom"); + + public BlockGoldenVine() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.RED) + .sound(SoundType.CROP) + .doesNotBlockMovement() + .zeroHardnessAndResistance() + .notSolid() + .setLightLevel((state) -> {return 15;})); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDropItself(false); + this.setDefaultState(getStateContainer().getBaseState().with(BOTTOM, true)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(BOTTOM); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + BlockState upState = world.getBlockState(pos.up()); + return upState.getBlock() == this || upState.isSolidSide(world, pos, Direction.DOWN); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (isValidPosition(state, world, pos)) + return world.getBlockState(pos.down()).getBlock() == this ? state.with(BOTTOM, false) : state.with(BOTTOM, true); + else + return Blocks.AIR.getDefaultState(); + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + Mutable blockPos = new Mutable().setPos(pos); + for (int y = pos.getY() - 1; y > 1; y--) { + blockPos.setY(y); + if (world.getBlockState(blockPos).getBlock() != this) + return world.getBlockState(blockPos).getBlock() == Blocks.AIR; + } + return false; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return true; + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + Mutable blockPos = new Mutable().setPos(pos); + for (int y = pos.getY(); y > 1; y--) { + blockPos.setY(y); + if (world.getBlockState(blockPos).getBlock() != this) + break; + } + BlocksHelper.setWithUpdate(world, blockPos.up(), getDefaultState().with(BOTTOM, false)); + BlocksHelper.setWithUpdate(world, blockPos, getDefaultState().with(BOTTOM, true)); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + ItemStack tool = builder.get(LootParameters.TOOL); + if (tool != null && tool.getItem().isIn(Tags.Items.SHEARS) || EnchantmentHelper.getEnchantmentLevel(Enchantments.SILK_TOUCH, tool) > 0) { + return Lists.newArrayList(new ItemStack(this.asItem())); + } + else { + return Lists.newArrayList(); + } + } +} + + diff --git a/src/main/java/redd90/betternether/blocks/BlockGrayMold.java b/src/main/java/redd90/betternether/blocks/BlockGrayMold.java new file mode 100644 index 0000000..ee20d12 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockGrayMold.java @@ -0,0 +1,39 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.World; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; + + +public class BlockGrayMold extends BlockMold { + private static final VoxelShape SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 8, 12); + + public BlockGrayMold() { + super(MaterialColor.GRAY); + } + + @Override + @OnlyIn(Dist.CLIENT) + public void animateTick(BlockState state, World world, BlockPos pos, Random random) { + if (random.nextInt(3) == 0) { + world.addParticle(ParticleTypes.MYCELIUM, pos.getX() + random.nextDouble(), pos.getY() + random.nextDouble() * 0.5, pos.getZ() + random.nextDouble(), 0.0D, 0.0D, 0.0D); + } + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + Vector3d vec3d = state.getOffset(view, pos); + return SHAPE.withOffset(vec3d.x, vec3d.y, vec3d.z); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockHookMushroom.java b/src/main/java/redd90/betternether/blocks/BlockHookMushroom.java new file mode 100644 index 0000000..a56f573 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockHookMushroom.java @@ -0,0 +1,26 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.BlockState; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorldReader; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.materials.MaterialBuilder; + +public class BlockHookMushroom extends BlockMold { + public BlockHookMushroom() { + super(MaterialBuilder.makeGrass(MaterialColor.PINK) + .sound(SoundType.CROP) + .notSolid() + .doesNotBlockMovement() + .zeroHardnessAndResistance() + .tickRandomly() + .setLightLevel((state) -> {return 13;})); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isNetherrack(world.getBlockState(pos.up())); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockInkBush.java b/src/main/java/redd90/betternether/blocks/BlockInkBush.java new file mode 100644 index 0000000..9106565 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockInkBush.java @@ -0,0 +1,22 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockReader; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockInkBush extends BlockCommonPlant { + public BlockInkBush() { + super(MaterialColor.BLACK); + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + return new ItemStack(BlocksRegistry.INK_BUSH_SEED); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockInkBushSeed.java b/src/main/java/redd90/betternether/blocks/BlockInkBushSeed.java new file mode 100644 index 0000000..4a53054 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockInkBushSeed.java @@ -0,0 +1,10 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.material.MaterialColor; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockInkBushSeed extends BlockCommonSapling { + public BlockInkBushSeed() { + super(BlocksRegistry.INK_BUSH, MaterialColor.RED); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockJellyfishMushroom.java b/src/main/java/redd90/betternether/blocks/BlockJellyfishMushroom.java new file mode 100644 index 0000000..8c0b63c --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockJellyfishMushroom.java @@ -0,0 +1,160 @@ +package redd90.betternether.blocks; + +import java.util.List; + +import com.google.common.collect.Lists; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.entity.Entity; +import net.minecraft.entity.LivingEntity; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.loot.LootContext; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.IStringSerializable; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.World; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.materials.MaterialBuilder; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.ItemsRegistry; + +public class BlockJellyfishMushroom extends BlockBaseNotFull { + private static final VoxelShape TOP_SHAPE = Block.makeCuboidShape(1, 0, 1, 15, 16, 15); + private static final VoxelShape MIDDLE_SHAPE = Block.makeCuboidShape(5, 0, 5, 11, 16, 11); + public static final EnumProperty SHAPE = EnumProperty.create("shape", TripleShape.class); + public static final EnumProperty VISUAL = EnumProperty.create("visual", JellyShape.class); + + public BlockJellyfishMushroom() { + super(MaterialBuilder.makeWood(MaterialColor.CYAN).hardnessAndResistance(0.1F).sound(SoundType.FUNGUS).notSolid().setLightLevel((state) -> {return 13;})); + this.setRenderLayer(BNRenderLayer.TRANSLUCENT); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE, VISUAL); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return state.get(SHAPE) == TripleShape.TOP ? TOP_SHAPE : MIDDLE_SHAPE; + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + return new ItemStack(BlocksRegistry.JELLYFISH_MUSHROOM_SAPLING); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + switch (state.get(SHAPE)) { + case BOTTOM: + return world.getBlockState(pos.down()).isSolidSide(world, pos.down(), Direction.UP) ? state : Blocks.AIR.getDefaultState(); + case MIDDLE: + return world.getBlockState(pos.up()).getBlock() == this && world.getBlockState(pos.down()).isSolidSide(world, pos.down(), Direction.UP) ? state : Blocks.AIR.getDefaultState(); + case TOP: + default: + return world.getBlockState(pos.down()).getBlock() == this ? state : Blocks.AIR.getDefaultState(); + } + } + + @Override + public void onFallenUpon(World world, BlockPos pos, Entity entity, float distance) { + if (world.getBlockState(pos).get(SHAPE) != TripleShape.TOP) + return; + if (entity.isSuppressingBounce()) + super.onFallenUpon(world, pos, entity, distance); + else + entity.onLivingFall(distance, 0.0F); + } + + @Override + public void onLanded(IBlockReader world, Entity entity) { + if (entity.isSuppressingBounce()) + super.onLanded(world, entity); + else + this.bounce(entity); + } + + private void bounce(Entity entity) { + Vector3d vec3d = entity.getMotion(); + if (vec3d.y < 0.0D) { + double d = entity instanceof LivingEntity ? 1.0D : 0.8D; + entity.setVelocity(vec3d.x, -vec3d.y * d, vec3d.z); + } + } + + @Override + public void onEntityWalk(World world, BlockPos pos, Entity entity) { + if (world.getBlockState(pos).get(SHAPE) != TripleShape.TOP) { + super.onEntityWalk(world, pos, entity); + return; + } + + double d = Math.abs(entity.getMotion().y); + if (d < 0.1D && !entity.isSuppressingBounce()) { + double e = 0.4D + d * 0.2D; + entity.setMotion(entity.getMotion().mul(e, 1.0D, e)); + } + super.onEntityWalk(world, pos, entity); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + if (state.get(SHAPE) == TripleShape.TOP) { + return Lists.newArrayList(new ItemStack(BlocksRegistry.JELLYFISH_MUSHROOM_SAPLING, MHelper.randRange(1, 2, MHelper.RANDOM)), + new ItemStack(ItemsRegistry.GLOWSTONE_PILE, MHelper.randRange(0, 2, MHelper.RANDOM)), + new ItemStack(Items.SLIME_BALL, MHelper.randRange(0, 1, MHelper.RANDOM))); + } + else if (state.get(SHAPE) == TripleShape.BOTTOM) + return Lists.newArrayList(new ItemStack(BlocksRegistry.JELLYFISH_MUSHROOM_SAPLING, MHelper.randRange(1, 2, MHelper.RANDOM))); + else + return Lists.newArrayList(new ItemStack(BlocksRegistry.MUSHROOM_STEM)); + } + + public static enum JellyShape implements IStringSerializable { + NORMAL("normal"), SEPIA("sepia"), POOR("poor"); + + final String name; + + JellyShape(String name) { + this.name = name; + } + + @Override + public String getString() { + return name; + } + + @Override + public String toString() { + return name; + } + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockJellyfishMushroomSapling.java b/src/main/java/redd90/betternether/blocks/BlockJellyfishMushroomSapling.java new file mode 100644 index 0000000..90123ae --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockJellyfishMushroomSapling.java @@ -0,0 +1,80 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.tags.BlockTags; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.plants.StructureJellyfishMushroom; + +public class BlockJellyfishMushroomSapling extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 6, 12); + private static final StructureJellyfishMushroom STRUCTURE = new StructureJellyfishMushroom(); + + public BlockJellyfishMushroomSapling() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.CYAN) + .sound(SoundType.CROP) + .notSolid() + .zeroHardnessAndResistance() + .doesNotBlockMovement() + .tickRandomly() + .setLightLevel((state) -> {return 9;})); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return world.getBlockState(pos.down()).getBlock().isIn(BlockTags.NYLIUM); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return BlocksHelper.isFertile(world.getBlockState(pos.down())) ? (random.nextInt(8) == 0) : (random.nextInt(16) == 0); + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + STRUCTURE.grow(world, pos, random); + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canUseBonemeal(world, random, pos, state)) + grow(world, random, pos, state); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockLucisMushroom.java b/src/main/java/redd90/betternether/blocks/BlockLucisMushroom.java new file mode 100644 index 0000000..1dc0d20 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockLucisMushroom.java @@ -0,0 +1,114 @@ +package redd90.betternether.blocks; + +import java.util.List; + +import com.google.common.collect.Lists; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.HorizontalBlock; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.state.DirectionProperty; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.IStringSerializable; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import net.minecraftforge.common.ToolType; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.ItemsRegistry; + +public class BlockLucisMushroom extends BlockBaseNotFull { + private static final VoxelShape V_SHAPE = Block.makeCuboidShape(0, 0, 0, 16, 9, 16); + public static final DirectionProperty FACING = HorizontalBlock.HORIZONTAL_FACING; + public static final EnumProperty SHAPE = EnumProperty.create("shape", EnumShape.class); + + public BlockLucisMushroom() { + super(AbstractBlock.Properties.create(Material.ORGANIC, MaterialColor.YELLOW) + .harvestTool(ToolType.AXE) + .sound(SoundType.WOOD) + .hardnessAndResistance(1F) + .setLightLevel((state) -> {return 15;}) + .notSolid()); + this.setDefaultState(getStateContainer().getBaseState().with(FACING, Direction.NORTH).with(SHAPE, EnumShape.CORNER)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FACING, SHAPE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return V_SHAPE; + } + + public enum EnumShape implements IStringSerializable { + CORNER("corner"), SIDE("side"), CENTER("center"); + + final String name; + + EnumShape(String name) { + this.name = name; + } + + @Override + public String getString() { + return name; + } + + @Override + public String toString() { + return name; + } + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Lists.newArrayList(new ItemStack(BlocksRegistry.LUCIS_SPORE), new ItemStack(ItemsRegistry.GLOWSTONE_PILE, MHelper.randRange(2, 4, MHelper.RANDOM))); + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + return BlocksHelper.rotateHorizontal(state, rotation, FACING); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + if (mirror == Mirror.FRONT_BACK) { + if (state.get(SHAPE) == EnumShape.SIDE) state = state.with(FACING, state.get(FACING).rotateYCCW()); + if (state.get(FACING) == Direction.NORTH) return state.with(FACING, Direction.WEST); + if (state.get(FACING) == Direction.WEST) return state.with(FACING, Direction.NORTH); + if (state.get(FACING) == Direction.SOUTH) return state.with(FACING, Direction.EAST); + if (state.get(FACING) == Direction.EAST) return state.with(FACING, Direction.SOUTH); + } + else if (mirror == Mirror.LEFT_RIGHT) { + if (state.get(SHAPE) == EnumShape.SIDE) state = state.with(FACING, state.get(FACING).rotateYCCW()); + if (state.get(FACING) == Direction.NORTH) return state.with(FACING, Direction.EAST); + if (state.get(FACING) == Direction.EAST) return state.with(FACING, Direction.NORTH); + if (state.get(FACING) == Direction.SOUTH) return state.with(FACING, Direction.WEST); + if (state.get(FACING) == Direction.WEST) return state.with(FACING, Direction.SOUTH); + } + return state; + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + return new ItemStack(BlocksRegistry.LUCIS_SPORE); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockLucisSpore.java b/src/main/java/redd90/betternether/blocks/BlockLucisSpore.java new file mode 100644 index 0000000..8198a56 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockLucisSpore.java @@ -0,0 +1,133 @@ +package redd90.betternether.blocks; + +import java.util.EnumMap; +import java.util.Random; + +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.Maps; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.HorizontalBlock; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.state.DirectionProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.plants.StructureLucis; + +public class BlockLucisSpore extends BlockBaseNotFull implements IGrowable { + private static final EnumMap BOUNDING_SHAPES = Maps.newEnumMap(ImmutableMap.of( + Direction.NORTH, Block.makeCuboidShape(4, 4, 8, 12, 12, 16), + Direction.SOUTH, Block.makeCuboidShape(4, 4, 0, 12, 12, 8), + Direction.WEST, Block.makeCuboidShape(8, 4, 4, 16, 12, 12), + Direction.EAST, Block.makeCuboidShape(0, 4, 4, 8, 12, 12))); + private static final StructureLucis STRUCTURE = new StructureLucis(); + public static final DirectionProperty FACING = HorizontalBlock.HORIZONTAL_FACING; + + public BlockLucisSpore() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.LIME) + .sound(SoundType.CROP) + .zeroHardnessAndResistance() + .notSolid() + .doesNotBlockMovement() + .tickRandomly() + .setLightLevel((state) -> {return 7;})); + this.setDefaultState(getStateContainer().getBaseState().with(FACING, Direction.NORTH)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FACING); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return BOUNDING_SHAPES.get(state.get(FACING)); + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return random.nextInt(16) == 0; + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + STRUCTURE.generate(world, pos, random); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (isValidPosition(state, world, pos)) + return state; + else + return Blocks.AIR.getDefaultState(); + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canUseBonemeal(world, random, pos, state)) { + grow(world, random, pos, state); + } + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + return BlocksHelper.rotateHorizontal(state, rotation, FACING); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + return BlocksHelper.mirrorHorizontal(state, mirror, FACING); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + Direction direction = (Direction) state.get(FACING); + BlockPos blockPos = pos.offset(direction.getOpposite()); + BlockState blockState = world.getBlockState(blockPos); + return BlocksHelper.isNetherrack(blockState) || BlocksRegistry.ANCHOR_TREE.isTreeLog(blockState.getBlock()); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + BlockState blockState = this.getDefaultState(); + IWorldReader worldView = ctx.getWorld(); + BlockPos blockPos = ctx.getPos(); + Direction[] directions = ctx.getNearestLookingDirections(); + for (int i = 0; i < directions.length; ++i) { + Direction direction = directions[i]; + if (direction.getAxis().isHorizontal()) { + Direction direction2 = direction.getOpposite(); + blockState = blockState.with(FACING, direction2); + if (blockState.isValidPosition(worldView, blockPos)) { + return blockState; + } + } + } + return null; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockLumabusSeed.java b/src/main/java/redd90/betternether/blocks/BlockLumabusSeed.java new file mode 100644 index 0000000..0f0e2ed --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockLumabusSeed.java @@ -0,0 +1,81 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.structures.IStructure; + + +public class BlockLumabusSeed extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = Block.makeCuboidShape(4, 6, 4, 12, 16, 12); + private final IStructure structure; + + public BlockLumabusSeed(IStructure structure) { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.RED) + .sound(SoundType.CROP) + .notSolid() + .zeroHardnessAndResistance() + .doesNotBlockMovement() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.structure = structure; + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return random.nextInt(4) == 0 && world.getBlockState(pos.down()).getBlock() == Blocks.AIR; + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + structure.generate(world, pos, random); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + BlockState upState = world.getBlockState(pos.up()); + return upState.isSolidSide(world, pos, Direction.DOWN); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canUseBonemeal(world, random, pos, state)) { + grow(world, random, pos, state); + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockLumabusVine.java b/src/main/java/redd90/betternether/blocks/BlockLumabusVine.java new file mode 100644 index 0000000..9ce3524 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockLumabusVine.java @@ -0,0 +1,104 @@ +package redd90.betternether.blocks; + +import java.util.List; +import java.util.Random; +import java.util.function.ToIntFunction; + +import com.google.common.collect.Lists; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.ItemsRegistry; + +public class BlockLumabusVine extends BlockBaseNotFull { + private static final VoxelShape MIDDLE_SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 16, 12); + private static final VoxelShape BOTTOM_SHAPE = Block.makeCuboidShape(2, 4, 2, 14, 16, 14); + public static final EnumProperty SHAPE = EnumProperty.create("shape", TripleShape.class); + private static final Random RANDOM = new Random(); + private final Block seed; + + public BlockLumabusVine(Block seed) { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.CYAN) + .sound(SoundType.CROP) + .doesNotBlockMovement() + .zeroHardnessAndResistance() + .notSolid() + .setLightLevel(getLuminance())); + this.seed = seed; + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDropItself(false); + this.setDefaultState(getStateContainer().getBaseState().with(SHAPE, TripleShape.TOP)); + } + + private static ToIntFunction getLuminance() { + return (blockState) -> { + return blockState.get(SHAPE) == TripleShape.BOTTOM ? 15 : 0; + }; + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return state.get(SHAPE) == TripleShape.BOTTOM ? BOTTOM_SHAPE : MIDDLE_SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + BlockState upState = world.getBlockState(pos.up()); + return upState.getBlock() == this || upState.isSolidSide(world, pos, Direction.DOWN); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + return isValidPosition(state, world, pos) && (world.getBlockState(pos.down()).getBlock() == this || state.get(SHAPE) == TripleShape.BOTTOM) ? state : Blocks.AIR.getDefaultState(); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + if (state.get(SHAPE) == TripleShape.BOTTOM) { + return Lists.newArrayList(new ItemStack(seed, MHelper.randRange(1, 3, RANDOM)), new ItemStack(ItemsRegistry.GLOWSTONE_PILE, MHelper.randRange(1, 3, RANDOM))); + } + return Lists.newArrayList(); + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + return new ItemStack(seed); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockMagmaFlower.java b/src/main/java/redd90/betternether/blocks/BlockMagmaFlower.java new file mode 100644 index 0000000..aa27fd8 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockMagmaFlower.java @@ -0,0 +1,29 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorldReader; + +public class BlockMagmaFlower extends BlockCommonPlant { + private static final VoxelShape SHAPE = Block.makeCuboidShape(1, 0, 1, 15, 12, 15); + + public BlockMagmaFlower() { + super(MaterialColor.ORANGE_TERRACOTTA); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return world.getBlockState(pos.down()).getBlock() == Blocks.MAGMA_BLOCK; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockMold.java b/src/main/java/redd90/betternether/blocks/BlockMold.java new file mode 100644 index 0000000..4084381 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockMold.java @@ -0,0 +1,110 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.item.ShearsItem; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.materials.MaterialBuilder; + +public class BlockMold extends BlockBaseNotFull { + public BlockMold(MaterialColor color) { + super(MaterialBuilder.makeGrass(color) + .sound(SoundType.CROP) + .notSolid() + .doesNotBlockMovement() + .zeroHardnessAndResistance() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDropItself(false); + } + + public BlockMold(AbstractBlock.Properties settings) { + super(settings); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDropItself(false); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public Block.OffsetType getOffsetType() { + return Block.OffsetType.XZ; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isNetherMycelium(world.getBlockState(pos.down())); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @SuppressWarnings("deprecation") + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (random.nextInt(16) == 0) { + int c = 0; + c = world.getBlockState(pos.north()).getBlock() == this ? c++ : c; + c = world.getBlockState(pos.south()).getBlock() == this ? c++ : c; + c = world.getBlockState(pos.east()).getBlock() == this ? c++ : c; + c = world.getBlockState(pos.west()).getBlock() == this ? c++ : c; + if (c < 2) { + BlockPos npos = new BlockPos(pos); + switch (random.nextInt(4)) { + case 0: + npos = npos.add(-1, 0, 0); + break; + case 1: + npos = npos.add(1, 0, 0); + break; + case 2: + npos = npos.add(0, 0, -1); + break; + default: + npos = npos.add(0, 0, 1); + break; + } + if (world.isAirBlock(npos) && isValidPosition(state, world, npos)) { + BlocksHelper.setWithoutUpdate(world, npos, getDefaultState()); + } + } + } + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + if (builder.get(LootParameters.TOOL).getItem() instanceof ShearsItem) + return Collections.singletonList(new ItemStack(this.asItem())); + else + return super.getDrops(state, builder); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockMossCover.java b/src/main/java/redd90/betternether/blocks/BlockMossCover.java new file mode 100644 index 0000000..cfeac1b --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockMossCover.java @@ -0,0 +1,34 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorldReader; + +public class BlockMossCover extends BlockMold { + private static final VoxelShape SHAPE = Block.makeCuboidShape(0, 0, 0, 16, 4, 16); + + public BlockMossCover() { + super(MaterialColor.GREEN); + } + + @Override + public Block.OffsetType getOffsetType() { + return Block.OffsetType.NONE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return world.getBlockState(pos.down()).isSolidSide(world, pos, Direction.UP); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockMushroomFir.java b/src/main/java/redd90/betternether/blocks/BlockMushroomFir.java new file mode 100644 index 0000000..eb56bd9 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockMushroomFir.java @@ -0,0 +1,123 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.IStringSerializable; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.blocks.materials.MaterialBuilder; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockMushroomFir extends BlockBaseNotFull { + public static final EnumProperty SHAPE = EnumProperty.create("shape", MushroomFirShape.class); + + private static final VoxelShape BOTTOM_SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 16, 12); + private static final VoxelShape MIDDLE_SHAPE = Block.makeCuboidShape(5, 0, 5, 11, 16, 11); + private static final VoxelShape TOP_SHAPE = Block.makeCuboidShape(6, 0, 6, 10, 16, 10); + private static final VoxelShape SIDE_BIG_SHAPE = Block.makeCuboidShape(0.01, 0.01, 0.01, 15.99, 13, 15.99); + private static final VoxelShape SIDE_SMALL_N_SHAPE = Block.makeCuboidShape(4, 1, 0, 12, 8, 8); + private static final VoxelShape SIDE_SMALL_S_SHAPE = Block.makeCuboidShape(4, 1, 8, 12, 8, 16); + private static final VoxelShape SIDE_SMALL_E_SHAPE = Block.makeCuboidShape(8, 1, 4, 16, 8, 12); + private static final VoxelShape SIDE_SMALL_W_SHAPE = Block.makeCuboidShape(0, 1, 4, 8, 8, 12); + private static final VoxelShape END_SHAPE = Block.makeCuboidShape(0.01, 0, 0.01, 15.99, 15.99, 15.99); + + public BlockMushroomFir() { + super(MaterialBuilder.makeWood(MaterialColor.CYAN).sound(SoundType.FUNGUS).notSolid()); + this.setDropItself(false); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + switch (state.get(SHAPE)) { + case BOTTOM: + return BOTTOM_SHAPE; + case END: + return END_SHAPE; + case MIDDLE: + default: + return MIDDLE_SHAPE; + case SIDE_BIG_E: + case SIDE_BIG_N: + case SIDE_BIG_S: + case SIDE_BIG_W: + return SIDE_BIG_SHAPE; + case SIDE_SMALL_E: + return SIDE_SMALL_E_SHAPE; + case SIDE_SMALL_N: + return SIDE_SMALL_N_SHAPE; + case SIDE_SMALL_S: + return SIDE_SMALL_S_SHAPE; + case SIDE_SMALL_W: + return SIDE_SMALL_W_SHAPE; + case TOP: + return TOP_SHAPE; + } + } + + public enum MushroomFirShape implements IStringSerializable { + BOTTOM("bottom"), MIDDLE("middle"), TOP("top"), SIDE_BIG_N("side_big_n"), SIDE_BIG_S("side_big_s"), SIDE_BIG_E("side_big_e"), SIDE_BIG_W("side_big_w"), SIDE_SMALL_N("side_small_n"), SIDE_SMALL_S("side_small_s"), SIDE_SMALL_E( + "side_small_e"), SIDE_SMALL_W("side_small_w"), END("end"); + + final String name; + + MushroomFirShape(String name) { + this.name = name; + } + + @Override + public String getString() { + return name; + } + + @Override + public String toString() { + return name; + } + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + MushroomFirShape shape = state.get(SHAPE); + return shape == MushroomFirShape.BOTTOM || shape == MushroomFirShape.MIDDLE ? new ItemStack(BlocksRegistry.MUSHROOM_FIR_STEM) : new ItemStack(BlocksRegistry.MUSHROOM_FIR_SAPLING); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + MushroomFirShape shape = state.get(SHAPE); + if (shape == MushroomFirShape.SIDE_BIG_N || shape == MushroomFirShape.SIDE_SMALL_N) + return world.getBlockState(pos.north()).getBlock() == this; + else if (shape == MushroomFirShape.SIDE_BIG_S || shape == MushroomFirShape.SIDE_SMALL_S) + return world.getBlockState(pos.south()).getBlock() == this; + else if (shape == MushroomFirShape.SIDE_BIG_E || shape == MushroomFirShape.SIDE_SMALL_E) + return world.getBlockState(pos.east()).getBlock() == this; + else if (shape == MushroomFirShape.SIDE_BIG_W || shape == MushroomFirShape.SIDE_SMALL_W) + return world.getBlockState(pos.west()).getBlock() == this; + BlockState down = world.getBlockState(pos.down()); + return down.getBlock() == this || down.isSolidSide(world, pos.down(), Direction.UP); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + return isValidPosition(state, world, pos) ? state : Blocks.AIR.getDefaultState(); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockMushroomFirSapling.java b/src/main/java/redd90/betternether/blocks/BlockMushroomFirSapling.java new file mode 100644 index 0000000..af9e72c --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockMushroomFirSapling.java @@ -0,0 +1,80 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.plants.StructureMushroomFir; + +public class BlockMushroomFirSapling extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 14, 12); + private static final StructureMushroomFir STRUCTURE = new StructureMushroomFir(); + + public BlockMushroomFirSapling() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.LIME) + .sound(SoundType.CROP) + .notSolid() + .noDrops() + .zeroHardnessAndResistance() + .doesNotBlockMovement() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return world.getBlockState(pos.down()).getBlock() == BlocksRegistry.NETHER_MYCELIUM; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return BlocksHelper.isFertile(world.getBlockState(pos.down())) ? (random.nextInt(8) == 0) : (random.nextInt(16) == 0); + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + STRUCTURE.generate(world, pos, random); + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canUseBonemeal(world, random, pos, state)) + grow(world, random, pos, state); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockNeonEquisetum.java b/src/main/java/redd90/betternether/blocks/BlockNeonEquisetum.java new file mode 100644 index 0000000..bb4e24e --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockNeonEquisetum.java @@ -0,0 +1,150 @@ +package redd90.betternether.blocks; + +import java.util.List; +import java.util.Random; + +import javax.annotation.Nullable; + +import com.google.common.collect.Lists; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.enchantment.EnchantmentHelper; +import net.minecraft.enchantment.Enchantments; +import net.minecraft.entity.LivingEntity; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import net.minecraftforge.common.Tags; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.shapes.TripleShape; + +public class BlockNeonEquisetum extends BlockBaseNotFull implements IGrowable { + protected static final VoxelShape SHAPE_SELECTION = Block.makeCuboidShape(2, 0, 2, 14, 16, 14); + public static final EnumProperty SHAPE = EnumProperty.create("shape", TripleShape.class); + + public BlockNeonEquisetum() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.GREEN) + .sound(SoundType.CROP) + .doesNotBlockMovement() + .noDrops() + .zeroHardnessAndResistance() + .notSolid() + .setLightLevel((state) -> {return 15;})); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDefaultState(getStateContainer().getBaseState().with(SHAPE, TripleShape.BOTTOM)); + setDropItself(false); + } + + public AbstractBlock.OffsetType getOffsetType() { + return AbstractBlock.OffsetType.XZ; + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + Vector3d vec3d = state.getOffset(view, pos); + return SHAPE_SELECTION.withOffset(vec3d.x, vec3d.y, vec3d.z); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + BlockState up = world.getBlockState(pos.up()); + return up.getBlock() == this || BlocksHelper.isNetherrack(up); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public void onBlockPlacedBy(World world, BlockPos pos, BlockState state, @Nullable LivingEntity placer, ItemStack itemStack) { + BlockPos upPos = pos.up(); + if (world.getBlockState(upPos).getBlock() == this) { + world.setBlockState(upPos, getDefaultState().with(SHAPE, TripleShape.MIDDLE)); + upPos = upPos.up(); + if (world.getBlockState(upPos).getBlock() == this) { + world.setBlockState(upPos, getDefaultState().with(SHAPE, TripleShape.TOP)); + } + } + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + ItemStack tool = builder.get(LootParameters.TOOL); + if (tool != null && tool.getItem().isIn(Tags.Items.SHEARS) || EnchantmentHelper.getEnchantmentLevel(Enchantments.SILK_TOUCH, tool) > 0) { + return Lists.newArrayList(new ItemStack(this.asItem())); + } + else { + return Lists.newArrayList(); + } + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + Mutable blockPos = new Mutable().setPos(pos); + for (int y = pos.getY() - 1; y > 1; y--) { + blockPos.setY(y); + if (world.getBlockState(blockPos).getBlock() != this) + return world.getBlockState(blockPos).getBlock() == Blocks.AIR; + } + return false; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return true; + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + Mutable blockPos = new Mutable().setPos(pos); + for (int y = pos.getY(); y > 1; y--) { + blockPos.setY(y); + if (world.getBlockState(blockPos).getBlock() != this) + break; + } + BlocksHelper.setWithoutUpdate(world, blockPos, this.getDefaultState()); + this.onBlockPlacedBy(world, blockPos, state, null, null); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockNetherCactus.java b/src/main/java/redd90/betternether/blocks/BlockNetherCactus.java new file mode 100644 index 0000000..e1f3fa4 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockNetherCactus.java @@ -0,0 +1,91 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.entity.Entity; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.DamageSource; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; + +public class BlockNetherCactus extends BlockBaseNotFull { + private static final VoxelShape TOP_SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 8, 12); + private static final VoxelShape SIDE_SHAPE = Block.makeCuboidShape(5, 0, 5, 11, 16, 11); + public static final BooleanProperty TOP = BooleanProperty.create("top"); + + public BlockNetherCactus() { + super(AbstractBlock.Properties.create(Material.CACTUS, MaterialColor.ORANGE_TERRACOTTA) + .sound(SoundType.CLOTH) + .notSolid() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDefaultState(getStateContainer().getBaseState().with(TOP, true)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(TOP); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return state.get(TOP).booleanValue() ? TOP_SHAPE : SIDE_SHAPE; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (isValidPosition(state, world, pos)) { + Block up = world.getBlockState(pos.up()).getBlock(); + if (up == this) + return state.with(TOP, false); + else + return this.getDefaultState(); + } + else + return Blocks.AIR.getDefaultState(); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + Block down = world.getBlockState(pos.down()).getBlock(); + return down == Blocks.GRAVEL || down == this; + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + if (!isValidPosition(state, world, pos)) { + world.destroyBlock(pos, true); + return; + } + if (state.get(TOP).booleanValue() && random.nextInt(16) == 0) { + BlockPos up = pos.up(); + boolean grow = world.getBlockState(up).getBlock() == Blocks.AIR; + grow = grow && (BlocksHelper.getLengthDown(world, pos, this) < 3); + if (grow) { + BlocksHelper.setWithUpdate(world, up, getDefaultState()); + BlocksHelper.setWithUpdate(world, pos, getDefaultState().with(TOP, false)); + } + } + } + + @Override + public void onEntityCollision(BlockState state, World world, BlockPos pos, Entity entity) { + entity.attackEntityFrom(DamageSource.CACTUS, 1.0F); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockNetherFurnace.java b/src/main/java/redd90/betternether/blocks/BlockNetherFurnace.java new file mode 100644 index 0000000..9273db8 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockNetherFurnace.java @@ -0,0 +1,80 @@ +package redd90.betternether.blocks; + +import java.util.List; +import java.util.Random; +import java.util.function.ToIntFunction; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.AbstractFurnaceBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.inventory.container.INamedContainerProvider; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.state.properties.BlockStateProperties; +import net.minecraft.stats.Stats; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.Direction; +import net.minecraft.util.SoundCategory; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.World; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.tileentities.TileEntityFurnace; + + +public class BlockNetherFurnace extends AbstractFurnaceBlock { + public BlockNetherFurnace(Block source) { + super(AbstractBlock.Properties.from(source).setRequiresTool().setLightLevel(getLuminance())); + } + + private static ToIntFunction getLuminance() { + return (blockState) -> { + return (Boolean) blockState.get(BlockStateProperties.LIT) ? 13 : 0; + }; + } + + public TileEntity createNewTileEntity(IBlockReader view) { + return new TileEntityFurnace(); + } + + @Override + protected void interactWith(World world, BlockPos pos, PlayerEntity player) { + TileEntity blockEntity = world.getTileEntity(pos); + if (blockEntity instanceof TileEntityFurnace) { + player.openContainer((INamedContainerProvider) blockEntity); + player.addStat(Stats.INTERACT_WITH_FURNACE); + } + } + + @OnlyIn(Dist.CLIENT) + public void animateTick(BlockState state, World world, BlockPos pos, Random random) { + if ((Boolean) state.get(LIT)) { + double d = (double) pos.getX() + 0.5D; + double e = (double) pos.getY(); + double f = (double) pos.getZ() + 0.5D; + if (random.nextDouble() < 0.1D) { + world.playSound(d, e, f, SoundEvents.BLOCK_FURNACE_FIRE_CRACKLE, SoundCategory.BLOCKS, 1.0F, 1.0F, false); + } + Direction direction = (Direction) state.get(FACING); + Direction.Axis axis = direction.getAxis(); + double h = random.nextDouble() * 0.6D - 0.3D; + double i = axis == Direction.Axis.X ? (double) direction.getXOffset() * 0.52D : h; + double j = random.nextDouble() * 6.0D / 16.0D; + double k = axis == Direction.Axis.Z ? (double) direction.getZOffset() * 0.52D : h; + world.addParticle(ParticleTypes.SMOKE, d + i, e + j, f + k, 0.0D, 0.0D, 0.0D); + world.addParticle(ParticleTypes.FLAME, d + i, e + j, f + k, 0.0D, 0.0D, 0.0D); + } + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + List drop = super.getDrops(state, builder); + drop.add(new ItemStack(this.asItem())); + return drop; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockNetherGrass.java b/src/main/java/redd90/betternether/blocks/BlockNetherGrass.java new file mode 100644 index 0000000..560bb12 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockNetherGrass.java @@ -0,0 +1,75 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import net.minecraftforge.common.Tags; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.materials.MaterialBuilder; + + +public class BlockNetherGrass extends BlockBase { + private static final VoxelShape SHAPE = Block.makeCuboidShape(2, 0, 2, 14, 12, 14); + + public BlockNetherGrass() { + super(MaterialBuilder.makeGrass(MaterialColor.GRAY_TERRACOTTA).tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDropItself(false); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + Vector3d vec3d = state.getOffset(view, pos); + return SHAPE.withOffset(vec3d.x, vec3d.y, vec3d.z); + } + + @Override + public Block.OffsetType getOffsetType() { + return Block.OffsetType.XZ; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isNetherrack(world.getBlockState(pos.down())) || BlocksHelper.isNylium(world.getBlockState(pos.down())); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + if (builder.get(LootParameters.TOOL).getItem().isIn(Tags.Items.SHEARS)) + return Collections.singletonList(new ItemStack(this.asItem())); + else + return super.getDrops(state, builder); + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockNetherMycelium.java b/src/main/java/redd90/betternether/blocks/BlockNetherMycelium.java new file mode 100644 index 0000000..bdcc6a5 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockNetherMycelium.java @@ -0,0 +1,61 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.Block; +import net.minecraft.block.Blocks; +import net.minecraft.enchantment.EnchantmentHelper; +import net.minecraft.enchantment.Enchantments; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.World; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; + +public class BlockNetherMycelium extends BlockBase { + public static final BooleanProperty IS_BLUE = BooleanProperty.create("blue"); + + public BlockNetherMycelium() { + super(AbstractBlock.Properties.from(Blocks.NETHERRACK).setRequiresTool()); + this.setDefaultState(getStateContainer().getBaseState().with(IS_BLUE, false)); + this.setDropItself(false); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(IS_BLUE); + } + + @Override + @OnlyIn(Dist.CLIENT) + public void animateTick(BlockState state, World world, BlockPos pos, Random random) { + super.animateTick(state, world, pos, random); + world.addParticle(ParticleTypes.MYCELIUM, + pos.getX() + random.nextDouble(), + pos.getY() + 1.1D, + pos.getZ() + random.nextDouble(), + 0.0D, 0.0D, 0.0D); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + ItemStack tool = builder.get(LootParameters.TOOL); + if (tool.canHarvestBlock(state)) { + if (EnchantmentHelper.getEnchantmentLevel(Enchantments.SILK_TOUCH, tool) > 0) + return Collections.singletonList(new ItemStack(this.asItem())); + else + return Collections.singletonList(new ItemStack(Blocks.NETHERRACK)); + } + else + return super.getDrops(state, builder); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockNetherReed.java b/src/main/java/redd90/betternether/blocks/BlockNetherReed.java new file mode 100644 index 0000000..3a00c67 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockNetherReed.java @@ -0,0 +1,108 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.BlocksHelper; + +public class BlockNetherReed extends BlockBase { + public static final BooleanProperty TOP = BooleanProperty.create("top"); + + public BlockNetherReed() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.CYAN) + .sound(SoundType.CROP) + .zeroHardnessAndResistance() + .doesNotBlockMovement() + .notSolid() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDefaultState(getStateContainer().getBaseState().with(TOP, true)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(TOP); + } + + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightLevel(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + Block up = world.getBlockState(pos.up()).getBlock(); + BlockState down = world.getBlockState(pos.down()); + if (BlocksHelper.isNetherGround(down)) { + BlockPos posDown = pos.down(); + boolean lava = BlocksHelper.isLava(world.getBlockState(posDown.north())); + lava = lava || BlocksHelper.isLava(world.getBlockState(posDown.south())); + lava = lava || BlocksHelper.isLava(world.getBlockState(posDown.east())); + lava = lava || BlocksHelper.isLava(world.getBlockState(posDown.west())); + if (lava) { + return up == this ? this.getDefaultState().with(TOP, false) : this.getDefaultState(); + } + return Blocks.AIR.getDefaultState(); + } + else if (down.getBlock() != this) + return Blocks.AIR.getDefaultState(); + else if (up != this) + return this.getDefaultState(); + else + return this.getDefaultState().with(TOP, false); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + BlockPos posDown = pos.down(); + BlockState down = world.getBlockState(posDown); + if (BlocksHelper.isNetherGround(down)) { + boolean lava = BlocksHelper.isLava(world.getBlockState(posDown.north())); + lava = lava || BlocksHelper.isLava(world.getBlockState(posDown.south())); + lava = lava || BlocksHelper.isLava(world.getBlockState(posDown.east())); + lava = lava || BlocksHelper.isLava(world.getBlockState(posDown.west())); + return lava; + } + else + return down.getBlock() == this; + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + if (!isValidPosition(state, world, pos)) { + world.destroyBlock(pos, true); + return; + } + if (state.get(TOP).booleanValue()) { + BlockPos up = pos.up(); + boolean grow = world.isAirBlock(up); + if (grow) { + int length = BlocksHelper.getLengthDown(world, pos, this); + boolean isFertile = BlocksHelper.isFertile(world.getBlockState(pos.down(length))); + if (isFertile) + length -= 2; + grow = (length < 3) && (isFertile ? (random.nextInt(8) == 0) : (random.nextInt(16) == 0)); + if (grow) { + BlocksHelper.setWithUpdate(world, up, getDefaultState()); + BlocksHelper.setWithUpdate(world, pos, getDefaultState().with(TOP, false)); + } + } + } + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockNetherRuby.java b/src/main/java/redd90/betternether/blocks/BlockNetherRuby.java new file mode 100644 index 0000000..953b5ca --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockNetherRuby.java @@ -0,0 +1,10 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Blocks; + +public class BlockNetherRuby extends BlockBase { + public BlockNetherRuby() { + super(AbstractBlock.Properties.from(Blocks.DIAMOND_BLOCK)); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockNetherSakuraLeaves.java b/src/main/java/redd90/betternether/blocks/BlockNetherSakuraLeaves.java new file mode 100644 index 0000000..1cb42eb --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockNetherSakuraLeaves.java @@ -0,0 +1,86 @@ +package redd90.betternether.blocks; + +import java.util.List; +import java.util.Random; + +import com.google.common.collect.Lists; + +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.enchantment.EnchantmentHelper; +import net.minecraft.enchantment.Enchantments; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.particles.BlockParticleData; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.shapes.VoxelShapes; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.World; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import net.minecraftforge.common.Tags; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.materials.MaterialBuilder; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockNetherSakuraLeaves extends BlockBaseNotFull { + private static final Random RANDOM = new Random(); + private static final int COLOR = MHelper.color(251, 113, 143); + + public BlockNetherSakuraLeaves() { + super(MaterialBuilder.makeLeaves(MaterialColor.PINK).setLightLevel((state) -> { + return 13; + })); + this.setDropItself(false); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return super.getAmbientOcclusionLightValue(state, view, pos) * 0.5F + 0.5F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + public VoxelShape getCollisionShape(BlockState state, IBlockReader world, BlockPos pos) { + return VoxelShapes.empty(); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + ItemStack tool = builder.get(LootParameters.TOOL); + if (tool != null && tool.getItem().isIn(Tags.Items.SHEARS) || EnchantmentHelper.getEnchantmentLevel(Enchantments.SILK_TOUCH, tool) > 0) { + return Lists.newArrayList(new ItemStack(this.asItem())); + } + else { + return RANDOM.nextInt(5) == 0 ? Lists.newArrayList(new ItemStack(BlocksRegistry.NETHER_SAKURA_SAPLING)) : super.getDrops(state, builder); + } + } + + @Override + @OnlyIn(Dist.CLIENT) + public void animateTick(BlockState state, World world, BlockPos pos, Random random) { + if (random.nextInt(10) == 0) { + BlockPos blockPos = pos.down(); + if (world.isAirBlock(blockPos)) { + double x = (double) pos.getX() + random.nextDouble(); + double y = (double) pos.getY() - 0.05D; + double z = (double) pos.getZ() + random.nextDouble(); + world.addParticle(new BlockParticleData(ParticleTypes.FALLING_DUST, state), x, y, z, 0.0D, 0.0D, 0.0D); + } + } + } + + @OnlyIn(Dist.CLIENT) + public int getColor(BlockState state, IBlockReader world, BlockPos pos) { + return COLOR; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockNetherSakuraSapling.java b/src/main/java/redd90/betternether/blocks/BlockNetherSakuraSapling.java new file mode 100644 index 0000000..ef6babd --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockNetherSakuraSapling.java @@ -0,0 +1,80 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.plants.StructureNetherSakura; + +public class BlockNetherSakuraSapling extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = Block.makeCuboidShape(4, 2, 4, 12, 16, 12); + private static final StructureNetherSakura STRUCTURE = new StructureNetherSakura(); + + public BlockNetherSakuraSapling() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.PINK) + .sound(SoundType.CROP) + .notSolid() + .noDrops() + .zeroHardnessAndResistance() + .doesNotBlockMovement() + .tickRandomly() + .setLightLevel((state) -> {return 10;})); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isNetherrack(world.getBlockState(pos.up())); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return random.nextInt(16) == 0; + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + STRUCTURE.grow(world, pos, random, false); + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canUseBonemeal(world, random, pos, state)) + grow(world, random, pos, state); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockObsidianGlass.java b/src/main/java/redd90/betternether/blocks/BlockObsidianGlass.java new file mode 100644 index 0000000..a63d730 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockObsidianGlass.java @@ -0,0 +1,41 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockReader; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; + +public class BlockObsidianGlass extends BlockBaseNotFull { + public BlockObsidianGlass() { + super(AbstractBlock.Properties.from(Blocks.OBSIDIAN) + .notSolid() + .setSuffocates((arg1, arg2, arg3) -> { + return false; + }) + .setBlocksVision((arg1, arg2, arg3) -> { + return false; + })); + this.setRenderLayer(BNRenderLayer.TRANSLUCENT); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + @OnlyIn(Dist.CLIENT) + public boolean isSideInvisible(BlockState state, BlockState neighbor, Direction facing) { + return neighbor.getBlock() == this ? true : super.isSideInvisible(state, neighbor, facing); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockOrangeMushroom.java b/src/main/java/redd90/betternether/blocks/BlockOrangeMushroom.java new file mode 100644 index 0000000..d1cc732 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockOrangeMushroom.java @@ -0,0 +1,42 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.shapes.VoxelShapes; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorldReader; +import redd90.betternether.BlocksHelper; + +public class BlockOrangeMushroom extends BlockCommonPlant { + private static final VoxelShape[] SHAPES = new VoxelShape[] { + VoxelShapes.create(0.25, 0.0, 0.25, 0.75, 0.375, 0.75), + VoxelShapes.create(0.125, 0.0, 0.125, 0.875, 0.625, 0.875), + VoxelShapes.create(0.0625, 0.0, 0.0625, 0.9375, 0.875, 0.9375), + VoxelShapes.create(0.0, 0.0, 0.0, 1.0, 1.0, 1.0) + }; + + public BlockOrangeMushroom() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.ADOBE) + .sound(SoundType.CROP) + .notSolid() + .hardnessAndResistance(0.5F) + .tickRandomly() + .doesNotBlockMovement()); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isNetherMycelium(world.getBlockState(pos.down())); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPES[state.get(AGE)]; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockOre.java b/src/main/java/redd90/betternether/blocks/BlockOre.java new file mode 100644 index 0000000..9c403b2 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockOre.java @@ -0,0 +1,53 @@ +package redd90.betternether.blocks; + +import java.util.List; + +import com.google.common.collect.Lists; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.OreBlock; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.enchantment.EnchantmentHelper; +import net.minecraft.enchantment.Enchantments; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.util.math.MathHelper; +import redd90.betternether.MHelper; + +public class BlockOre extends OreBlock { + private final Item dropItem; + private final int minCount; + private final int maxCount; + + public BlockOre(Item drop, int minCount, int maxCount) { + super(AbstractBlock.Properties.create(Material.ROCK) + .setRequiresTool() + .hardnessAndResistance(3F, 5F) + .sound(SoundType.NETHERRACK)); + this.dropItem = drop; + this.minCount = minCount; + this.maxCount = maxCount; + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + ItemStack tool = builder.get(LootParameters.TOOL); + if (tool.canHarvestBlock(state)) { + int enchant = EnchantmentHelper.getEnchantmentLevel(Enchantments.SILK_TOUCH, tool); + if (enchant > 0) { + return Lists.newArrayList(new ItemStack(this)); + } + enchant = EnchantmentHelper.getEnchantmentLevel(Enchantments.FORTUNE, tool); + int min = MathHelper.clamp(minCount + enchant, 0, maxCount); + if (min == maxCount) + return Lists.newArrayList(new ItemStack(dropItem, maxCount)); + int count = MHelper.randRange(min, maxCount, MHelper.RANDOM); + return Lists.newArrayList(new ItemStack(dropItem, count)); + } + return Lists.newArrayList(); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockPlantWall.java b/src/main/java/redd90/betternether/blocks/BlockPlantWall.java new file mode 100644 index 0000000..05ad59e --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockPlantWall.java @@ -0,0 +1,103 @@ +package redd90.betternether.blocks; + +import java.util.EnumMap; + +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.Maps; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.HorizontalBlock; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.state.DirectionProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.materials.MaterialBuilder; + +public class BlockPlantWall extends BlockBaseNotFull { + private static final EnumMap BOUNDING_SHAPES = Maps.newEnumMap(ImmutableMap.of( + Direction.NORTH, Block.makeCuboidShape(2, 2, 10, 14, 14, 16), + Direction.SOUTH, Block.makeCuboidShape(2, 2, 0, 14, 14, 6), + Direction.WEST, Block.makeCuboidShape(10, 2, 2, 16, 14, 14), + Direction.EAST, Block.makeCuboidShape(0, 2, 2, 6, 14, 14))); + public static final DirectionProperty FACING = HorizontalBlock.HORIZONTAL_FACING; + + public BlockPlantWall(MaterialColor color) { + super(MaterialBuilder.makeGrass(color)); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FACING); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return BOUNDING_SHAPES.get(state.get(FACING)); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + Direction direction = (Direction) state.get(FACING); + BlockPos blockPos = pos.offset(direction.getOpposite()); + BlockState blockState = world.getBlockState(blockPos); + return blockState.isSolidSide(world, blockPos, direction); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (isValidPosition(state, world, pos)) + return state; + else + return Blocks.AIR.getDefaultState(); + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + return BlocksHelper.rotateHorizontal(state, rotation, FACING); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + return BlocksHelper.mirrorHorizontal(state, mirror, FACING); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + BlockState blockState = this.getDefaultState(); + IWorldReader IWorldReader = ctx.getWorld(); + BlockPos blockPos = ctx.getPos(); + Direction[] directions = ctx.getNearestLookingDirections(); + for (int i = 0; i < directions.length; ++i) { + Direction direction = directions[i]; + if (direction.getAxis().isHorizontal()) { + Direction direction2 = direction.getOpposite(); + blockState = blockState.with(FACING, direction2); + if (blockState.isValidPosition(IWorldReader, blockPos)) { + return blockState; + } + } + } + return null; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockPottedPlant.java b/src/main/java/redd90/betternether/blocks/BlockPottedPlant.java new file mode 100644 index 0000000..40ee22f --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockPottedPlant.java @@ -0,0 +1,130 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; +import java.util.function.ToIntFunction; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.IStringSerializable; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockPottedPlant extends BlockBaseNotFull { + public static final EnumProperty PLANT = EnumProperty.create("plant", PottedPlantShape.class); + + public BlockPottedPlant() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.BLACK) + .sound(SoundType.CROP) + .notSolid() + .doesNotBlockMovement() + .zeroHardnessAndResistance() + .setLightLevel(getLuminance())); + this.setDropItself(false); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDefaultState(getStateContainer().getBaseState().with(PLANT, PottedPlantShape.AGAVE)); + } + + private static ToIntFunction getLuminance() { + return (blockState) -> { + if (blockState.get(PLANT) == PottedPlantShape.WILLOW) + return 12; + else if (blockState.get(PLANT) == PottedPlantShape.JELLYFISH_MUSHROOM) + return 13; + else + return 0; + }; + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + Block block = state.get(PLANT).getBlock(); + Vector3d vec3d = block.getDefaultState().getOffset(view, pos); + return block.getShape(block.getDefaultState(), view, pos, ePos).withOffset(-vec3d.x, -0.5 - vec3d.y, -vec3d.z); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(PLANT); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return world.getBlockState(pos.down()).getBlock() instanceof BlockBNPot; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + Block block = state.get(PLANT).getBlock(); + return Collections.singletonList(new ItemStack(block.asItem())); + } + + public static BlockState getPlant(Item item) { + for (PottedPlantShape shape : PottedPlantShape.values()) { + if (shape.getItem().equals(item)) + return BlocksRegistry.POTTED_PLANT.getDefaultState().with(PLANT, shape); + } + return null; + } + + public static enum PottedPlantShape implements IStringSerializable { + AGAVE("agave", BlocksRegistry.AGAVE), BARREL_CACTUS("barrel_cactus", BlocksRegistry.BARREL_CACTUS), BLACK_APPLE("black_apple", BlocksRegistry.BLACK_APPLE_SEED), BLACK_BUSH("black_bush", BlocksRegistry.BLACK_BUSH), EGG_PLANT("egg_plant", + BlocksRegistry.EGG_PLANT), INK_BUSH("ink_bush", BlocksRegistry.INK_BUSH_SEED), REEDS("reeds", BlocksRegistry.NETHER_REED), NETHER_CACTUS("nether_cactus", BlocksRegistry.NETHER_CACTUS), NETHER_GRASS("nether_grass", + BlocksRegistry.NETHER_GRASS), ORANGE_MUSHROOM("orange_mushroom", BlocksRegistry.ORANGE_MUSHROOM), RED_MOLD("red_mold", BlocksRegistry.RED_MOLD), GRAY_MOLD("gray_mold", BlocksRegistry.GRAY_MOLD), MAGMA_FLOWER("magma_flower", + BlocksRegistry.MAGMA_FLOWER), NETHER_WART("nether_wart", BlocksRegistry.WART_SEED), WILLOW("willow", BlocksRegistry.WILLOW_SAPLING), SMOKER("smoker", BlocksRegistry.SMOKER), WART("wart", + Blocks.NETHER_WART), JUNGLE_PLANT("jungle_plant", BlocksRegistry.JUNGLE_PLANT), JELLYFISH_MUSHROOM("jellyfish_mushroom", BlocksRegistry.JELLYFISH_MUSHROOM_SAPLING), SWAMP_GRASS("swamp_grass", + BlocksRegistry.SWAMP_GRASS), SOUL_GRASS("soul_grass", BlocksRegistry.SOUL_GRASS), BONE_GRASS("bone_grass", BlocksRegistry.BONE_GRASS), BONE_MUSHROOM("bone_mushroom", BlocksRegistry.BONE_MUSHROOM); + + private final Block block; + private final String name; + + private PottedPlantShape(String name, Block block) { + this.name = name; + this.block = block; + } + + @Override + public String getString() { + return name; + } + + @Override + public String toString() { + return name; + } + + public Item getItem() { + return block.asItem(); + } + + public Block getBlock() { + return block; + } + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockRedLargeMushroom.java b/src/main/java/redd90/betternether/blocks/BlockRedLargeMushroom.java new file mode 100644 index 0000000..ea1d923 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockRedLargeMushroom.java @@ -0,0 +1,61 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.blocks.materials.MaterialBuilder; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockRedLargeMushroom extends BlockBaseNotFull { + private static final VoxelShape TOP_SHAPE = Block.makeCuboidShape(0, 0.1, 0, 16, 16, 16); + private static final VoxelShape MIDDLE_SHAPE = Block.makeCuboidShape(5, 0, 5, 11, 16, 11); + public static final EnumProperty SHAPE = EnumProperty.create("shape", TripleShape.class); + + public BlockRedLargeMushroom() { + super(MaterialBuilder.makeWood(MaterialColor.RED).notSolid()); + this.setDropItself(false); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return state.get(SHAPE) == TripleShape.TOP ? TOP_SHAPE : MIDDLE_SHAPE; + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + return state.get(SHAPE) == TripleShape.TOP ? new ItemStack(Items.RED_MUSHROOM) : new ItemStack(BlocksRegistry.MUSHROOM_STEM); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + switch (state.get(SHAPE)) { + case BOTTOM: + return state; + case MIDDLE: + case TOP: + default: + return world.getBlockState(pos.down()).getBlock() == this ? state : Blocks.AIR.getDefaultState(); + } + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockRedMold.java b/src/main/java/redd90/betternether/blocks/BlockRedMold.java new file mode 100644 index 0000000..6e832b1 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockRedMold.java @@ -0,0 +1,24 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.IBlockReader; + +public class BlockRedMold extends BlockMold { + private static final VoxelShape SHAPE = Block.makeCuboidShape(2, 0, 2, 14, 12, 14); + + public BlockRedMold() { + super(MaterialColor.RED_TERRACOTTA); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + Vector3d vec3d = state.getOffset(view, pos); + return SHAPE.withOffset(vec3d.x, vec3d.y, vec3d.z); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockReedsBlock.java b/src/main/java/redd90/betternether/blocks/BlockReedsBlock.java new file mode 100644 index 0000000..a0200b1 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockReedsBlock.java @@ -0,0 +1,10 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.material.MaterialColor; +import redd90.betternether.blocks.materials.MaterialBuilder; + +public class BlockReedsBlock extends BNPillar { + public BlockReedsBlock() { + super(MaterialBuilder.makeWood(MaterialColor.CYAN)); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockRubeusCone.java b/src/main/java/redd90/betternether/blocks/BlockRubeusCone.java new file mode 100644 index 0000000..9694935 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockRubeusCone.java @@ -0,0 +1,40 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import redd90.betternether.blocks.materials.MaterialBuilder; + +public class BlockRubeusCone extends BlockBaseNotFull { + private static final VoxelShape SHAPE = Block.makeCuboidShape(3, 3, 3, 13, 16, 13); + + public BlockRubeusCone() { + super(MaterialBuilder.makeWood(MaterialColor.CYAN).notSolid().setLightLevel((state) -> {return 15;})); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return world.getBlockState(pos.up()).isSolidSide(world, pos.up(), Direction.DOWN); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (isValidPosition(state, world, pos)) + return state; + else + return Blocks.AIR.getDefaultState(); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockRubeusLeaves.java b/src/main/java/redd90/betternether/blocks/BlockRubeusLeaves.java new file mode 100644 index 0000000..5576312 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockRubeusLeaves.java @@ -0,0 +1,116 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.IntegerProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.state.properties.BlockStateProperties; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.blocks.materials.MaterialBuilder; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockRubeusLeaves extends BlockBase { + private static final int MAX_DIST = 10; + public static final IntegerProperty DISTANCE_CUSTOM = IntegerProperty.create("dist_custom", 1, MAX_DIST); + public static final BooleanProperty PERSISTENT = BlockStateProperties.PERSISTENT; + + public BlockRubeusLeaves() { + super(MaterialBuilder.makeLeaves(MaterialColor.LIGHT_BLUE)); + this.setDefaultState(this.stateContainer.getBaseState().with(DISTANCE_CUSTOM, 1).with(PERSISTENT, false)); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDropItself(false); + } + + @Override + protected void fillStateContainer(StateContainer.Builder builder) { + builder.add(PERSISTENT, DISTANCE_CUSTOM); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + return updateDistanceFromLogs((BlockState) this.getDefaultState().with(PERSISTENT, true), ctx.getWorld(), ctx.getPos()); + } + + @Override + public boolean ticksRandomly(BlockState state) { + return state.get(DISTANCE_CUSTOM) == MAX_DIST && !(Boolean) state.get(PERSISTENT); + } + + @Override + public void randomTick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + if (!state.get(PERSISTENT) && state.get(DISTANCE_CUSTOM) == MAX_DIST) { + spawnDrops(state, world, pos); + world.removeBlock(pos, false); + } + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + world.setBlockState(pos, updateDistanceFromLogs(state, world, pos), 3); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction direction, BlockState newState, IWorld world, BlockPos pos, BlockPos posFrom) { + int dist = getDistanceFromLog(newState) + 1; + if (dist != 1 || state.get(DISTANCE_CUSTOM) != dist) { + world.getPendingBlockTicks().scheduleTick(pos, this, 1); + } + + return state; + } + + private static BlockState updateDistanceFromLogs(BlockState state, IWorld world, BlockPos pos) { + int dist = MAX_DIST; + BlockPos.Mutable mutable = new BlockPos.Mutable(); + Direction[] dirs = Direction.values(); + int count = dirs.length; + + for (int n = 0; n < count; ++n) { + Direction dir = dirs[n]; + mutable.setAndMove(pos, dir); + dist = Math.min(dist, getDistanceFromLog(world.getBlockState(mutable)) + 1); + if (dist == 1) { + break; + } + } + + return (BlockState) state.with(DISTANCE_CUSTOM, dist); + } + + private static int getDistanceFromLog(BlockState state) { + if (state.getBlock() == BlocksRegistry.RUBEUS_LOG || state.getBlock() == BlocksRegistry.RUBEUS_BARK) { + return 0; + } + else { + return state.getBlock() instanceof BlockRubeusLeaves ? state.get(DISTANCE_CUSTOM) : MAX_DIST; + } + } + + @OnlyIn(Dist.CLIENT) + public void randomDisplayTick(BlockState state, World world, BlockPos pos, Random random) { + if (world.isRainingAt(pos.up())) { + if (random.nextInt(15) == 1) { + BlockPos blockPos = pos.down(); + BlockState blockState = world.getBlockState(blockPos); + if (!blockState.isSolid() || !blockState.isSolidSide(world, blockPos, Direction.UP)) { + double d = (double) ((float) pos.getX() + random.nextFloat()); + double e = (double) pos.getY() - 0.05D; + double f = (double) ((float) pos.getZ() + random.nextFloat()); + world.addParticle(ParticleTypes.DRIPPING_WATER, d, e, f, 0.0D, 0.0D, 0.0D); + } + } + } + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockRubeusSapling.java b/src/main/java/redd90/betternether/blocks/BlockRubeusSapling.java new file mode 100644 index 0000000..14ef4ac --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockRubeusSapling.java @@ -0,0 +1,79 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.plants.StructureRubeus; + +public class BlockRubeusSapling extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 14, 12); + private static final StructureRubeus STRUCTURE = new StructureRubeus(); + + public BlockRubeusSapling() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.RED) + .sound(SoundType.CROP) + .notSolid() + .noDrops() + .zeroHardnessAndResistance() + .doesNotBlockMovement() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isNetherGround(world.getBlockState(pos.down())); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return BlocksHelper.isFertile(world.getBlockState(pos.down())) ? (random.nextInt(8) == 0) : (random.nextInt(16) == 0); + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + STRUCTURE.grow(world, pos, random, false); + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canUseBonemeal(world, random, pos, state)) + grow(world, random, pos, state); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockSmallLantern.java b/src/main/java/redd90/betternether/blocks/BlockSmallLantern.java new file mode 100644 index 0000000..2048678 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockSmallLantern.java @@ -0,0 +1,104 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.state.DirectionProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.state.properties.BlockStateProperties; +import net.minecraft.util.Direction; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockSmallLantern extends BlockBaseNotFull { + private static final VoxelShape SHAPE_NORTH = Block.makeCuboidShape(5, 0, 8, 11, 16, 16); + private static final VoxelShape SHAPE_SOUTH = Block.makeCuboidShape(5, 0, 0, 11, 16, 8); + private static final VoxelShape SHAPE_WEST = Block.makeCuboidShape(8, 0, 5, 16, 16, 11); + private static final VoxelShape SHAPE_EAST = Block.makeCuboidShape(0, 0, 5, 8, 16, 11); + private static final VoxelShape SHAPE_UP = Block.makeCuboidShape(5, 0, 5, 11, 9, 11); + private static final VoxelShape SHAPE_DOWN = Block.makeCuboidShape(5, 3, 5, 11, 16, 11); + + public static final DirectionProperty FACING = BlockStateProperties.FACING; + + public BlockSmallLantern() { + super(AbstractBlock.Properties.from(BlocksRegistry.CINCINNASITE_LANTERN).notSolid()); + this.setDefaultState(getStateContainer().getBaseState().with(FACING, Direction.DOWN)); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FACING); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + switch (state.get(FACING)) { + case NORTH: + return SHAPE_NORTH; + case SOUTH: + return SHAPE_SOUTH; + case EAST: + return SHAPE_EAST; + case WEST: + return SHAPE_WEST; + case UP: + return SHAPE_UP; + case DOWN: + default: + return SHAPE_DOWN; + } + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + Direction direction = (Direction) state.get(FACING).getOpposite(); + return Block.hasEnoughSolidSide(world, pos.offset(direction), direction.getOpposite()); + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + return BlocksHelper.rotateHorizontal(state, rotation, FACING); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + return BlocksHelper.mirrorHorizontal(state, mirror, FACING); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (isValidPosition(state, world, pos)) + return state; + else + return Blocks.AIR.getDefaultState(); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + BlockState blockState = this.getDefaultState(); + IWorldReader worldView = ctx.getWorld(); + BlockPos blockPos = ctx.getPos(); + Direction[] directions = ctx.getNearestLookingDirections(); + for (int i = 0; i < directions.length; ++i) { + Direction direction = directions[i]; + Direction direction2 = direction.getOpposite(); + blockState = blockState.with(FACING, direction2); + if (blockState.isValidPosition(worldView, blockPos)) { + return blockState; + } + } + return null; + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockSmoker.java b/src/main/java/redd90/betternether/blocks/BlockSmoker.java new file mode 100644 index 0000000..a96a03c --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockSmoker.java @@ -0,0 +1,74 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.materials.MaterialBuilder; +import redd90.betternether.blocks.shapes.TripleShape; + +public class BlockSmoker extends BlockBaseNotFull { + private static final VoxelShape TOP_SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 8, 12); + private static final VoxelShape MIDDLE_SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 16, 12); + public static final EnumProperty SHAPE = EnumProperty.create("shape", TripleShape.class); + + public BlockSmoker() { + super(MaterialBuilder.makeWood(MaterialColor.BROWN)); + this.setDefaultState(getStateContainer().getBaseState().with(SHAPE, TripleShape.TOP)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + @OnlyIn(Dist.CLIENT) + public void animateTick(BlockState state, World world, BlockPos pos, Random random) { + if (world.isAirBlock(pos.up())) + world.addParticle(ParticleTypes.LARGE_SMOKE, pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, 0, 0, 0); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return state.get(SHAPE) == TripleShape.TOP ? TOP_SHAPE : MIDDLE_SHAPE; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) { + return Blocks.AIR.getDefaultState(); + } + Block side = world.getBlockState(pos.up()).getBlock(); + if (side != this) + return state.with(SHAPE, TripleShape.TOP); + side = world.getBlockState(pos.down()).getBlock(); + if (side == this) + return state.with(SHAPE, TripleShape.MIDDLE); + else + return state.with(SHAPE, TripleShape.BOTTOM); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + BlockState down = world.getBlockState(pos.down()); + return down.getBlock() == this || BlocksHelper.isNetherGround(down); + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockSoulGrass.java b/src/main/java/redd90/betternether/blocks/BlockSoulGrass.java new file mode 100644 index 0000000..5241b46 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockSoulGrass.java @@ -0,0 +1,34 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.BlocksHelper; + +public class BlockSoulGrass extends BlockNetherGrass { + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isSoulSand(world.getBlockState(pos.down())); + } + + @Override + @OnlyIn(Dist.CLIENT) + public void animateTick(BlockState state, World world, BlockPos pos, Random random) { + if (random.nextInt(4) == 0) { + world.addParticle( + ParticleTypes.PORTAL, + pos.getX() + random.nextDouble(), + pos.getY() + random.nextDouble() * 2, + pos.getZ() + random.nextDouble(), + random.nextDouble() * 0.05, + -1, + random.nextDouble() * 0.05); + } + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockSoulLily.java b/src/main/java/redd90/betternether/blocks/BlockSoulLily.java new file mode 100644 index 0000000..6ef2605 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockSoulLily.java @@ -0,0 +1,240 @@ +package redd90.betternether.blocks; + +import java.util.List; +import java.util.Random; + +import com.google.common.collect.Lists; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.IStringSerializable; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.materials.MaterialBuilder; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.plants.StructureSoulLily; + +public class BlockSoulLily extends BlockBaseNotFull { + public static final EnumProperty SHAPE = EnumProperty.create("shape", SoulLilyShape.class); + + private static final VoxelShape SHAPE_SMALL = Block.makeCuboidShape(6, 0, 6, 10, 16, 10); + private static final VoxelShape SHAPE_MEDIUM_BOTTOM = Block.makeCuboidShape(5, 0, 5, 11, 16, 11); + private static final VoxelShape SHAPE_MEDIUM_TOP = Block.makeCuboidShape(0, 0, 0, 16, 3, 16); + private static final VoxelShape SHAPE_BIG_BOTTOM = Block.makeCuboidShape(3, 0, 3, 13, 16, 13); + private static final VoxelShape SHAPE_BIG_MIDDLE = Block.makeCuboidShape(6, 0, 6, 10, 16, 10); + private static final VoxelShape SHAPE_BIG_TOP_CENTER = Block.makeCuboidShape(0, 0, 0, 16, 4, 16); + private static final VoxelShape SHAPE_BIG_TOP_SIDE_N = Block.makeCuboidShape(0, 4, 0, 16, 6, 8); + private static final VoxelShape SHAPE_BIG_TOP_SIDE_S = Block.makeCuboidShape(0, 4, 8, 16, 6, 16); + private static final VoxelShape SHAPE_BIG_TOP_SIDE_E = Block.makeCuboidShape(8, 4, 0, 16, 6, 16); + private static final VoxelShape SHAPE_BIG_TOP_SIDE_W = Block.makeCuboidShape(0, 4, 0, 8, 6, 16); + + private static final StructureSoulLily STRUCTURE = new StructureSoulLily(); + + private static final SoulLilyShape[] ROT = new SoulLilyShape[] { + SoulLilyShape.BIG_TOP_SIDE_N, + SoulLilyShape.BIG_TOP_SIDE_E, + SoulLilyShape.BIG_TOP_SIDE_S, + SoulLilyShape.BIG_TOP_SIDE_W + }; + + public BlockSoulLily() { + super(MaterialBuilder.makeWood(MaterialColor.ADOBE).notSolid().tickRandomly()); + this.setDefaultState(getStateContainer().getBaseState().with(SHAPE, SoulLilyShape.SMALL)); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + public VoxelShape getOutlineShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + switch (state.get(SHAPE)) { + case BIG_BOTTOM: + return SHAPE_BIG_BOTTOM; + case BIG_MIDDLE: + return SHAPE_BIG_MIDDLE; + case BIG_TOP_CENTER: + return SHAPE_BIG_TOP_CENTER; + case MEDIUM_BOTTOM: + return SHAPE_MEDIUM_BOTTOM; + case MEDIUM_TOP: + return SHAPE_MEDIUM_TOP; + case BIG_TOP_SIDE_N: + return SHAPE_BIG_TOP_SIDE_N; + case BIG_TOP_SIDE_S: + return SHAPE_BIG_TOP_SIDE_S; + case BIG_TOP_SIDE_E: + return SHAPE_BIG_TOP_SIDE_E; + case BIG_TOP_SIDE_W: + return SHAPE_BIG_TOP_SIDE_W; + case SMALL: + default: + return SHAPE_SMALL; + } + } + + public enum SoulLilyShape implements IStringSerializable { + SMALL("small"), MEDIUM_BOTTOM("medium_bottom"), MEDIUM_TOP("medium_top"), BIG_BOTTOM("big_bottom"), BIG_MIDDLE("big_middle"), BIG_TOP_CENTER("big_top_center"), BIG_TOP_SIDE_N("big_top_side_n"), BIG_TOP_SIDE_S( + "big_top_side_s"), BIG_TOP_SIDE_E("big_top_side_e"), BIG_TOP_SIDE_W("big_top_side_w"); + + final String name; + + SoulLilyShape(String name) { + this.name = name; + } + + @Override + public String getString() { + return name; + } + + @Override + public String toString() { + return name; + } + } + + public boolean canGrow(World world, BlockPos pos, Random random) { + BlockState state = world.getBlockState(pos.down()); + if (state.getBlock() == this || state.getBlock() == Blocks.SOUL_SAND || BlocksHelper.isFertile(world.getBlockState(pos.down()))) { + return BlocksHelper.isFertile(world.getBlockState(pos.down())) ? (random.nextInt(8) == 0) : (random.nextInt(16) == 0); + } + return false; + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canGrow(world, pos, random)) { + SoulLilyShape shape = state.get(SHAPE); + if (shape == SoulLilyShape.SMALL && world.isAirBlock(pos.up())) { + STRUCTURE.growMedium(world, pos); + } + else if (shape == SoulLilyShape.MEDIUM_BOTTOM && world.isAirBlock(pos.up(2)) && isAirSides(world, pos.up(2))) { + STRUCTURE.growBig(world, pos); + } + } + } + + private boolean isAirSides(World world, BlockPos pos) { + return world.isAirBlock(pos.north()) && world.isAirBlock(pos.south()) && world.isAirBlock(pos.east()) && world.isAirBlock(pos.west()); + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + SoulLilyShape shape = state.get(SHAPE); + int index = getRotationIndex(shape); + if (index < 0) + return state; + int offset = rotOffset(rotation); + return state.with(SHAPE, ROT[(index + offset) & 3]); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + SoulLilyShape shape = state.get(SHAPE); + int index = getRotationIndex(shape); + if (index < 0) + return state; + if (mirror == Mirror.FRONT_BACK) { + if (shape == SoulLilyShape.BIG_TOP_SIDE_E) + shape = SoulLilyShape.BIG_TOP_SIDE_W; + else if (shape == SoulLilyShape.BIG_TOP_SIDE_W) + shape = SoulLilyShape.BIG_TOP_SIDE_E; + } + else if (mirror == Mirror.LEFT_RIGHT) { + if (shape == SoulLilyShape.BIG_TOP_SIDE_N) + shape = SoulLilyShape.BIG_TOP_SIDE_S; + else if (shape == SoulLilyShape.BIG_TOP_SIDE_S) + shape = SoulLilyShape.BIG_TOP_SIDE_N; + } + return state.with(SHAPE, shape); + } + + private int getRotationIndex(SoulLilyShape shape) { + for (int i = 0; i < 4; i++) { + if (shape == ROT[i]) + return i; + } + return -1; + } + + private int rotOffset(Rotation rotation) { + if (rotation == Rotation.NONE) + return 0; + else if (rotation == Rotation.CLOCKWISE_90) + return 1; + else if (rotation == Rotation.CLOCKWISE_180) + return 2; + else + return 3; + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + return new ItemStack(BlocksRegistry.SOUL_LILY_SAPLING); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + SoulLilyShape shape = state.get(SHAPE); + if (shape == SoulLilyShape.BIG_TOP_SIDE_N) + return world.getBlockState(pos.north()).getBlock() == this; + if (shape == SoulLilyShape.BIG_TOP_SIDE_S) + return world.getBlockState(pos.south()).getBlock() == this; + if (shape == SoulLilyShape.BIG_TOP_SIDE_E) + return world.getBlockState(pos.east()).getBlock() == this; + if (shape == SoulLilyShape.BIG_TOP_SIDE_W) + return world.getBlockState(pos.west()).getBlock() == this; + BlockState down = world.getBlockState(pos.down()); + return down.getBlock() == this || BlocksHelper.isSoulSand(down); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + return isValidPosition(state, world, pos) ? state : Blocks.AIR.getDefaultState(); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + switch (state.get(SHAPE)) { + case BIG_BOTTOM: + case BIG_MIDDLE: + return Lists.newArrayList(new ItemStack(BlocksRegistry.MUSHROOM_STEM)); + case BIG_TOP_CENTER: + return Lists.newArrayList(new ItemStack(BlocksRegistry.MUSHROOM_STEM), new ItemStack(BlocksRegistry.SOUL_LILY_SAPLING)); + case MEDIUM_BOTTOM: + return Lists.newArrayList(new ItemStack(BlocksRegistry.MUSHROOM_STEM)); + case BIG_TOP_SIDE_N: + case BIG_TOP_SIDE_S: + case BIG_TOP_SIDE_E: + case BIG_TOP_SIDE_W: + return Lists.newArrayList(new ItemStack(BlocksRegistry.MUSHROOM_STEM), new ItemStack(BlocksRegistry.SOUL_LILY_SAPLING, MHelper.randRange(0, 1, MHelper.RANDOM))); + case SMALL: + case MEDIUM_TOP: + default: + return Lists.newArrayList(new ItemStack(BlocksRegistry.MUSHROOM_STEM), new ItemStack(BlocksRegistry.SOUL_LILY_SAPLING)); + } + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockSoulLilySapling.java b/src/main/java/redd90/betternether/blocks/BlockSoulLilySapling.java new file mode 100644 index 0000000..80f98fe --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockSoulLilySapling.java @@ -0,0 +1,20 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorldReader; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockSoulLilySapling extends BlockCommonSapling { + public BlockSoulLilySapling() { + super(BlocksRegistry.SOUL_LILY, MaterialColor.ADOBE); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + BlockState ground = world.getBlockState(pos.down()); + return BlocksHelper.isSoulSand(ground) || ground.getBlock() == BlocksRegistry.FARMLAND; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockSoulSandstone.java b/src/main/java/redd90/betternether/blocks/BlockSoulSandstone.java new file mode 100644 index 0000000..11a4f36 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockSoulSandstone.java @@ -0,0 +1,35 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; + +public class BlockSoulSandstone extends BlockBase { + public static final BooleanProperty UP = BooleanProperty.create("up"); + + public BlockSoulSandstone() { + super(AbstractBlock.Properties.from(Blocks.SANDSTONE)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(UP); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + return state.with(UP, world.getBlockState(pos.up()).getBlock() != this); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + return this.getDefaultState().with(UP, ctx.getWorld().getBlockState(ctx.getPos().up()).getBlock() != this); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockSoulVein.java b/src/main/java/redd90/betternether/blocks/BlockSoulVein.java new file mode 100644 index 0000000..7227031 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockSoulVein.java @@ -0,0 +1,91 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.entity.LivingEntity; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.common.Tags; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockSoulVein extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = Block.makeCuboidShape(0, 0, 0, 16, 1, 16); + + public BlockSoulVein() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.PURPLE) + .sound(SoundType.CROP) + .notSolid() + .doesNotBlockMovement() + .zeroHardnessAndResistance() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + Block block = world.getBlockState(pos.down()).getBlock(); + return block == Blocks.SOUL_SAND || block == BlocksRegistry.VEINED_SAND; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (isValidPosition(state, world, pos)) + return state; + else + return Blocks.AIR.getDefaultState(); + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return true; + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + spawnAsEntity(world, pos, new ItemStack(this.asItem())); + } + + public void onPlaced(World world, BlockPos pos, BlockState state, LivingEntity placer, ItemStack itemStack) { + if (world.getBlockState(pos.down()).getBlock() == Blocks.SOUL_SAND) + world.setBlockState(pos.down(), BlocksRegistry.VEINED_SAND.getDefaultState()); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + if (builder.get(LootParameters.TOOL).getItem().isIn(Tags.Items.SHEARS)) + return Collections.singletonList(new ItemStack(this.asItem())); + else + return super.getDrops(state, builder); + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockStalactite.java b/src/main/java/redd90/betternether/blocks/BlockStalactite.java new file mode 100644 index 0000000..dc09fd6 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockStalactite.java @@ -0,0 +1,113 @@ +package redd90.betternether.blocks; + +import javax.annotation.Nullable; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.entity.LivingEntity; +import net.minecraft.item.ItemStack; +import net.minecraft.state.IntegerProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; + +public class BlockStalactite extends BlockBaseNotFull { + public static final IntegerProperty SIZE = IntegerProperty.create("size", 0, 7); + private static final Mutable POS = new Mutable(); + private static final VoxelShape[] SHAPES; + + public BlockStalactite(Block source) { + super(AbstractBlock.Properties.from(source).notSolid()); + this.setDefaultState(getStateContainer().getBaseState().with(SIZE, 0)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SIZE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPES[state.get(SIZE)]; + } + + @Override + public void onBlockPlacedBy(World world, BlockPos pos, BlockState state, @Nullable LivingEntity placer, ItemStack itemStack) { + if (world.getBlockState(pos.down()).getBlock() instanceof BlockStalactite) { + POS.setX(pos.getX()); + POS.setZ(pos.getZ()); + for (int i = 1; i < 8; i++) { + POS.setY(pos.getY() - i); + if (world.getBlockState(POS).getBlock() instanceof BlockStalactite) { + BlockState state2 = world.getBlockState(POS); + int size = state2.get(SIZE); + if (size < i) { + world.setBlockState(POS, state2.with(SIZE, i)); + } + else + break; + } + else + break; + } + } + if (world.getBlockState(pos.up()).getBlock() instanceof BlockStalactite) { + POS.setX(pos.getX()); + POS.setZ(pos.getZ()); + for (int i = 1; i < 8; i++) { + POS.setY(pos.getY() + i); + if (world.getBlockState(POS).getBlock() instanceof BlockStalactite) { + BlockState state2 = world.getBlockState(POS); + int size = state2.get(SIZE); + if (size < i) { + world.setBlockState(POS, state2.with(SIZE, i)); + } + else + break; + } + else + break; + } + } + } + + @Override + public void onPlayerDestroy(IWorld world, BlockPos pos, BlockState state) { + BlockPos pos2 = pos.up(); + BlockState state2 = world.getBlockState(pos2); + if (state2.getBlock() instanceof BlockStalactite && state2.get(SIZE) < state.get(SIZE)) { + state2.getBlock().onPlayerDestroy(world, pos2, state2); + world.destroyBlock(pos2, true); + } + + pos2 = pos.down(); + state2 = world.getBlockState(pos2); + if (state2.getBlock() instanceof BlockStalactite && state2.get(SIZE) < state.get(SIZE)) { + state2.getBlock().onPlayerDestroy(world, pos2, state2); + world.destroyBlock(pos2, true); + } + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return canPlace(world, pos, Direction.UP) || canPlace(world, pos, Direction.DOWN); + } + + private boolean canPlace(IWorldReader world, BlockPos pos, Direction dir) { + return world.getBlockState(pos.offset(dir)).getBlock() instanceof BlockStalactite || Block.hasEnoughSolidSide(world, pos.offset(dir), dir.getOpposite()); + } + + static { + SHAPES = new VoxelShape[8]; + for (int i = 0; i < 8; i++) + SHAPES[i] = Block.makeCuboidShape(7 - i, 0, 7 - i, 9 + i, 16, 9 + i); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockStalagnate.java b/src/main/java/redd90/betternether/blocks/BlockStalagnate.java new file mode 100644 index 0000000..1292dec --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockStalagnate.java @@ -0,0 +1,51 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.blocks.materials.MaterialBuilder; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockStalagnate extends BlockBaseNotFull { + private static final VoxelShape SELECT_SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 16, 12); + private static final VoxelShape COLLISION_SHAPE = Block.makeCuboidShape(5, 0, 5, 11, 16, 11); + public static final EnumProperty SHAPE = EnumProperty.create("shape", TripleShape.class); + + public BlockStalagnate() { + super(MaterialBuilder.makeWood(MaterialColor.LIME_TERRACOTTA).notSolid()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDefaultState(getStateContainer().getBaseState().with(SHAPE, TripleShape.MIDDLE)); + this.setDropItself(false); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SELECT_SHAPE; + } + + @Override + public VoxelShape getCollisionShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return COLLISION_SHAPE; + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + return new ItemStack(BlocksRegistry.STALAGNATE_STEM); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockStalagnateBowl.java b/src/main/java/redd90/betternether/blocks/BlockStalagnateBowl.java new file mode 100644 index 0000000..c773104 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockStalagnateBowl.java @@ -0,0 +1,62 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import redd90.betternether.blocks.shapes.FoodShape; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockStalagnateBowl extends BlockBaseNotFull { + private static final VoxelShape SHAPE = Block.makeCuboidShape(5, 0, 5, 11, 3, 11); + public static final EnumProperty FOOD = EnumProperty.create("food", FoodShape.class); + + public BlockStalagnateBowl() { + super(AbstractBlock.Properties.from(BlocksRegistry.STALAGNATE).notSolid()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDefaultState(getStateContainer().getBaseState().with(FOOD, FoodShape.NONE)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FOOD); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(state.get(FOOD).getItem())); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + BlockPos down = pos.down(); + return world.getBlockState(down).isSolidSide(world, down, Direction.UP); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockStalagnateSeed.java b/src/main/java/redd90/betternether/blocks/BlockStalagnateSeed.java new file mode 100644 index 0000000..1fd3a74 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockStalagnateSeed.java @@ -0,0 +1,117 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.plants.StructureStalagnate; + +public class BlockStalagnateSeed extends BlockBaseNotFull implements IGrowable { + protected static final VoxelShape SHAPE_TOP = Block.makeCuboidShape(4, 6, 4, 12, 16, 12); + protected static final VoxelShape SHAPE_BOTTOM = Block.makeCuboidShape(4, 0, 4, 12, 12, 12); + private static final StructureStalagnate STRUCTURE = new StructureStalagnate(); + public static final BooleanProperty TOP = BooleanProperty.create("top"); + + public BlockStalagnateSeed() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.CYAN) + .sound(SoundType.CROP) + .notSolid() + .zeroHardnessAndResistance() + .doesNotBlockMovement() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDefaultState(getStateContainer().getBaseState().with(TOP, true)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(TOP); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + BlockState blockState = this.getDefaultState(); + if (ctx.getFace() == Direction.DOWN) + return blockState; + else if (ctx.getFace() == Direction.UP) + return blockState.with(TOP, false); + else + return null; + } + + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return state.get(TOP).booleanValue() ? SHAPE_TOP : SHAPE_BOTTOM; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + if (random.nextInt(16) == 0) { + if (state.get(TOP).booleanValue()) + return BlocksHelper.downRay(world, pos, StructureStalagnate.MIN_LENGTH) > 0; + else + return BlocksHelper.upRay(world, pos, StructureStalagnate.MIN_LENGTH) > 0; + } + return false; + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + if (state.get(TOP).booleanValue()) + STRUCTURE.generateDown(world, pos, random); + else + STRUCTURE.generate(world, pos, random); + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isNetherrack(world.getBlockState(pos.up())) || BlocksHelper.isNetherrack(world.getBlockState(pos.down())); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (state.get(TOP).booleanValue()) { + if (BlocksHelper.isNetherrack(world.getBlockState(pos.up()))) + return state; + else + return Blocks.AIR.getDefaultState(); + } + else { + if (BlocksHelper.isNetherrack(world.getBlockState(pos.down()))) + return state; + else + return Blocks.AIR.getDefaultState(); + } + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canUseBonemeal(world, random, pos, state)) { + grow(world, random, pos, state); + } + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockStatueRespawner.java b/src/main/java/redd90/betternether/blocks/BlockStatueRespawner.java new file mode 100644 index 0000000..adfe640 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockStatueRespawner.java @@ -0,0 +1,145 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.HorizontalBlock; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.player.ServerPlayerEntity; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.particles.RedstoneParticleData; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.DirectionProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.ActionResultType; +import net.minecraft.util.Direction; +import net.minecraft.util.Hand; +import net.minecraft.util.Mirror; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.Rotation; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockRayTraceResult; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.text.TranslationTextComponent; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.registries.ForgeRegistries; +import redd90.betternether.BlocksHelper; +import redd90.betternether.config.Configs; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockStatueRespawner extends BlockBaseNotFull { + private static final VoxelShape SHAPE = Block.makeCuboidShape(1, 0, 1, 15, 16, 15); + private static final RedstoneParticleData EFFECT = new RedstoneParticleData(1, 0, 0, 1.0F); + public static final DirectionProperty FACING = HorizontalBlock.HORIZONTAL_FACING; + public static final BooleanProperty TOP = BooleanProperty.create("top"); + private final ItemStack requiredItem; + + public BlockStatueRespawner() { + super(AbstractBlock.Properties.from(BlocksRegistry.CINCINNASITE_BLOCK).notSolid().setLightLevel((state) -> {return 15;})); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDefaultState(getStateContainer().getBaseState().with(FACING, Direction.NORTH).with(TOP, false)); + this.setDropItself(false); + + String itemName = Configs.MAIN.getString("respawn_statue", "respawn_item", ForgeRegistries.ITEMS.getKey(Items.GLOWSTONE).toString()); + Item item = ForgeRegistries.ITEMS.getValue(new ResourceLocation(itemName)); + if (item == Items.AIR) + item = Items.GLOWSTONE; + int count = Configs.MAIN.getInt("respawn_statue", "item_count", 4); + requiredItem = new ItemStack(item, count); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FACING, TOP); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + return this.getDefaultState().with(FACING, ctx.getPlacementHorizontalFacing().getOpposite()); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public ActionResultType onBlockActivated(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockRayTraceResult hit) { + ItemStack stack = player.getHeldItemMainhand(); + if (stack.getItem() == requiredItem.getItem() && stack.getCount() >= requiredItem.getCount()) { + float y = state.get(TOP) ? 0.4F : 1.4F; + if (!player.isCreative()) { + player.getHeldItemMainhand().shrink(requiredItem.getCount()); + } + for (int i = 0; i < 50; i++) + world.addParticle(EFFECT, + pos.getX() + world.rand.nextFloat(), + pos.getY() + y + world.rand.nextFloat() * 0.2, + pos.getZ() + world.rand.nextFloat(), 0, 0, 0); + player.sendStatusMessage(new TranslationTextComponent("message.spawn_set", new Object[0]), true); + if (!world.isRemote) { + ((ServerPlayerEntity) player).func_242111_a(world.getDimensionKey(), pos, player.getRotationYawHead(), false, true); + } + player.playSound(SoundEvents.ITEM_TOTEM_USE, 0.7F, 1.0F); + return ActionResultType.SUCCESS; + } + else { + player.sendStatusMessage(new TranslationTextComponent("message.spawn_help", requiredItem), true); + } + return ActionResultType.SUCCESS; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + if (state.get(TOP)) + return true; + BlockState up = world.getBlockState(pos.up()); + return up.isAir() || (up.getBlock() == this && up.get(TOP)); + } + + @Override + public void onBlockPlacedBy(World world, BlockPos pos, BlockState state, LivingEntity placer, ItemStack itemStack) { + if (!world.isRemote()) + BlocksHelper.setWithUpdate((ServerWorld) world, pos.up(), state.with(TOP, true)); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (state.get(TOP)) { + return world.getBlockState(pos.down()).getBlock() == this ? state : Blocks.AIR.getDefaultState(); + } + else { + return world.getBlockState(pos.up()).getBlock() == this ? state : Blocks.AIR.getDefaultState(); + } + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + return BlocksHelper.rotateHorizontal(state, rotation, FACING); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + return BlocksHelper.mirrorHorizontal(state, mirror, FACING); + } + + @Override + public void onBlockHarvested(World world, BlockPos pos, BlockState state, PlayerEntity player) { + if (player.isCreative() && state.get(TOP) && world.getBlockState(pos.down()).getBlock() == this) { + world.setBlockState(pos.down(), Blocks.AIR.getDefaultState()); + } + super.onBlockHarvested(world, pos, state, player); + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockStem.java b/src/main/java/redd90/betternether/blocks/BlockStem.java new file mode 100644 index 0000000..5025d6c --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockStem.java @@ -0,0 +1,76 @@ +package redd90.betternether.blocks; + +import java.util.EnumMap; + +import com.google.common.collect.Maps; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.state.properties.BlockStateProperties; +import net.minecraft.util.Direction; +import net.minecraft.util.Direction.Axis; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import redd90.betternether.blocks.materials.MaterialBuilder; + + +public class BlockStem extends BlockBaseNotFull { + public static final EnumProperty AXIS = BlockStateProperties.AXIS; + private static final EnumMap OUTLINES = Maps.newEnumMap(Axis.class); + + public BlockStem(MaterialColor color) { + super(MaterialBuilder.makeWood(color).notSolid()); + this.setDefaultState(this.getDefaultState().with(AXIS, Axis.Y)); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return OUTLINES.get(state.get(AXIS)); + } + + @Override + public VoxelShape getCollisionShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return OUTLINES.get(state.get(AXIS)); + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + switch (rotation) { + case COUNTERCLOCKWISE_90: + case CLOCKWISE_90: + switch ((Direction.Axis) state.get(AXIS)) { + case X: + return (BlockState) state.with(AXIS, Direction.Axis.Z); + case Z: + return (BlockState) state.with(AXIS, Direction.Axis.X); + default: + return state; + } + default: + return state; + } + } + + @Override + protected void fillStateContainer(StateContainer.Builder builder) { + builder.add(AXIS); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + return (BlockState) this.getDefaultState().with(AXIS, ctx.getFace().getAxis()); + } + + static { + OUTLINES.put(Axis.X, Block.makeCuboidShape(0, 5, 5, 16, 11, 11)); + OUTLINES.put(Axis.Y, Block.makeCuboidShape(5, 0, 5, 11, 16, 11)); + OUTLINES.put(Axis.Z, Block.makeCuboidShape(5, 5, 0, 11, 11, 16)); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockTerrain.java b/src/main/java/redd90/betternether/blocks/BlockTerrain.java new file mode 100644 index 0000000..59ba47d --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockTerrain.java @@ -0,0 +1,42 @@ +package redd90.betternether.blocks; + +import java.util.Collections; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.enchantment.EnchantmentHelper; +import net.minecraft.enchantment.Enchantments; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.util.SoundEvents; + +public class BlockTerrain extends BlockBase { + public static final SoundType TERRAIN_SOUND = new SoundType(1.0F, 1.0F, + SoundEvents.BLOCK_NETHERRACK_BREAK, + SoundEvents.BLOCK_WART_BLOCK_STEP, + SoundEvents.BLOCK_NETHERRACK_PLACE, + SoundEvents.BLOCK_NETHERRACK_HIT, + SoundEvents.BLOCK_NETHERRACK_FALL); + + public BlockTerrain() { + super(AbstractBlock.Properties.from(Blocks.NETHERRACK).sound(TERRAIN_SOUND).setRequiresTool()); + this.setDropItself(false); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + ItemStack tool = builder.get(LootParameters.TOOL); + if (tool.canHarvestBlock(state)) { + if (EnchantmentHelper.getEnchantmentLevel(Enchantments.SILK_TOUCH, tool) > 0) + return Collections.singletonList(new ItemStack(this.asItem())); + else + return Collections.singletonList(new ItemStack(Blocks.NETHERRACK)); + } + else + return super.getDrops(state, builder); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockVeinedSand.java b/src/main/java/redd90/betternether/blocks/BlockVeinedSand.java new file mode 100644 index 0000000..4fe2d2a --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockVeinedSand.java @@ -0,0 +1,39 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockVeinedSand extends BlockBase { + public BlockVeinedSand() { + super(AbstractBlock.Properties.create(Material.SAND, MaterialColor.BROWN) + .sound(SoundType.SAND) + .hardnessAndResistance(0.5F, 0.5F)); + this.setDropItself(false); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (world.getBlockState(pos.up()).getBlock() == BlocksRegistry.SOUL_VEIN) + return state; + else + return Blocks.SOUL_SAND.getDefaultState(); + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + return new ItemStack(Blocks.SOUL_SAND); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockWartRoots.java b/src/main/java/redd90/betternether/blocks/BlockWartRoots.java new file mode 100644 index 0000000..571c5e6 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockWartRoots.java @@ -0,0 +1,12 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Blocks; + +public class BlockWartRoots extends BlockBase { + public BlockWartRoots() { + super(AbstractBlock.Properties.from(Blocks.NETHER_WART_BLOCK)); + this.setDropItself(false); + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockWartSeed.java b/src/main/java/redd90/betternether/blocks/BlockWartSeed.java new file mode 100644 index 0000000..0722f32 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockWartSeed.java @@ -0,0 +1,125 @@ +package redd90.betternether.blocks; + +import java.util.EnumMap; +import java.util.Random; + +import com.google.common.collect.Maps; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.state.DirectionProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.state.properties.BlockStateProperties; +import net.minecraft.util.Direction; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.shapes.VoxelShapes; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.plants.StructureWartTree; + +public class BlockWartSeed extends BlockBaseNotFull implements IGrowable { + private static final EnumMap BOUNDING_SHAPES = Maps.newEnumMap(Direction.class); + private static final StructureWartTree STRUCTURE = new StructureWartTree(); + public static final DirectionProperty FACING = BlockStateProperties.FACING; + + static { + BOUNDING_SHAPES.put(Direction.UP, VoxelShapes.create(0.25, 0.0, 0.25, 0.75, 0.5, 0.75)); + BOUNDING_SHAPES.put(Direction.DOWN, VoxelShapes.create(0.25, 0.5, 0.25, 0.75, 1.0, 0.75)); + BOUNDING_SHAPES.put(Direction.NORTH, VoxelShapes.create(0.25, 0.25, 0.5, 0.75, 0.75, 1.0)); + BOUNDING_SHAPES.put(Direction.SOUTH, VoxelShapes.create(0.25, 0.25, 0.0, 0.75, 0.75, 0.5)); + BOUNDING_SHAPES.put(Direction.WEST, VoxelShapes.create(0.5, 0.25, 0.25, 1.0, 0.75, 0.75)); + BOUNDING_SHAPES.put(Direction.EAST, VoxelShapes.create(0.0, 0.25, 0.25, 0.5, 0.75, 0.75)); + } + + public BlockWartSeed() { + super(AbstractBlock.Properties.create(Material.WOOD, MaterialColor.RED_TERRACOTTA) + .sound(SoundType.WART) + .hardnessAndResistance(1F) + .notSolid() + .doesNotBlockMovement()); + this.setDefaultState(getStateContainer().getBaseState().with(FACING, Direction.UP)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FACING); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return BOUNDING_SHAPES.get(state.get(FACING)); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + BlockState blockState = this.getDefaultState(); + IWorldReader worldView = ctx.getWorld(); + BlockPos blockPos = ctx.getPos(); + Direction[] directions = ctx.getNearestLookingDirections(); + for (int i = 0; i < directions.length; ++i) { + Direction direction = directions[i]; + Direction direction2 = direction.getOpposite(); + blockState = (BlockState) blockState.with(FACING, direction2); + if (blockState.isValidPosition(worldView, blockPos)) { + return blockState; + } + } + return null; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + Direction direction = (Direction) state.get(FACING); + BlockPos blockPos = pos.offset(direction.getOpposite()); + return hasEnoughSolidSide(world, blockPos, direction) || world.getBlockState(pos.down()).getBlock() == Blocks.SOUL_SAND; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + Direction direction = (Direction) state.get(FACING); + return direction == Direction.UP && BlocksHelper.isSoulSand(world.getBlockState(pos.down())); + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return random.nextInt(8) == 0; + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + STRUCTURE.grow(world, pos, random); + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + return BlocksHelper.rotateHorizontal(state, rotation, FACING); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + return BlocksHelper.mirrorHorizontal(state, mirror, FACING); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockWhisperingGourd.java b/src/main/java/redd90/betternether/blocks/BlockWhisperingGourd.java new file mode 100644 index 0000000..95e2f5e --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockWhisperingGourd.java @@ -0,0 +1,10 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.material.MaterialColor; +import redd90.betternether.blocks.materials.MaterialBuilder; + +public class BlockWhisperingGourd extends BlockBase { + public BlockWhisperingGourd() { + super(MaterialBuilder.makeWood(MaterialColor.BLUE)); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockWhisperingGourdLantern.java b/src/main/java/redd90/betternether/blocks/BlockWhisperingGourdLantern.java new file mode 100644 index 0000000..2360190 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockWhisperingGourdLantern.java @@ -0,0 +1,40 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.HorizontalBlock; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.state.DirectionProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.materials.MaterialBuilder; + +public class BlockWhisperingGourdLantern extends Block { + public static final DirectionProperty FACING = HorizontalBlock.HORIZONTAL_FACING; + + public BlockWhisperingGourdLantern() { + super(MaterialBuilder.makeWood(MaterialColor.BLUE).setLightLevel((state) -> {return 15;})); + } + + protected void appendProperties(StateContainer.Builder builder) { + builder.add(FACING); + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + return BlocksHelper.rotateHorizontal(state, rotation, FACING); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + return BlocksHelper.mirrorHorizontal(state, mirror, FACING); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + return this.getDefaultState().with(FACING, ctx.getPlacementHorizontalFacing().getOpposite()); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockWhisperingGourdVine.java b/src/main/java/redd90/betternether/blocks/BlockWhisperingGourdVine.java new file mode 100644 index 0000000..84cc796 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockWhisperingGourdVine.java @@ -0,0 +1,152 @@ +package redd90.betternether.blocks; + +import java.util.List; +import java.util.Random; + +import com.google.common.collect.Lists; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.entity.item.ItemEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.loot.LootParameters; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.ActionResultType; +import net.minecraft.util.Direction; +import net.minecraft.util.Hand; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockRayTraceResult; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import net.minecraftforge.common.Tags; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockWhisperingGourdVine extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SELECTION = Block.makeCuboidShape(2, 0, 2, 14, 16, 14); + public static final EnumProperty SHAPE = EnumProperty.create("shape", TripleShape.class); + + public BlockWhisperingGourdVine() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.RED) + .sound(SoundType.CROP) + .doesNotBlockMovement() + .zeroHardnessAndResistance() + .notSolid() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDropItself(false); + this.setDefaultState(getStateContainer().getBaseState().with(SHAPE, TripleShape.BOTTOM)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SELECTION; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + BlockState upState = world.getBlockState(pos.up()); + return upState.getBlock() == this || upState.isSolidSide(world, pos, Direction.DOWN); + } + + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightLevel(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else if (world.getBlockState(pos.down()).getBlock() != this) + return state.with(SHAPE, TripleShape.BOTTOM); + else if (state.get(SHAPE) == TripleShape.BOTTOM) + return state.with(SHAPE, TripleShape.TOP); + else + return state; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isRemote) { + return world.getBlockState(pos.up(3)).getBlock() != this && world.getBlockState(pos.down()).getBlock() != this; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return world.getBlockState(pos.up(3)).getBlock() != this && world.getBlockState(pos.down()).getMaterial().isReplaceable(); + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + BlocksHelper.setWithUpdate(world, pos, state.with(SHAPE, TripleShape.TOP)); + BlocksHelper.setWithUpdate(world, pos.down(), getDefaultState()); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + ItemStack tool = builder.get(LootParameters.TOOL); + if (tool != null && tool.getItem().isIn(Tags.Items.SHEARS)) + return Lists.newArrayList(new ItemStack(this.asItem())); + else if (state.get(SHAPE) == TripleShape.BOTTOM || MHelper.RANDOM.nextBoolean()) + return Lists.newArrayList(new ItemStack(this.asItem())); + else + return Lists.newArrayList(); + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canUseBonemeal(world, random, pos, state)) { + grow(world, random, pos, state); + } + if (state.get(SHAPE) != TripleShape.MIDDLE && state.get(SHAPE) != TripleShape.BOTTOM && random.nextInt(16) == 0) { + BlocksHelper.setWithUpdate(world, pos, state.with(SHAPE, TripleShape.MIDDLE)); + } + } + + public ActionResultType onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockRayTraceResult hit) { + ItemStack tool = player.getHeldItem(hand); + if (tool.getItem().isIn(Tags.Items.SHEARS) && state.get(SHAPE) == TripleShape.MIDDLE) { + if (!world.isRemote) { + BlocksHelper.setWithUpdate(world, pos, state.with(SHAPE, TripleShape.BOTTOM)); + world.addEntity(new ItemEntity(world, pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, new ItemStack(BlocksRegistry.WHISPERING_GOURD))); + if (world.rand.nextBoolean()) { + world.addEntity(new ItemEntity(world, pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, new ItemStack(BlocksRegistry.WHISPERING_GOURD))); + } + } + return ActionResultType.func_233537_a_(world.isRemote); + } + else { + return super.onBlockActivated(state, world, pos, player, hand, hit); + } + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockWillowBranch.java b/src/main/java/redd90/betternether/blocks/BlockWillowBranch.java new file mode 100644 index 0000000..3c6d307 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockWillowBranch.java @@ -0,0 +1,104 @@ +package redd90.betternether.blocks; + +import java.util.List; +import java.util.function.ToIntFunction; + +import com.google.common.collect.Lists; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.LootContext; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import net.minecraft.util.IStringSerializable; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.blocks.materials.MaterialBuilder; +import redd90.betternether.registry.BlocksRegistry; + +public class BlockWillowBranch extends BlockBaseNotFull { + private static final VoxelShape V_SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 16, 12); + public static final EnumProperty SHAPE = EnumProperty.create("shape", WillowBranchShape.class); + + public BlockWillowBranch() { + super(MaterialBuilder.makeWood(MaterialColor.RED_TERRACOTTA).notSolid().doesNotBlockMovement().setLightLevel(getLuminance())); + this.setRenderLayer(BNRenderLayer.CUTOUT); + this.setDropItself(false); + this.setDefaultState(getStateContainer().getBaseState().with(SHAPE, WillowBranchShape.MIDDLE)); + } + + protected static ToIntFunction getLuminance() { + return (state) -> { + return state.get(SHAPE) == WillowBranchShape.END ? 15 : 0; + }; + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return V_SHAPE; + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (world.isAirBlock(pos.up())) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + public enum WillowBranchShape implements IStringSerializable { + END("end"), MIDDLE("middle"); + + final String name; + + WillowBranchShape(String name) { + this.name = name; + } + + @Override + public String getString() { + return name; + } + + @Override + public String toString() { + return name; + } + } + + @Override + @OnlyIn(Dist.CLIENT) + public ItemStack getItem(IBlockReader world, BlockPos pos, BlockState state) { + return new ItemStack(state.get(SHAPE) == WillowBranchShape.END ? BlocksRegistry.WILLOW_TORCH : BlocksRegistry.WILLOW_LEAVES); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + if (state.get(SHAPE) == WillowBranchShape.END) { + return Lists.newArrayList(new ItemStack(BlocksRegistry.WILLOW_TORCH)); + } + else { + return Lists.newArrayList(); + } + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockWillowLeaves.java b/src/main/java/redd90/betternether/blocks/BlockWillowLeaves.java new file mode 100644 index 0000000..29225df --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockWillowLeaves.java @@ -0,0 +1,79 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Block; +import net.minecraft.block.Blocks; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.DirectionProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.state.properties.BlockStateProperties; +import net.minecraft.util.Direction; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.shapes.VoxelShapes; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.materials.MaterialBuilder; + +public class BlockWillowLeaves extends BlockBaseNotFull { + public static final DirectionProperty FACING = BlockStateProperties.FACING; + public static final BooleanProperty NATURAL = BooleanProperty.create("natural"); + + public BlockWillowLeaves() { + super(MaterialBuilder.makeLeaves(MaterialColor.RED_TERRACOTTA)); + this.setDropItself(false); + this.setDefaultState(getStateContainer().getBaseState().with(FACING, Direction.UP).with(NATURAL, true)); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FACING, NATURAL); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + return this.getDefaultState().with(NATURAL, false); + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + return BlocksHelper.rotateHorizontal(state, rotation, FACING); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + return BlocksHelper.mirrorHorizontal(state, mirror, FACING); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (state.get(NATURAL) && world.isAirBlock(pos.offset(state.get(FACING).getOpposite()))) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getAmbientOcclusionLightValue(BlockState state, IBlockReader view, BlockPos pos) { + return 1.0F; + } + + @Override + public boolean propagatesSkylightDown(BlockState state, IBlockReader view, BlockPos pos) { + return true; + } + + @Override + public VoxelShape getCollisionShape(BlockState state, IBlockReader world, BlockPos pos) { + return VoxelShapes.empty(); + } +} diff --git a/src/main/java/redd90/betternether/blocks/BlockWillowSapling.java b/src/main/java/redd90/betternether/blocks/BlockWillowSapling.java new file mode 100644 index 0000000..1403609 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockWillowSapling.java @@ -0,0 +1,78 @@ +package redd90.betternether.blocks; + +import java.util.Random; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.IGrowable; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.plants.StructureWillow; + +public class BlockWillowSapling extends BlockBaseNotFull implements IGrowable { + private static final VoxelShape SHAPE = Block.makeCuboidShape(4, 0, 4, 12, 14, 12); + private static final StructureWillow STRUCTURE = new StructureWillow(); + + public BlockWillowSapling() { + super(AbstractBlock.Properties.create(Material.PLANTS, MaterialColor.RED) + .sound(SoundType.CROP) + .notSolid() + .zeroHardnessAndResistance() + .doesNotBlockMovement() + .tickRandomly()); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return SHAPE; + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + return BlocksHelper.isNetherGround(world.getBlockState(pos.down())); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (!isValidPosition(state, world, pos)) + return Blocks.AIR.getDefaultState(); + else + return state; + } + + @Override + public boolean canGrow(IBlockReader world, BlockPos pos, BlockState state, boolean isClient) { + return true; + } + + @Override + public boolean canUseBonemeal(World world, Random random, BlockPos pos, BlockState state) { + return BlocksHelper.isFertile(world.getBlockState(pos.down())) ? (random.nextInt(8) == 0) : (random.nextInt(16) == 0); + } + + @Override + public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state) { + STRUCTURE.generate(world, pos, random); + } + + @Override + public void tick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + super.tick(state, world, pos, random); + if (canUseBonemeal(world, random, pos, state)) + grow(world, random, pos, state); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/BlockWillowTorch.java b/src/main/java/redd90/betternether/blocks/BlockWillowTorch.java new file mode 100644 index 0000000..6b63da7 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockWillowTorch.java @@ -0,0 +1,104 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.BlockItemUseContext; +import net.minecraft.state.DirectionProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.state.properties.BlockStateProperties; +import net.minecraft.util.Direction; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.materials.MaterialBuilder; + +public class BlockWillowTorch extends BlockBaseNotFull { + private static final VoxelShape SHAPE_NORTH = Block.makeCuboidShape(5, 0, 8, 11, 16, 16); + private static final VoxelShape SHAPE_SOUTH = Block.makeCuboidShape(5, 0, 0, 11, 16, 8); + private static final VoxelShape SHAPE_WEST = Block.makeCuboidShape(8, 0, 5, 16, 16, 11); + private static final VoxelShape SHAPE_EAST = Block.makeCuboidShape(0, 0, 5, 8, 16, 11); + private static final VoxelShape SHAPE_UP = Block.makeCuboidShape(5, 0, 5, 11, 9, 11); + private static final VoxelShape SHAPE_DOWN = Block.makeCuboidShape(5, 3, 5, 11, 16, 11); + + public static final DirectionProperty FACING = BlockStateProperties.FACING; + + public BlockWillowTorch() { + super(MaterialBuilder.makeWood(MaterialColor.LIGHT_BLUE).setLightLevel((state) -> {return 15;}).doesNotBlockMovement().notSolid()); + this.setDefaultState(getStateContainer().getBaseState().with(FACING, Direction.DOWN)); + this.setRenderLayer(BNRenderLayer.CUTOUT); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(FACING); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + switch (state.get(FACING)) { + case NORTH: + return SHAPE_NORTH; + case SOUTH: + return SHAPE_SOUTH; + case EAST: + return SHAPE_EAST; + case WEST: + return SHAPE_WEST; + case UP: + return SHAPE_UP; + case DOWN: + default: + return SHAPE_DOWN; + } + } + + @Override + public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) { + Direction direction = (Direction) state.get(FACING).getOpposite(); + return Block.hasEnoughSolidSide(world, pos.offset(direction), direction.getOpposite()); + } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + return BlocksHelper.rotateHorizontal(state, rotation, FACING); + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + return BlocksHelper.mirrorHorizontal(state, mirror, FACING); + } + + @Override + public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState neighborState, IWorld world, BlockPos pos, BlockPos neighborPos) { + if (isValidPosition(state, world, pos)) + return state; + else + return Blocks.AIR.getDefaultState(); + } + + @Override + public BlockState getStateForPlacement(BlockItemUseContext ctx) { + BlockState blockState = this.getDefaultState(); + IWorldReader worldView = ctx.getWorld(); + BlockPos blockPos = ctx.getPos(); + Direction[] directions = ctx.getNearestLookingDirections(); + for (int i = 0; i < directions.length; ++i) { + Direction direction = directions[i]; + Direction direction2 = direction.getOpposite(); + blockState = blockState.with(FACING, direction2); + if (blockState.isValidPosition(worldView, blockPos)) { + return blockState; + } + } + return null; + } +} + diff --git a/src/main/java/redd90/betternether/blocks/BlockWillowTrunk.java b/src/main/java/redd90/betternether/blocks/BlockWillowTrunk.java new file mode 100644 index 0000000..b068c9a --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/BlockWillowTrunk.java @@ -0,0 +1,35 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.shapes.ISelectionContext; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.IBlockReader; +import redd90.betternether.blocks.materials.MaterialBuilder; +import redd90.betternether.blocks.shapes.TripleShape; + +public class BlockWillowTrunk extends BlockBaseNotFull { + public static final EnumProperty SHAPE = EnumProperty.create("shape", TripleShape.class); + private static final VoxelShape SHAPE_BOTTOM = Block.makeCuboidShape(4, 0, 4, 12, 16, 12); + private static final VoxelShape SHAPE_TOP = Block.makeCuboidShape(4, 0, 4, 12, 12, 12); + + public BlockWillowTrunk() { + super(MaterialBuilder.makeWood(MaterialColor.RED_TERRACOTTA).notSolid()); + this.setDropItself(false); + this.setDefaultState(getStateContainer().getBaseState().with(SHAPE, TripleShape.TOP)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader view, BlockPos pos, ISelectionContext ePos) { + return state.get(SHAPE) == TripleShape.TOP ? SHAPE_TOP : SHAPE_BOTTOM; + } +} diff --git a/src/main/java/redd90/betternether/blocks/RubeusLog.java b/src/main/java/redd90/betternether/blocks/RubeusLog.java new file mode 100644 index 0000000..598a712 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/RubeusLog.java @@ -0,0 +1,24 @@ +package redd90.betternether.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.StateContainer; +import net.minecraft.util.Direction; +import redd90.betternether.blocks.shapes.TripleShape; + +public class RubeusLog extends BNLogStripable { + public static final EnumProperty SHAPE = EnumProperty.create("shape", TripleShape.class); + + public RubeusLog(Block striped) { + super(MaterialColor.MAGENTA, striped); + this.setDefaultState(this.getDefaultState().with(AXIS, Direction.Axis.Y).with(SHAPE, TripleShape.BOTTOM)); + } + + @Override + protected void fillStateContainer(StateContainer.Builder stateManager) { + super.fillStateContainer(stateManager); + stateManager.add(SHAPE); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/complex/ColoredGlassMaterial.java b/src/main/java/redd90/betternether/blocks/complex/ColoredGlassMaterial.java new file mode 100644 index 0000000..cd19638 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/complex/ColoredGlassMaterial.java @@ -0,0 +1,105 @@ +package redd90.betternether.blocks.complex; + + +import org.apache.commons.lang3.tuple.Pair; + +import net.minecraft.block.Block; +import net.minecraft.item.BlockItem; +import net.minecraft.item.DyeItem; +import net.minecraft.item.Item; +import net.minecraft.item.Items; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.fml.RegistryObject; +import redd90.betternether.BetterNether; +import redd90.betternether.blocks.BNGlass; +import redd90.betternether.blocks.BNPane; +import redd90.betternether.recipes.RecipesHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.ItemsRegistry; +import redd90.betternether.tab.CreativeTab; + +public class ColoredGlassMaterial { + public final Block white; + public final Block orange; + public final Block magenta; + public final Block light_blue; + public final Block yellow; + public final Block lime; + public final Block pink; + public final Block gray; + public final Block light_gray; + public final Block cyan; + public final Block purple; + public final Block blue; + public final Block brown; + public final Block green; + public final Block red; + public final Block black; + + /** + * Full Block Constructor + * + * @param name + * - base name of block (prefix) and it's group + * @param base + * - block base for material properties and crafting + */ + public ColoredGlassMaterial(String name, Block base) { + white = makeInstance(name, base, Items.WHITE_DYE, true, false); + orange = makeInstance(name, base, Items.ORANGE_DYE, true, false); + magenta = makeInstance(name, base, Items.MAGENTA_DYE, true, false); + light_blue = makeInstance(name, base, Items.LIGHT_BLUE_DYE, true, false); + yellow = makeInstance(name, base, Items.YELLOW_DYE, true, false); + lime = makeInstance(name, base, Items.LIME_DYE, true, false); + pink = makeInstance(name, base, Items.PINK_DYE, true, false); + gray = makeInstance(name, base, Items.GRAY_DYE, true, false); + light_gray = makeInstance(name, base, Items.LIGHT_GRAY_DYE, true, false); + cyan = makeInstance(name, base, Items.CYAN_DYE, true, false); + purple = makeInstance(name, base, Items.PURPLE_DYE, true, false); + blue = makeInstance(name, base, Items.BLUE_DYE, true, false); + brown = makeInstance(name, base, Items.BROWN_DYE, true, false); + green = makeInstance(name, base, Items.GREEN_DYE, true, false); + red = makeInstance(name, base, Items.RED_DYE, true, false); + black = makeInstance(name, base, Items.BLACK_DYE, true, false); + } + + /** + * Pane Block Constructor + * + * @param name + * - base name of block (prefix) and it's group + * @param base + * - block base for material properties and crafting + * @param paneDropItself + * - will pane drop itself on break or not (will require silk + * touch) + */ + public ColoredGlassMaterial(String name, Block base, boolean paneDropItself) { + white = makeInstance(name, base, Items.WHITE_DYE, false, paneDropItself); + orange = makeInstance(name, base, Items.ORANGE_DYE, false, paneDropItself); + magenta = makeInstance(name, base, Items.MAGENTA_DYE, false, paneDropItself); + light_blue = makeInstance(name, base, Items.LIGHT_BLUE_DYE, false, paneDropItself); + yellow = makeInstance(name, base, Items.YELLOW_DYE, false, paneDropItself); + lime = makeInstance(name, base, Items.LIME_DYE, false, paneDropItself); + pink = makeInstance(name, base, Items.PINK_DYE, false, paneDropItself); + gray = makeInstance(name, base, Items.GRAY_DYE, false, paneDropItself); + light_gray = makeInstance(name, base, Items.LIGHT_GRAY_DYE, false, paneDropItself); + cyan = makeInstance(name, base, Items.CYAN_DYE, false, paneDropItself); + purple = makeInstance(name, base, Items.PURPLE_DYE, false, paneDropItself); + blue = makeInstance(name, base, Items.BLUE_DYE, false, paneDropItself); + brown = makeInstance(name, base, Items.BROWN_DYE, false, paneDropItself); + green = makeInstance(name, base, Items.GREEN_DYE, false, paneDropItself); + red = makeInstance(name, base, Items.RED_DYE, false, paneDropItself); + black = makeInstance(name, base, Items.BLACK_DYE, false, paneDropItself); + } + + private Block makeInstance(String group, Block base, Item dye, boolean isFullBlock, boolean paneDropItself) { + Block block = isFullBlock ? new BNGlass(base) : new BNPane(base, paneDropItself); + String name = group + "_" + ((DyeItem) dye).getDyeColor().getString(); + block.setRegistryName(new ResourceLocation(BetterNether.MOD_ID, name)); + BlocksRegistry.BLOCKS.add(block); + ItemsRegistry.registerItem(name, new BlockItem(block, new Item.Properties().group(CreativeTab.BN_TAB))); + RecipesHelper.makeColoringRecipe(base, block, dye, group); + return block; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/complex/WoodenMaterial.java b/src/main/java/redd90/betternether/blocks/complex/WoodenMaterial.java new file mode 100644 index 0000000..4d0cd23 --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/complex/WoodenMaterial.java @@ -0,0 +1,73 @@ +package redd90.betternether.blocks.complex; + +import net.minecraft.block.Block; +import net.minecraft.block.material.MaterialColor; +import redd90.betternether.blocks.BNLogStripable; +import redd90.betternether.blocks.BNPillar; +import redd90.betternether.blocks.BNPlanks; +import redd90.betternether.registry.BlocksRegistry; + +public class WoodenMaterial { + public final Block log; + public final Block bark; + + public final Block log_striped; + public final Block bark_striped; + + public final Block planks; + + public final Block planks_stairs; + public final Block planks_slab; + + public final Block fence; + public final Block gate; + public final Block button; + public final Block pressure_plate; + public final Block trapdoor; + public final Block door; + + public final Block taburet; + public final Block chair; + public final Block bar_stool; + + public final Block crafting_table; + public final Block ladder; + public final Block sign; + + public final Block chest; + public final Block barrel; + + public WoodenMaterial(String name, MaterialColor woodColor, MaterialColor planksColor) { + log_striped = BlocksRegistry.registerBlock("striped_log_" + name, new BNPillar(woodColor)); + bark_striped = BlocksRegistry.registerBlock("striped_bark_" + name, new BNPillar(woodColor)); + + log = BlocksRegistry.registerBlock(name + "_log", new BNLogStripable(woodColor, log_striped)); + bark = BlocksRegistry.registerBark(name + "_bark", new BNLogStripable(woodColor, bark_striped), log); + + planks = BlocksRegistry.registerPlanks(name + "_planks", new BNPlanks(planksColor), log_striped, bark_striped, log, bark); + planks_stairs = BlocksRegistry.registerStairs(name + "_stairs", planks); + planks_slab = BlocksRegistry.registerSlab(name + "_slab", planks); + + fence = BlocksRegistry.registerFence(name + "_fence", planks); + gate = BlocksRegistry.registerGate(name + "_gate", planks); + button = BlocksRegistry.registerButton(name + "_button", planks); + pressure_plate = BlocksRegistry.registerPlate(name + "_plate", planks); + trapdoor = BlocksRegistry.registerTrapdoor(name + "_trapdoor", planks); + door = BlocksRegistry.registerDoor(name + "_door", planks); + + taburet = BlocksRegistry.registerTaburet("taburet_" + name, planks_slab); + chair = BlocksRegistry.registerChair("chair_" + name, planks_slab); + bar_stool = BlocksRegistry.registerBarStool("bar_stool_" + name, planks_slab); + + crafting_table = BlocksRegistry.registerCraftingTable("crafting_table_" + name, planks); + ladder = BlocksRegistry.registerLadder(name + "_ladder", planks); + sign = BlocksRegistry.registerSign("sign_" + name, planks); + + chest = BlocksRegistry.registerChest("chest_" + name, planks); + barrel = BlocksRegistry.registerBarrel("barrel_" + name, planks, planks_slab); + } + + public boolean isTreeLog(Block block) { + return block == log || block == bark; + } +} diff --git a/src/main/java/redd90/betternether/blocks/materials/MaterialBuilder.java b/src/main/java/redd90/betternether/blocks/materials/MaterialBuilder.java new file mode 100644 index 0000000..dc7e64d --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/materials/MaterialBuilder.java @@ -0,0 +1,48 @@ +package redd90.betternether.blocks.materials; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialColor; +import net.minecraftforge.common.ToolType; + +public class MaterialBuilder { + public static final Material COMMON_WOOD = new Material.Builder(MaterialColor.WOOD).build(); + public static final Material COMMON_GRASS = new Material.Builder(MaterialColor.FOLIAGE).doesNotBlockMovement().notSolid().replaceable().build(); + public static final Material COMMON_LEAVES = new Material.Builder(MaterialColor.FOLIAGE).notSolid().build(); + + public static AbstractBlock.Properties makeWood(MaterialColor color) { + return AbstractBlock.Properties.create(COMMON_WOOD, color) + .sound(SoundType.WOOD) + .harvestTool(ToolType.AXE) + .hardnessAndResistance(1); + } + + public static AbstractBlock.Properties makeGrass(MaterialColor color) { + return AbstractBlock.Properties.create(COMMON_GRASS, color) + .setAllowsSpawn((state, world, pos, type) -> { + return true; + }) + .sound(SoundType.PLANT) + .doesNotBlockMovement() + .notSolid() + .zeroHardnessAndResistance(); + } + + public static AbstractBlock.Properties makeLeaves(MaterialColor color) { + return AbstractBlock.Properties.create(COMMON_LEAVES, color) + .harvestTool(ToolType.HOE) + .sound(SoundType.PLANT) + .notSolid() + .hardnessAndResistance(0.2F) + .setAllowsSpawn((state, world, pos, type) -> { + return false; + }) + .setSuffocates((state, worls, pos) -> { + return false; + }) + .setBlocksVision((state, worls, pos) -> { + return false; + }); + } +} diff --git a/src/main/java/redd90/betternether/blocks/shapes/FoodShape.java b/src/main/java/redd90/betternether/blocks/shapes/FoodShape.java new file mode 100644 index 0000000..3a31b1e --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/shapes/FoodShape.java @@ -0,0 +1,33 @@ +package redd90.betternether.blocks.shapes; + +import net.minecraft.item.Item; +import net.minecraft.util.IStringSerializable; + +public enum FoodShape implements IStringSerializable { + NONE("none"), WART("wart"), MUSHROOM("mushroom"), APPLE("apple"); + + private final String name; + private Item item; + + FoodShape(String name) { + this.name = name; + } + + public void setItem(Item item) { + this.item = item; + } + + @Override + public String getString() { + return name; + } + + @Override + public String toString() { + return name; + } + + public Item getItem() { + return item; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/blocks/shapes/TripleShape.java b/src/main/java/redd90/betternether/blocks/shapes/TripleShape.java new file mode 100644 index 0000000..caeaf3e --- /dev/null +++ b/src/main/java/redd90/betternether/blocks/shapes/TripleShape.java @@ -0,0 +1,23 @@ +package redd90.betternether.blocks.shapes; + +import net.minecraft.util.IStringSerializable; + +public enum TripleShape implements IStringSerializable { + TOP("top"), MIDDLE("middle"), BOTTOM("bottom"); + + final String name; + + TripleShape(String name) { + this.name = name; + } + + @Override + public String getString() { + return name; + } + + @Override + public String toString() { + return name; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/client/BetterNetherClient.java b/src/main/java/redd90/betternether/client/BetterNetherClient.java new file mode 100644 index 0000000..36c00e9 --- /dev/null +++ b/src/main/java/redd90/betternether/client/BetterNetherClient.java @@ -0,0 +1,5 @@ +package redd90.betternether.client; + +public class BetterNetherClient { + +} diff --git a/src/main/java/redd90/betternether/client/IRenderTypeable.java b/src/main/java/redd90/betternether/client/IRenderTypeable.java new file mode 100644 index 0000000..1679ee1 --- /dev/null +++ b/src/main/java/redd90/betternether/client/IRenderTypeable.java @@ -0,0 +1,7 @@ +package redd90.betternether.client; + +import redd90.betternether.blocks.BNRenderLayer; + +public interface IRenderTypeable { + public BNRenderLayer getRenderLayer(); +} diff --git a/src/main/java/redd90/betternether/config/Config.java b/src/main/java/redd90/betternether/config/Config.java new file mode 100644 index 0000000..0a0ccf0 --- /dev/null +++ b/src/main/java/redd90/betternether/config/Config.java @@ -0,0 +1,261 @@ +package redd90.betternether.config; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; +import java.io.Reader; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.Map.Entry; + +import com.google.common.collect.Lists; +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; + +import redd90.betternether.BetterNether; + +public final class Config { + private static final List ALL = Lists.newArrayList(); + private JsonObject config; + private boolean rewrite = false; + private final String name; + + public Config(String name) { + this.name = name; + ALL.add(this); + } + + private void load() { + if (config == null) { + File file = getFolder(); + if (!file.exists()) + file.mkdirs(); + file = getFile(); + if (file.exists()) { + Gson gson = new Gson(); + try { + Reader reader = new FileReader(file); + config = gson.fromJson(reader, JsonObject.class); + if (config == null) { + config = new JsonObject(); + rewrite = true; + } + else { + rewrite = false; + } + } + catch (FileNotFoundException e) { + e.printStackTrace(); + config = new JsonObject(); + rewrite = true; + } + } + else { + config = new JsonObject(); + rewrite = true; + } + } + } + + public static void save() { + ALL.forEach((config) -> { + if (config.rewrite) { + File file = config.getFolder(); + if (!file.exists()) + file.mkdirs(); + file = config.getFile(); + Gson gson = new GsonBuilder().setPrettyPrinting().create(); + try { + FileWriter writer = new FileWriter(file); + String gstring = gson.toJson(config.config); + writer.write(gstring); + writer.flush(); + writer.close(); + config.rewrite = false; + } + catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + private File getFile() { + return new File(String.format("./config/%s/%s.json", BetterNether.MOD_ID, name)); + } + + private File getFolder() { + return new File("./config/" + BetterNether.MOD_ID + "/"); + } + + public boolean getBoolean(String groups, String name, boolean def) { + load(); + name += "[def: " + def + "]"; + + JsonObject group = getGroup(groups); + JsonElement element = group.get(name); + + if (element != null) { + return element.getAsBoolean(); + } + else { + group.addProperty(name, def); + rewrite = true; + return def; + } + } + + public void setBoolean(String groups, String name, boolean def, boolean value) { + name += "[def: " + def + "]"; + + JsonObject group = getGroup(groups); + group.addProperty(name, value); + + rewrite = true; + } + + public float getFloat(String groups, String name, float def) { + load(); + name += "[def: " + def + "]"; + + JsonObject group = getGroup(groups); + JsonElement element = group.get(name); + + if (element != null) { + return element.getAsFloat(); + } + else { + group.addProperty(name, def); + rewrite = true; + return def; + } + } + + public void setFloat(String groups, String name, float def, float value) { + name += "[def: " + def + "]"; + + JsonObject group = getGroup(groups); + group.addProperty(name, value); + + rewrite = true; + } + + public int getInt(String groups, String name, int def) { + load(); + name += "[def: " + def + "]"; + + JsonObject group = getGroup(groups); + JsonElement element = group.get(name); + + if (element != null) { + return element.getAsInt(); + } + else { + group.addProperty(name, def); + rewrite = true; + return def; + } + } + + public String getString(String groups, String name, String def) { + load(); + name += "[def: " + def + "]"; + + JsonObject group = getGroup(groups); + JsonElement element = group.get(name); + + if (element != null) { + return element.getAsString(); + } + else { + group.addProperty(name, def); + rewrite = true; + return def; + } + } + + public void setInt(String groups, String name, int def, int value) { + name += "[def: " + def + "]"; + + JsonObject group = getGroup(groups); + group.addProperty(name, value); + + rewrite = true; + } + + public void setStringLoad(String groups, String name, String value) { + JsonObject group = getGroup(groups); + group.addProperty(name, value); + } + + public String[] getStringArray(String groups, String name, String[] def) { + load(); + + JsonObject group = getGroup(groups); + JsonElement element = group.get(name); + + if (element != null) { + return toStringArray(element.getAsJsonArray()); + } + else { + group.add(name, toJsonArray(def)); + rewrite = true; + return def; + } + } + + private String[] toStringArray(JsonArray array) { + load(); + String[] result = new String[array.size()]; + for (int i = 0; i < array.size(); i++) + result[i] = array.get(i).getAsString(); + return result; + } + + private JsonArray toJsonArray(String[] array) { + load(); + JsonArray result = new JsonArray(); + for (String s : array) + result.add(s); + return result; + } + + public JsonObject getGroup(String groups) { + JsonObject obj = config; + String[] groupsArr = groups.split("\\."); + for (String group : groupsArr) { + JsonObject jGroup = obj.getAsJsonObject(group); + if (jGroup == null) { + jGroup = new JsonObject(); + obj.add(group, jGroup); + } + obj = jGroup; + } + return obj; + } + + public List getBaseGroups() { + List groups = new ArrayList(); + Iterator> iterator = config.entrySet().iterator(); + iterator.forEachRemaining((element) -> { + groups.add(element.getKey()); + }); + return groups; + } + + public List> getGroupMembers(JsonObject group) { + List> result = new ArrayList>(); + result.addAll(group.entrySet()); + return result; + } + + public void markToSave() { + rewrite = true; + } +} diff --git a/src/main/java/redd90/betternether/config/Configs.java b/src/main/java/redd90/betternether/config/Configs.java new file mode 100644 index 0000000..1517b40 --- /dev/null +++ b/src/main/java/redd90/betternether/config/Configs.java @@ -0,0 +1,11 @@ +package redd90.betternether.config; + +public class Configs { + public static final Config MAIN = new Config("main"); + public static final Config GENERATOR = new Config("generator"); + public static final Config BIOMES = new Config("biomes"); + public static final Config BLOCKS = new Config("blocks"); + public static final Config ITEMS = new Config("items"); + public static final Config MOBS = new Config("mobs"); + public static final Config RECIPES = new Config("recipes"); +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/datagen/BNRecipes.java b/src/main/java/redd90/betternether/datagen/BNRecipes.java new file mode 100644 index 0000000..6cd10db --- /dev/null +++ b/src/main/java/redd90/betternether/datagen/BNRecipes.java @@ -0,0 +1,444 @@ +package redd90.betternether.datagen; + +import java.util.ArrayList; +import java.util.function.Consumer; + +import net.minecraft.block.Block; +import net.minecraft.data.DataGenerator; +import net.minecraft.data.IFinishedRecipe; +import net.minecraft.data.RecipeProvider; +import net.minecraft.data.ShapedRecipeBuilder; +import net.minecraft.data.ShapelessRecipeBuilder; +import net.minecraft.item.Item; +import net.minecraft.item.Items; +import net.minecraft.util.IItemProvider; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.registries.ForgeRegistries; +import redd90.betternether.BetterNether; + +public class BNRecipes extends RecipeProvider { + + public static final ArrayList STAIRS = new ArrayList<>(); + public static final ArrayList SLABS = new ArrayList<>(); + public static final ArrayList ROOFS = new ArrayList<>(); + public static final ArrayList PLATES = new ArrayList<>(); + public static final ArrayList TWOBYTWO = new ArrayList<>(); + public static final ArrayList FENCES = new ArrayList<>(); + public static final ArrayList GATES = new ArrayList<>(); + public static final ArrayList DOORS = new ArrayList<>(); + public static final ArrayList TRAPDOORS = new ArrayList<>(); + public static final ArrayList WALLS = new ArrayList<>(); + public static final ArrayList ROUND = new ArrayList<>(); + public static final ArrayList SIGNS = new ArrayList<>(); + public static final ArrayList BARRELS = new ArrayList<>(); + public static final ArrayList LADDERS = new ArrayList<>(); + public static final ArrayList TABURETS = new ArrayList<>(); + public static final ArrayList CHAIRS = new ArrayList<>(); + public static final ArrayList BAR_STOOLS = new ArrayList<>(); + public static final ArrayList FIRE_BOWLS = new ArrayList<>(); + public static final ArrayList SHAPELESS = new ArrayList<>(); + + public BNRecipes(DataGenerator generatorIn) { + super(generatorIn); + } + + @Override + protected void registerRecipes(Consumer consumer) { + for (SingleInputRecipe recipe : STAIRS) { + makeStairsRecipe(recipe.input, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : SLABS) { + makeSlabRecipe(recipe.input, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : ROOFS) { + makeRoofRecipe(recipe.input, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : PLATES) { + makePlateRecipe(recipe.input, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : TWOBYTWO) { + make2x2Recipe(recipe.input, recipe.output, recipe.quantityOut, consumer); + } + + for (SingleInputRecipe recipe : FENCES) { + makeFenceRecipe(recipe.input, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : GATES) { + makeGateRecipe(recipe.input, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : DOORS) { + makeDoorRecipe(recipe.input, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : TRAPDOORS) { + makeTrapdoorRecipe(recipe.input, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : WALLS) { + makeWallRecipe(recipe.input, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : ROUND) { + makeRoundRecipe(recipe.input, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : SIGNS) { + makeSignRecipe(recipe.input, recipe.output, consumer); + } + + for (TwoInputRecipe recipe : BARRELS) { + makeBarrelRecipe(recipe.input1, recipe.input2, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : LADDERS) { + makeLadderRecipe(recipe.input, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : TABURETS) { + makeTaburetRecipe(recipe.input, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : CHAIRS) { + makeChairRecipe(recipe.input, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : BAR_STOOLS) { + makeBarStoolRecipe(recipe.input, recipe.output, consumer); + } + + for (FireBowlRecipe recipe : FIRE_BOWLS) { + makeFireBowlRecipe(recipe.source, recipe.inside, recipe.legs, recipe.output, consumer); + } + + for (SingleInputRecipe recipe : SHAPELESS) { + makeShapelessSingleInputRecipe(recipe.input, recipe.output, recipe.quantityOut, consumer); + } + } + + // SHAPED RECIPES // + + public static void makeStairsRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result, 4) + .patternLine("# ") + .patternLine("## ") + .patternLine("###") + .key('#', ingredient) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeSlabRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result, 6) + .patternLine("###") + .key('#', ingredient) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeRoofRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result, 6) + .patternLine("# #") + .patternLine("###") + .patternLine(" # ") + .key('#', ingredient) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makePlateRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result) + .patternLine("##") + .key('#', ingredient) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void make2x2Recipe(ResourceLocation input, ResourceLocation output, int outputQuantity, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result, outputQuantity) + .patternLine("##") + .patternLine("##") + .key('#', ingredient) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeFenceRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result, 3) + .patternLine("#I#") + .patternLine("#I#") + .key('#', ingredient) + .key('I', Items.STICK) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeGateRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result) + .patternLine("I#I") + .patternLine("I#I") + .key('#', ingredient) + .key('I', Items.STICK) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeDoorRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result, 3) + .patternLine("##") + .patternLine("##") + .patternLine("##") + .key('#', ingredient) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeTrapdoorRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result, 2) + .patternLine("###") + .patternLine("###") + .key('#', ingredient) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeWallRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result, 6) + .patternLine("###") + .patternLine("###") + .key('#', ingredient) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeRoundRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result) + .patternLine("###") + .patternLine("# #") + .patternLine("###") + .key('#', ingredient) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeSignRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result) + .patternLine("###") + .patternLine("###") + .patternLine(" I ") + .key('#', ingredient) + .key('I', Items.STICK) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeBarrelRecipe(ResourceLocation input1, ResourceLocation input2, ResourceLocation output, Consumer consumer) { + IItemProvider block = getRegisteredItem(input1); + IItemProvider slab = getRegisteredItem(input2); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result) + .patternLine("#S#") + .patternLine("# #") + .patternLine("#S#") + .key('#', block) + .key('S', slab) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(block), hasItem(block)) + .build(consumer, getPath(result) + "_from_" + getPath(block)); + } + + public static void makeLadderRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result) + .patternLine("I I") + .patternLine("I#I") + .patternLine("I I") + .key('#', ingredient) + .key('I', Items.STICK) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeTaburetRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result) + .patternLine("##") + .patternLine("II") + .key('#', ingredient) + .key('I', Items.STICK) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeChairRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result) + .patternLine("I ") + .patternLine("##") + .patternLine("II") + .key('#', ingredient) + .key('I', Items.STICK) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeBarStoolRecipe(ResourceLocation input, ResourceLocation output, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result) + .patternLine("##") + .patternLine("II") + .patternLine("II") + .key('#', ingredient) + .key('I', Items.STICK) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + public static void makeFireBowlRecipe(ResourceLocation input1, ResourceLocation input2, ResourceLocation input3, ResourceLocation output, Consumer consumer) { + IItemProvider block = getRegisteredItem(input1); + IItemProvider leg = getRegisteredItem(input2); + IItemProvider inside = getRegisteredItem(input3); + IItemProvider result = getRegisteredItem(output); + + ShapedRecipeBuilder.shapedRecipe(result) + .patternLine("#I#") + .patternLine(" # ") + .patternLine("L L") + .key('#', block) + .key('I', inside) + .key('L', leg) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(block), hasItem(block)) + .build(consumer, getPath(result) + "_from_" + getPath(block)); + } + + // SHAPELESS RECIPES // + + public static void makeShapelessSingleInputRecipe(ResourceLocation input, ResourceLocation output, int outputQuantity, Consumer consumer) { + IItemProvider ingredient = getRegisteredItem(input); + IItemProvider result = getRegisteredItem(output); + + ShapelessRecipeBuilder.shapelessRecipe(result, outputQuantity) + .addIngredient(ingredient) + .setGroup(BetterNether.MOD_ID) + .addCriterion(getPath(ingredient), hasItem(ingredient)) + .build(consumer, getPath(result) + "_from_" + getPath(ingredient)); + } + + private static String getPath(IItemProvider item) { + return item.asItem().getRegistryName().getPath(); + } + + private static IItemProvider getRegisteredItem(ResourceLocation loc) { + return ForgeRegistries.ITEMS.getValue(loc); + } + + public static class SingleInputRecipe { + public final ResourceLocation input; + public final ResourceLocation output; + public int quantityOut = 1; + + public SingleInputRecipe(Block input, Block output) { + this.input = input.getRegistryName(); + this.output = output.getRegistryName(); + } + + public SingleInputRecipe(Block input, Block output, int quantityOut) { + this.input = input.getRegistryName(); + this.output = output.getRegistryName(); + this.quantityOut = quantityOut; + } + } + + public static class TwoInputRecipe { + public final ResourceLocation input1; + public final ResourceLocation input2; + public final ResourceLocation output; + + public TwoInputRecipe(Block input1, Block input2, Block output) { + this.input1 = input1.getRegistryName(); + this.input2 = input2.getRegistryName(); + this.output = output.getRegistryName(); + } + } + + public static class FireBowlRecipe { + public final ResourceLocation source; + public final ResourceLocation inside; + public final ResourceLocation legs; + public final ResourceLocation output; + + public FireBowlRecipe(Block input1, Block input2, Item input3, Block output) { + this.source = input1.getRegistryName(); + this.inside = input2.getRegistryName(); + this.legs = input3.getRegistryName(); + this.output = output.getRegistryName(); + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/datagen/DataGenerators.java b/src/main/java/redd90/betternether/datagen/DataGenerators.java new file mode 100644 index 0000000..380a136 --- /dev/null +++ b/src/main/java/redd90/betternether/datagen/DataGenerators.java @@ -0,0 +1,13 @@ +package redd90.betternether.datagen; + +import net.minecraft.data.DataGenerator; +import net.minecraftforge.fml.event.lifecycle.GatherDataEvent; + +public class DataGenerators { + public static void gatherData(GatherDataEvent event) { + if(event.includeServer()) { + DataGenerator generator = event.getGenerator(); + generator.addProvider(new BNRecipes(generator)); + } + } +} diff --git a/src/main/java/redd90/betternether/entity/EntityChair.java b/src/main/java/redd90/betternether/entity/EntityChair.java new file mode 100644 index 0000000..6ba9f18 --- /dev/null +++ b/src/main/java/redd90/betternether/entity/EntityChair.java @@ -0,0 +1,38 @@ +package redd90.betternether.entity; + +import net.minecraft.entity.EntityType; +import net.minecraft.entity.MobEntity; +import net.minecraft.entity.ai.attributes.AttributeModifierMap; +import net.minecraft.entity.ai.attributes.Attributes; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.World; +import redd90.betternether.blocks.BNChair; + +public class EntityChair extends MobEntity { + public EntityChair(EntityType type, World world) { + super(type, world); + } + + @Override + public void tick() { + if (!this.isBeingRidden()) + this.remove(); + else if (this.getBlockState().getBlock() instanceof BNChair) + super.tick(); + else { + this.removePassengers(); + this.remove(); + } + } + + @Override + public void livingTick() { + super.livingTick(); + this.setMotion(Vector3d.ZERO); + } + + public static AttributeModifierMap getAttributeContainer() { + return MobEntity.func_233666_p_().createMutableAttribute(Attributes.MAX_HEALTH, 0).create(); + + } +} diff --git a/src/main/java/redd90/betternether/entity/EntityFirefly.java b/src/main/java/redd90/betternether/entity/EntityFirefly.java new file mode 100644 index 0000000..501291e --- /dev/null +++ b/src/main/java/redd90/betternether/entity/EntityFirefly.java @@ -0,0 +1,560 @@ +package redd90.betternether.entity; + +import java.util.ArrayList; +import java.util.Comparator; +import java.util.EnumSet; +import java.util.HashSet; +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.material.Material; +import net.minecraft.entity.AgeableEntity; +import net.minecraft.entity.CreatureAttribute; +import net.minecraft.entity.EntityType; +import net.minecraft.entity.MobEntity; +import net.minecraft.entity.SpawnReason; +import net.minecraft.entity.ai.RandomPositionGenerator; +import net.minecraft.entity.ai.attributes.AttributeModifierMap; +import net.minecraft.entity.ai.attributes.Attributes; +import net.minecraft.entity.ai.controller.FlyingMovementController; +import net.minecraft.entity.ai.controller.LookController; +import net.minecraft.entity.ai.goal.BreedGoal; +import net.minecraft.entity.ai.goal.FollowParentGoal; +import net.minecraft.entity.ai.goal.Goal; +import net.minecraft.entity.ai.goal.SwimGoal; +import net.minecraft.entity.passive.AnimalEntity; +import net.minecraft.entity.passive.IFlyingAnimal; +import net.minecraft.fluid.Fluid; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.network.datasync.DataParameter; +import net.minecraft.network.datasync.DataSerializers; +import net.minecraft.network.datasync.EntityDataManager; +import net.minecraft.pathfinding.FlyingPathNavigator; +import net.minecraft.pathfinding.Path; +import net.minecraft.pathfinding.PathNavigator; +import net.minecraft.pathfinding.PathNodeType; +import net.minecraft.tags.ITag; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.util.math.vector.Vector3i; +import net.minecraft.world.IWorld; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.EntityRegistry; +import redd90.betternether.registry.SoundsRegistry; + +public class EntityFirefly extends AnimalEntity implements IFlyingAnimal { + private static final HashSet FLOWERS; + private static final Vector3i[] SEARCH; + + private static final DataParameter COLOR_RED = EntityDataManager.createKey(EntityFirefly.class, DataSerializers.FLOAT); + private static final DataParameter COLOR_GREEN = EntityDataManager.createKey(EntityFirefly.class, DataSerializers.FLOAT); + private static final DataParameter COLOR_BLUE = EntityDataManager.createKey(EntityFirefly.class, DataSerializers.FLOAT); + + private boolean mustSit = false; + + public EntityFirefly(EntityType type, World world) { + super(type, world); + this.moveController = new FlyingMovementController(this, 20, true); + this.lookController = new FreflyLookControl(this); + this.setPathPriority(PathNodeType.LAVA, -1.0F); + this.setPathPriority(PathNodeType.WATER, -1.0F); + this.setPathPriority(PathNodeType.DANGER_FIRE, 0.0F); + this.experienceValue = 1; + } + + @Override + protected void registerData() { + super.registerData(); + makeColor(rand.nextFloat(), rand.nextFloat() * 0.5F + 0.25F, 1); + } + + public static AttributeModifierMap getAttributeContainer() { + return MobEntity + .func_233666_p_() + .createMutableAttribute(Attributes.MAX_HEALTH, 1.0) + .createMutableAttribute(Attributes.FLYING_SPEED, 0.6) + .createMutableAttribute(Attributes.MOVEMENT_SPEED, 0.25) + .createMutableAttribute(Attributes.FOLLOW_RANGE, 48.0) + .create(); + } + + @Override + protected PathNavigator createNavigator(World world) { + FlyingPathNavigator birdNavigation = new FlyingPathNavigator(this, world) { + public boolean canEntityStandOnPos(BlockPos pos) { + BlockState state = this.world.getBlockState(pos.down()); + boolean valid = !state.getBlock().isAir(state, this.world, pos.down()) && state.getMaterial() != Material.LAVA; + if (valid) { + state = this.world.getBlockState(pos); + valid = state.getBlock().isAir(state, this.world, pos) || !state.getMaterial().blocksMovement(); + valid = valid && state.getBlock() != BlocksRegistry.EGG_PLANT; + valid = valid && !state.getMaterial().blocksMovement(); + } + return valid; + } + + public void tick() { + super.tick(); + } + }; + birdNavigation.setCanOpenDoors(false); + birdNavigation.setCanSwim(false); + birdNavigation.setCanEnterDoors(true); + return birdNavigation; + } + + @Override + protected void registerGoals() { + this.goalSelector.addGoal(1, new SwimGoal(this)); + this.goalSelector.addGoal(2, new BreedGoal(this, 1.0D)); + this.goalSelector.addGoal(3, new FollowParentGoal(this, 1.0D)); + this.goalSelector.addGoal(4, new SittingGoal()); + this.goalSelector.addGoal(5, new MoveToFlowersGoal()); + this.goalSelector.addGoal(6, new WanderAroundGoal()); + this.goalSelector.addGoal(7, new MoveRandomGoal()); + } + + @Override + public float getBlockPathWeight(BlockPos pos, IWorldReader worldView) { + return worldView.getBlockState(pos).getBlock().isAir(worldView.getBlockState(pos), worldView, pos) ? 10.0F : 0.0F; + } + + @Override + public boolean isBreedingItem(ItemStack stack) { + return stack.getItem() == Items.GLOWSTONE_DUST; + } + + @Override + protected boolean makeFlySound() { + return true; + } + + @Override + public CreatureAttribute getCreatureAttribute() { + return CreatureAttribute.ARTHROPOD; + } + + @Override + protected void handleFluidJump(ITag fluid) { + this.setMotion(this.getMotion().add(0.0D, 0.01D, 0.0D)); + } + + @Override + public float getBrightness() { + return 1.0F; + } + + @Override + public boolean onLivingFall(float fallDistance, float damageMultiplier) { + return false; + } + + @Override + protected void updateFallState(double heightDifference, boolean onGround, BlockState landedState, BlockPos landedPosition) {} + + @Override + public boolean canTriggerWalking() { + return false; + } + + @Override + public boolean hasNoGravity() { + return true; + } + + public float getRed() { + return this.dataManager.get(COLOR_RED); + } + + public float getGreen() { + return this.dataManager.get(COLOR_GREEN); + } + + public float getBlue() { + return this.dataManager.get(COLOR_BLUE); + } + + @Override + public void writeAdditional(CompoundNBT tag) { + super.writeAdditional(tag); + + tag.putFloat("ColorRed", getRed()); + tag.putFloat("ColorGreen", getGreen()); + tag.putFloat("ColorBlue", getBlue()); + } + + @Override + public void readAdditional(CompoundNBT tag) { + super.readAdditional(tag); + + if (tag.contains("ColorRed")) { + this.dataManager.set(COLOR_RED, tag.getFloat("ColorRed")); + } + + if (tag.contains("ColorGreen")) { + this.dataManager.set(COLOR_GREEN, tag.getFloat("ColorGreen")); + } + + if (tag.contains("ColorBlue")) { + this.dataManager.set(COLOR_BLUE, tag.getFloat("ColorBlue")); + } + } + + @Override + public AgeableEntity func_241840_a(ServerWorld world, AgeableEntity mate) { + return null; //EntityRegistry.FIREFLY.create(world); + } + + class FreflyLookControl extends LookController { + FreflyLookControl(MobEntity entity) { + super(entity); + } + + protected boolean shouldStayHorizontal() { + return true; + } + } + + class WanderAroundGoal extends Goal { + WanderAroundGoal() { + this.setMutexFlags(EnumSet.of(Goal.Flag.MOVE)); + } + + @Override + public boolean shouldExecute() { + return EntityFirefly.this.navigator.noPath() && EntityFirefly.this.rand.nextInt(10) == 0; + } + + @Override + public boolean shouldContinueExecuting() { + return EntityFirefly.this.navigator.hasPath(); + } + + @Override + public void startExecuting() { + BlockPos pos = this.getRandomLocation(); + // if (pos != null) + // { + Path path = EntityFirefly.this.navigator.getPathToPos(pos, 1); + if (path != null) + EntityFirefly.this.navigator.setPath(path, 1.0D); + else + EntityFirefly.this.setVelocity(0, -0.2, 0); + // } + super.startExecuting(); + } + + private BlockPos getRandomLocation() { + World w = EntityFirefly.this.world; + Mutable bpos = new Mutable(); + bpos.setPos(EntityFirefly.this.getPosX(), EntityFirefly.this.getPosY(), EntityFirefly.this.getPosZ()); + + if (w.isAirBlock(bpos.down(2)) && w.isAirBlock(bpos.down())) { + int y = bpos.getY() - 1; + while (w.isAirBlock(bpos.down(2)) && y > 0) + bpos.setY(y--); + return bpos; + } + + Vector3d angle = EntityFirefly.this.getLook(0.0F); + Vector3d airTarget = RandomPositionGenerator.findAirTarget(EntityFirefly.this, 8, 7, angle, 1.5707964F, 2, 1); + + if (airTarget == null) { + airTarget = RandomPositionGenerator.findAirTarget(EntityFirefly.this, 16, 10, angle, 1.5707964F, 3, 1); + } + + if (airTarget == null) { + bpos.setX(bpos.getX() + randomRange(8)); + bpos.setZ(bpos.getZ() + randomRange(8)); + bpos.setY(bpos.getY() + randomRange(2)); + return bpos; + } + + bpos.setPos(airTarget.getX(), airTarget.getY(), airTarget.getZ()); + + return bpos; + } + + private int randomRange(int side) { + Random rand = EntityFirefly.this.rand; + return rand.nextInt(side + 1) - (side >> 1); + } + + @Override + public void tick() { + checkMovement(); + super.tick(); + } + } + + class MoveToFlowersGoal extends Goal { + MoveToFlowersGoal() { + this.setMutexFlags(EnumSet.of(Goal.Flag.MOVE)); + } + + @Override + public boolean shouldExecute() { + return EntityFirefly.this.navigator.noPath() && EntityFirefly.this.rand.nextInt(30) == 0; + } + + @Override + public boolean shouldContinueExecuting() { + return EntityFirefly.this.navigator.hasPath(); + } + + @Override + public void startExecuting() { + BlockPos pos = this.getFlowerLocation(); + if (pos != null) { + Path path = EntityFirefly.this.navigator.getPathToPos((BlockPos) (new BlockPos(pos)), 1); + EntityFirefly.this.navigator.setPath(path, 1.0D); + } + super.startExecuting(); + } + + @Override + public void resetTask() { + if (isFlower(EntityFirefly.this.getBlockState())) + EntityFirefly.this.mustSit = true; + super.resetTask(); + } + + private BlockPos getFlowerLocation() { + World w = EntityFirefly.this.world; + Mutable bpos = new Mutable(); + + for (Vector3i offset : SEARCH) { + bpos.setPos( + EntityFirefly.this.getPosX() + offset.getX(), + EntityFirefly.this.getPosY() + offset.getY(), + EntityFirefly.this.getPosZ() + offset.getZ()); + if (isFlower(w.getBlockState(bpos))) + return bpos; + } + + return null; + } + + private boolean isFlower(BlockState state) { + Block b = state.getBlock(); + return FLOWERS.contains(b); + } + + @Override + public void tick() { + checkMovement(); + super.tick(); + } + } + + private void checkMovement() { + Vector3d vel = EntityFirefly.this.getMotion(); + if (Math.abs(vel.x) > 0.1 || Math.abs(vel.z) > 0.1) { + double d = Math.abs(EntityFirefly.this.prevPosX - EntityFirefly.this.getPosX()); + d += Math.abs(EntityFirefly.this.prevPosZ - EntityFirefly.this.getPosZ()); + if (d < 0.1) + EntityFirefly.this.navigator.clearPath(); + } + } + + class SittingGoal extends Goal { + int timer; + int ammount; + + SittingGoal() {} + + @Override + public boolean shouldExecute() { + if (EntityFirefly.this.mustSit && EntityFirefly.this.navigator.noPath()) { + BlockPos pos = new BlockPos(EntityFirefly.this.getPosX(), EntityFirefly.this.getPosY(), EntityFirefly.this.getPosZ()); + BlockState state = EntityFirefly.this.world.getBlockState(pos.down()); + return !state.getBlock().isAir(state, EntityFirefly.this.world, pos.down()) && !state.getMaterial().isLiquid(); + } + return false; + } + + @Override + public boolean shouldContinueExecuting() { + return timer < ammount; + } + + @Override + public void startExecuting() { + timer = 0; + ammount = EntityFirefly.this.rand.nextInt(21) + 20; + EntityFirefly.this.mustSit = false; + EntityFirefly.this.setVelocity(0, -0.1, 0); + super.startExecuting(); + } + + @Override + public void resetTask() { + EntityFirefly.this.setVelocity(0, 0.1, 0); + super.resetTask(); + } + + @Override + public void tick() { + timer++; + super.tick(); + } + } + + class MoveRandomGoal extends Goal { + int timer; + int ammount; + + MoveRandomGoal() {} + + @Override + public boolean shouldExecute() { + return EntityFirefly.this.navigator.noPath() && EntityFirefly.this.rand.nextInt(20) == 0; + } + + @Override + public boolean shouldContinueExecuting() { + return timer < ammount; + } + + @Override + public void startExecuting() { + timer = 0; + ammount = EntityFirefly.this.rand.nextInt(30) + 10; + Vector3d velocity = new Vector3d( + EntityFirefly.this.rand.nextDouble(), + EntityFirefly.this.rand.nextDouble(), + EntityFirefly.this.rand.nextDouble()); + if (velocity.lengthSquared() == 0) + velocity = new Vector3d(1, 0, 0); + EntityFirefly.this.setMotion(velocity.normalize().scale(EntityFirefly.this.jumpMovementFactor)); + super.startExecuting(); + } + + @Override + public void tick() { + timer++; + super.tick(); + } + } + + @Override + public SoundEvent getAmbientSound() { + return SoundsRegistry.MOB_FIREFLY_FLY; + } + + @Override + protected float getSoundVolume() { + return MHelper.randRange(0.1F, 0.3F, rand); + } + + private void makeColor(float hue, float saturation, float brightness) { + float red = 0; + float green = 0; + float blue = 0; + float f3 = (hue - (float) Math.floor(hue)) * 6F; + float f4 = f3 - (float) Math.floor(f3); + float f5 = brightness * (1.0F - saturation); + float f6 = brightness * (1.0F - saturation * f4); + float f7 = brightness * (1.0F - saturation * (1.0F - f4)); + switch ((int) f3) { + case 0: + red = (byte) (brightness * 255F + 0.5F); + green = (byte) (f7 * 255F + 0.5F); + blue = (byte) (f5 * 255F + 0.5F); + break; + case 1: + red = (byte) (f6 * 255F + 0.5F); + green = (byte) (brightness * 255F + 0.5F); + blue = (byte) (f5 * 255F + 0.5F); + break; + case 2: + red = (byte) (f5 * 255F + 0.5F); + green = (byte) (brightness * 255F + 0.5F); + blue = (byte) (f7 * 255F + 0.5F); + break; + case 3: + red = (byte) (f5 * 255F + 0.5F); + green = (byte) (f6 * 255F + 0.5F); + blue = (byte) (brightness * 255F + 0.5F); + break; + case 4: + red = (byte) (f7 * 255F + 0.5F); + green = (byte) (f5 * 255F + 0.5F); + blue = (byte) (brightness * 255F + 0.5F); + break; + case 5: + red = (byte) (brightness * 255F + 0.5F); + green = (byte) (f5 * 255F + 0.5F); + blue = (byte) (f6 * 255F + 0.5F); + break; + } + this.dataManager.register(COLOR_RED, red / 255F); + this.dataManager.register(COLOR_GREEN, green / 255F); + this.dataManager.register(COLOR_BLUE, blue / 255F); + } + + @Override + public int getMaxSpawnedInChunk() { + return 5; + } + + static { + ArrayList points = new ArrayList(); + int radius = 6; + int r2 = radius * radius; + for (int x = -radius; x <= radius; x++) + for (int y = -radius; y <= radius; y++) + for (int z = -radius; z <= radius; z++) + if (x * x + y * y + z * z <= r2) + points.add(new Vector3i(x, y, z)); + points.sort(new Comparator() { + @Override + public int compare(Vector3i v1, Vector3i v2) { + int d1 = v1.getX() * v1.getX() + v1.getY() * v1.getY() + v1.getZ() * v1.getZ(); + int d2 = v2.getX() * v2.getX() + v2.getY() * v2.getY() + v2.getZ() * v2.getZ(); + return d1 - d2; + } + }); + SEARCH = points.toArray(new Vector3i[] {}); + + FLOWERS = new HashSet(); + FLOWERS.add(BlocksRegistry.NETHER_GRASS); + FLOWERS.add(BlocksRegistry.SOUL_GRASS); + FLOWERS.add(BlocksRegistry.SWAMP_GRASS); + FLOWERS.add(BlocksRegistry.BLACK_APPLE); + FLOWERS.add(BlocksRegistry.MAGMA_FLOWER); + FLOWERS.add(BlocksRegistry.SOUL_VEIN); + FLOWERS.add(BlocksRegistry.NETHER_REED); + FLOWERS.add(BlocksRegistry.INK_BUSH); + FLOWERS.add(BlocksRegistry.INK_BUSH_SEED); + FLOWERS.add(BlocksRegistry.POTTED_PLANT); + FLOWERS.add(Blocks.NETHER_WART); + } + + public static boolean canSpawn(EntityType type, IWorld world, SpawnReason spawnReason, BlockPos pos, Random rand) { + if (pos.getY() >= world.getDimensionType().getLogicalHeight()) return false; + int h = BlocksHelper.downRay(world, pos, 10); + if (h > 8) + return false; + for (int i = 1; i <= h; i++) + if (BlocksHelper.isLava(world.getBlockState(pos.down(i)))) + return false; + return true; + } + + @Override + public boolean canBePushed() { + return false; + } +} diff --git a/src/main/java/redd90/betternether/entity/EntityFlyingPig.java b/src/main/java/redd90/betternether/entity/EntityFlyingPig.java new file mode 100644 index 0000000..18eb3d1 --- /dev/null +++ b/src/main/java/redd90/betternether/entity/EntityFlyingPig.java @@ -0,0 +1,459 @@ +package redd90.betternether.entity; + +import java.util.EnumSet; +import java.util.Iterator; +import java.util.List; +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.entity.AgeableEntity; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityType; +import net.minecraft.entity.MobEntity; +import net.minecraft.entity.ai.RandomPositionGenerator; +import net.minecraft.entity.ai.attributes.AttributeModifierMap; +import net.minecraft.entity.ai.attributes.Attributes; +import net.minecraft.entity.ai.controller.FlyingMovementController; +import net.minecraft.entity.ai.goal.BreedGoal; +import net.minecraft.entity.ai.goal.Goal; +import net.minecraft.entity.ai.goal.LookAtGoal; +import net.minecraft.entity.ai.goal.LookRandomlyGoal; +import net.minecraft.entity.ai.goal.NearestAttackableTargetGoal; +import net.minecraft.entity.item.ItemEntity; +import net.minecraft.entity.passive.AnimalEntity; +import net.minecraft.entity.passive.IFlyingAnimal; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.player.ServerPlayerEntity; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.network.datasync.DataParameter; +import net.minecraft.network.datasync.DataSerializers; +import net.minecraft.network.datasync.EntityDataManager; +import net.minecraft.network.play.server.SSpawnParticlePacket; +import net.minecraft.particles.ItemParticleData; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.pathfinding.FlyingPathNavigator; +import net.minecraft.pathfinding.Path; +import net.minecraft.pathfinding.PathNavigator; +import net.minecraft.pathfinding.PathNodeType; +import net.minecraft.util.DamageSource; +import net.minecraft.util.Direction; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.GameRules; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.registry.EntityRegistry; + +public class EntityFlyingPig extends AnimalEntity implements IFlyingAnimal { + private static final DataParameter FLAGS; + private static final int BIT_ROOSTING = 0; + private static final int BIT_WARTED = 1; + private Goal preGoal; + + public EntityFlyingPig(EntityType type, World world) { + super(type, world); + this.moveController = new FlyingMovementController(this, 20, true); + this.setPathPriority(PathNodeType.LAVA, 0.0F); + this.setPathPriority(PathNodeType.WATER, 0.0F); + this.experienceValue = 2; + this.jumpMovementFactor = 0.3F; + } + + @Override + protected void registerGoals() { + this.targetSelector.addGoal(1, new NearestAttackableTargetGoal(this, PlayerEntity.class, true)); + this.goalSelector.addGoal(2, new FindFoodGoal()); + this.goalSelector.addGoal(3, new BreedGoal(this, 1.0D)); + this.goalSelector.addGoal(4, new SittingGoal()); + this.goalSelector.addGoal(5, new RoostingGoal()); + this.goalSelector.addGoal(6, new WanderAroundGoal()); + this.goalSelector.addGoal(7, new LookRandomlyGoal(this)); + this.goalSelector.addGoal(8, new LookAtGoal(this, PlayerEntity.class, 8.0F)); + } + + public static AttributeModifierMap getAttributeContainer() { + return MobEntity + .func_233666_p_() + .createMutableAttribute(Attributes.MAX_HEALTH, 6.0) + .createMutableAttribute(Attributes.FOLLOW_RANGE, 12.0) + .createMutableAttribute(Attributes.MOVEMENT_SPEED, 0.3) + .createMutableAttribute(Attributes.FLYING_SPEED, 0.3) + .createMutableAttribute(Attributes.ATTACK_DAMAGE, 3.0) + .createMutableAttribute(Attributes.ARMOR, 1.0) + .create(); + } + + @Override + protected PathNavigator createNavigator(World world) { + FlyingPathNavigator birdnavigator = new FlyingPathNavigator(this, world) { + public boolean canEntityStandOnPos(BlockPos pos) { + return this.world.isAirBlock(pos); + } + }; + birdnavigator.setCanOpenDoors(false); + birdnavigator.setCanSwim(true); + birdnavigator.setCanEnterDoors(true); + return birdnavigator; + } + + @Override + protected void registerData() { + super.registerData(); + this.dataManager.register(FLAGS, MHelper.setBit((byte) 0, BIT_WARTED, rand.nextInt(4) == 0)); + } + + @Override + public void writeAdditional(CompoundNBT tag) { + super.writeAdditional(tag); + + tag.putByte("byteData", this.dataManager.get(FLAGS)); + } + + @Override + public void readAdditional(CompoundNBT tag) { + super.readAdditional(tag); + + if (tag.contains("byteData")) { + this.dataManager.set(FLAGS, tag.getByte("byteData")); + } + } + + public boolean isRoosting() { + byte b = this.dataManager.get(FLAGS); + return MHelper.getBit(b, BIT_ROOSTING); + } + + public void setRoosting(boolean roosting) { + byte b = this.dataManager.get(FLAGS); + this.dataManager.set(FLAGS, MHelper.setBit(b, BIT_ROOSTING, roosting)); + } + + public boolean isWarted() { + byte b = this.dataManager.get(FLAGS); + return MHelper.getBit(b, BIT_WARTED); + } + + public void setWarted(boolean warted) { + byte b = this.dataManager.get(FLAGS); + this.dataManager.set(FLAGS, MHelper.setBit(b, BIT_WARTED, warted)); + } + + @Override + protected float getSoundVolume() { + return MHelper.randRange(0.85F, 1.15F, rand); + } + + @Override + protected float getSoundPitch() { + return MHelper.randRange(0.3F, 0.4F, rand); + } + + @Override + protected SoundEvent getHurtSound(DamageSource source) { + return SoundEvents.ENTITY_PIG_HURT; + } + + @Override + protected SoundEvent getDeathSound() { + return SoundEvents.ENTITY_PIG_DEATH; + } + + @Override + public SoundEvent getAmbientSound() { + return SoundEvents.ENTITY_PIG_AMBIENT; + } + + @Override + public boolean canBePushed() { + return false; + } + + @Override + protected void collideWithEntity(Entity entity) {} + + @Override + protected void collideWithNearbyEntities() {} + + @Override + protected boolean makeFlySound() { + return true; + } + + @Override + public boolean canTriggerWalking() { + return false; + } + + @Override + public boolean onLivingFall(float fallDistance, float damageMultiplier) { + return false; + } + + @Override + protected void updateFallState(double heightDifference, boolean onGround, BlockState landedState, BlockPos landedPosition) {} + + @Override + protected void onDeathUpdate() { + if (!world.isRemote && this.isWarted() && world.getServer().getGameRules().getBoolean(GameRules.DO_ENTITY_DROPS)) { + this.entityDropItem(new ItemStack(Items.NETHER_WART, MHelper.randRange(1, 3, rand))); + } + super.onDeathUpdate(); + + } + + @Override + public int getMaxSpawnedInChunk() { + return 5; + } + + static { + FLAGS = EntityDataManager.createKey(EntityFlyingPig.class, DataSerializers.BYTE); + } + + class WanderAroundGoal extends Goal { + WanderAroundGoal() { + this.setMutexFlags(EnumSet.of(Goal.Flag.MOVE)); + } + + public boolean shouldExecute() { + return EntityFlyingPig.this.navigator.noPath() && !EntityFlyingPig.this.isRoosting(); + } + + public boolean shouldContinueExecuting() { + return EntityFlyingPig.this.navigator.hasPath() && EntityFlyingPig.this.rand.nextInt(32) > 0; + } + + public void startExecuting() { + if (EntityFlyingPig.this.world.getFluidState(EntityFlyingPig.this.getPosition()).isEmpty()) { + BlockPos pos = this.getRandomLocation(); + Path path = EntityFlyingPig.this.navigator.getPathToPos(pos, 1); + if (path != null) + EntityFlyingPig.this.navigator.setPath(path, EntityFlyingPig.this.jumpMovementFactor); + else + EntityFlyingPig.this.setVelocity(0, -0.2, 0); + EntityFlyingPig.this.setRoosting(false); + } + else + EntityFlyingPig.this.setVelocity(0, 1, 0); + super.startExecuting(); + } + + private BlockPos getRandomLocation() { + Mutable bpos = new Mutable(); + bpos.setPos(EntityFlyingPig.this.getPosX(), EntityFlyingPig.this.getPosY(), EntityFlyingPig.this.getPosZ()); + + Vector3d angle = EntityFlyingPig.this.getLook(0.0F); + Vector3d airTarget = RandomPositionGenerator.findAirTarget(EntityFlyingPig.this, 8, 7, angle, 1.5707964F, 2, 1); + + if (airTarget == null) { + airTarget = RandomPositionGenerator.findAirTarget(EntityFlyingPig.this, 32, 10, angle, 1.5707964F, 3, 1); + } + + if (airTarget == null) { + bpos.setX(bpos.getX() + randomRange(32)); + bpos.setZ(bpos.getZ() + randomRange(32)); + bpos.setY(bpos.getY() + randomRange(32)); + return bpos; + } + + bpos.setPos(airTarget.getX(), airTarget.getY(), airTarget.getZ()); + BlockPos down = bpos.down(); + if (EntityFlyingPig.this.world.getBlockState(down).hasOpaqueCollisionShape(EntityFlyingPig.this.world, down)) + bpos.move(Direction.UP); + + while (!EntityFlyingPig.this.world.getFluidState(bpos).isEmpty()) + bpos.move(Direction.UP); + + return bpos; + } + + private int randomRange(int side) { + Random rand = EntityFlyingPig.this.rand; + return rand.nextInt(side + 1) - (side >> 1); + } + + @Override + public void resetTask() { + EntityFlyingPig.this.preGoal = this; + super.resetTask(); + } + } + + class RoostingGoal extends Goal { + BlockPos roosting; + + @Override + public boolean shouldExecute() { + return !(EntityFlyingPig.this.preGoal instanceof SittingGoal) && + EntityFlyingPig.this.navigator.noPath() && + !EntityFlyingPig.this.isRoosting() && + EntityFlyingPig.this.rand.nextInt(4) == 0; + } + + @Override + public boolean shouldContinueExecuting() { + return EntityFlyingPig.this.navigator.hasPath(); + } + + @Override + public void startExecuting() { + BlockPos pos = this.getRoostingLocation(); + if (pos != null) { + Path path = EntityFlyingPig.this.navigator.getPathToPos(pos, 1); + if (path != null) { + EntityFlyingPig.this.navigator.setPath(path, EntityFlyingPig.this.jumpMovementFactor); + this.roosting = pos; + } + } + super.startExecuting(); + } + + @Override + public void resetTask() { + if (this.roosting != null) { + EntityFlyingPig.this.setPosition(roosting.getX() + 0.5, roosting.getY() - 0.25, roosting.getZ() + 0.5); + EntityFlyingPig.this.setRoosting(true); + EntityFlyingPig.this.preGoal = this; + } + super.resetTask(); + } + + private BlockPos getRoostingLocation() { + BlockPos pos = EntityFlyingPig.this.getPosition(); + World world = EntityFlyingPig.this.world; + int up = BlocksHelper.upRay(world, pos, 16); + pos = pos.offset(Direction.UP, up); + if (world.getBlockState(pos.up()).getBlock() == Blocks.NETHER_WART_BLOCK) + return pos; + else + return null; + } + } + + class SittingGoal extends Goal { + int timer; + int ammount; + + @Override + public boolean shouldExecute() { + return EntityFlyingPig.this.isRoosting(); + } + + @Override + public boolean shouldContinueExecuting() { + return timer < ammount; + } + + @Override + public void startExecuting() { + timer = 0; + ammount = MHelper.randRange(80, 160, EntityFlyingPig.this.rand); + EntityFlyingPig.this.setVelocity(0, 0, 0); + EntityFlyingPig.this.setRenderYawOffset(EntityFlyingPig.this.rand.nextFloat() * MHelper.PI2); + super.startExecuting(); + } + + @Override + public void resetTask() { + EntityFlyingPig.this.setRoosting(false); + EntityFlyingPig.this.setVelocity(0, -0.1F, 0); + EntityFlyingPig.this.preGoal = this; + super.resetTask(); + } + + @Override + public void tick() { + timer++; + super.tick(); + } + } + + class FindFoodGoal extends Goal { + private List foods; + private ItemEntity target; + + @Override + public boolean shouldExecute() { + return hasNearFood(); + } + + @Override + public void startExecuting() { + BlockPos pos = getFood(); + Path path = EntityFlyingPig.this.navigator.getPathToPos(pos, 1); + if (path != null) { + EntityFlyingPig.this.navigator.setPath(path, EntityFlyingPig.this.jumpMovementFactor); + EntityFlyingPig.this.setRoosting(false); + } + super.startExecuting(); + } + + @Override + public boolean shouldContinueExecuting() { + return target.isAlive() && EntityFlyingPig.this.navigator.hasPath(); + } + + @Override + public void resetTask() { + if (target.isAlive() && target.getDistance(EntityFlyingPig.this) < 1.3) { + ItemStack stack = ((ItemEntity) target).getItem(); + + ItemParticleData effect = new ItemParticleData(ParticleTypes.ITEM, new ItemStack(stack.getItem())); + + Iterator var14 = world.getPlayers().iterator(); + + while (var14.hasNext()) { + ServerPlayerEntity serverPlayerEntity = (ServerPlayerEntity) var14.next(); + if (serverPlayerEntity.getDistanceSq(target.getPosX(), target.getPosY(), target.getPosZ()) < 4096.0D) { + serverPlayerEntity.connection.sendPacket(new SSpawnParticlePacket(effect, false, + target.getPosX(), + target.getPosY() + 0.2, + target.getPosZ(), + 0.2F, 0.2F, 0.2F, 0, 16)); + } + } + + EntityFlyingPig.this.onFoodEaten(world, stack); + target.onKillCommand(); + EntityFlyingPig.this.heal(stack.getCount()); + EntityFlyingPig.this.setVelocity(0, 0.2F, 0); + } + EntityFlyingPig.this.preGoal = this; + super.resetTask(); + } + + private BlockPos getFood() { + target = foods.get(EntityFlyingPig.this.rand.nextInt(foods.size())); + return target.getPosition(); + } + + private boolean hasNearFood() { + AxisAlignedBB AxisAlignedBB = new AxisAlignedBB(EntityFlyingPig.this.getPosition()).grow(16); + foods = EntityFlyingPig.this.world.getEntitiesWithinAABB(ItemEntity.class, AxisAlignedBB, (entity) -> { + return ((ItemEntity) entity).getItem().isFood(); + }); + return !foods.isEmpty(); + } + } + + @Override + public AgeableEntity func_241840_a(ServerWorld world, AgeableEntity mate) { + EntityFlyingPig pig = EntityRegistry.FLYING_PIG.create(this.world); + pig.setWarted(pig.isWarted()); + return pig; + } + + @Override + public boolean isBreedingItem(ItemStack stack) { + return stack.getItem() == Items.NETHER_WART; + } +} diff --git a/src/main/java/redd90/betternether/entity/EntityHydrogenJellyfish.java b/src/main/java/redd90/betternether/entity/EntityHydrogenJellyfish.java new file mode 100644 index 0000000..e82dd85 --- /dev/null +++ b/src/main/java/redd90/betternether/entity/EntityHydrogenJellyfish.java @@ -0,0 +1,242 @@ +package redd90.betternether.entity; + +import java.util.List; +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.entity.AgeableEntity; +import net.minecraft.entity.EntitySize; +import net.minecraft.entity.EntityType; +import net.minecraft.entity.MobEntity; +import net.minecraft.entity.Pose; +import net.minecraft.entity.SpawnReason; +import net.minecraft.entity.ai.attributes.AttributeModifierMap; +import net.minecraft.entity.ai.attributes.Attributes; +import net.minecraft.entity.passive.AnimalEntity; +import net.minecraft.entity.passive.IFlyingAnimal; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.fluid.Fluid; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.network.datasync.DataParameter; +import net.minecraft.network.datasync.DataSerializers; +import net.minecraft.network.datasync.EntityDataManager; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.tags.ITag; +import net.minecraft.util.DamageSource; +import net.minecraft.util.EntityDamageSource; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.MathHelper; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.Explosion; +import net.minecraft.world.GameRules; +import net.minecraft.world.IWorld; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.registry.SoundsRegistry; + +public class EntityHydrogenJellyfish extends AnimalEntity implements IFlyingAnimal { + private static final DataParameter SCALE = EntityDataManager.createKey(EntityHydrogenJellyfish.class, DataSerializers.FLOAT); + + private Vector3d preVelocity; + private Vector3d newVelocity = new Vector3d(0, 0, 0); + private int timer; + private int timeOut; + private float prewYaw; + private float nextYaw; + + public EntityHydrogenJellyfish(EntityType type, World world) { + super(type, world); + } + + @Override + protected void registerData() { + super.registerData(); + this.dataManager.register(SCALE, 0.5F + rand.nextFloat()); + } + + public static AttributeModifierMap getAttributeContainer() { + return MobEntity + .func_233666_p_() + .createMutableAttribute(Attributes.MAX_HEALTH, 0.5) + .createMutableAttribute(Attributes.FLYING_SPEED, 0.05) + .createMutableAttribute(Attributes.MOVEMENT_SPEED, 0.5) + .createMutableAttribute(Attributes.ATTACK_DAMAGE, 20.0) + .create(); + } + + @Override + protected boolean makeFlySound() { + return true; + } + + @Override + protected void handleFluidJump(ITag fluid) { + this.setMotion(this.getMotion().add(0.0D, 0.01D, 0.0D)); + } + + @Override + public boolean canTriggerWalking() { + return false; + } + + @Override + public boolean hasNoGravity() { + return true; + } + + @Override + public void writeAdditional(CompoundNBT tag) { + super.writeAdditional(tag); + + tag.putFloat("Scale", getScale()); + } + + @Override + public void readAdditional(CompoundNBT tag) { + super.readAdditional(tag); + + if (tag.contains("Scale")) { + this.dataManager.set(SCALE, tag.getFloat("Scale")); + } + + this.recalculateSize(); + } + + public float getScale() { + return this.dataManager.get(SCALE); + } + + public EntitySize getDimensions(Pose pose) { + return super.getSize(pose).scale(this.getScale()); + } + + @Override + public void onCollideWithPlayer(PlayerEntity player) { + player.attackEntityFrom(DamageSource.GENERIC, 3); + } + + @Override + public void recalculateSize() { + double x = this.getPosX(); + double y = this.getPosY(); + double z = this.getPosZ(); + super.recalculateSize(); + this.setPosition(x, y, z); + } + + @Override + public void notifyDataManagerChange(DataParameter data) { + if (SCALE.equals(data)) { + this.recalculateSize(); + } + } + + @Override + protected void updateAITasks() { + timer++; + if (timer > timeOut) { + prewYaw = this.rotationYaw; + nextYaw = rand.nextFloat() * 360; + + double rads = Math.toRadians(nextYaw + 90); + + double vx = Math.cos(rads) * this.jumpMovementFactor; + double vz = Math.sin(rads) * this.jumpMovementFactor; + + BlockPos bp = getPosition(); + double vy = rand.nextDouble() * this.jumpMovementFactor * 0.75; + if (world.getBlockState(bp).getBlock().isAir(world.getBlockState(bp), world, bp) && + world.getBlockState(bp.down(2)).getBlock().isAir(world.getBlockState(bp.down(2)), world, bp.down(2)) && + world.getBlockState(bp.down(3)).getBlock().isAir(world.getBlockState(bp.down(3)), world, bp.down(3)) && + world.getBlockState(bp.down(4)).getBlock().isAir(world.getBlockState(bp.down(4)), world, bp.down(4))) { + vy = -vy; + } + + preVelocity = newVelocity; + newVelocity = new Vector3d(vx, vy, vz); + timer = 0; + timeOut = rand.nextInt(300) + 120; + } + if (timer <= 120) { + if (this.rotationYaw != nextYaw) { + float delta = timer / 120F; + this.rotationYaw = lerpAngleDegrees(delta, prewYaw, nextYaw); + this.setVelocity( + MathHelper.lerp(delta, preVelocity.x, newVelocity.x), + MathHelper.lerp(delta, preVelocity.y, newVelocity.y), + MathHelper.lerp(delta, preVelocity.z, newVelocity.z)); + } + } + else { + this.setMotion(newVelocity); + } + } + + public static float lerpAngleDegrees(float delta, float first, float second) { + return first + delta * MathHelper.wrapDegrees(second - first); + } + + @Override + public int getMaxSpawnedInChunk() { + return 1; + } + + @Override + public void onDeath(DamageSource source) { + super.onDeath(source); + if (world.isRemote) { + float scale = getScale() * 3; + for (int i = 0; i < 20; i++) + this.world.addParticle(ParticleTypes.EXPLOSION, + getPosX() + rand.nextGaussian() * scale, + getEyeHeight() + rand.nextGaussian() * scale, + getPosZ() + rand.nextGaussian() * scale, + 0, 0, 0); + } + else { + Explosion.Mode destructionType = this.world.getGameRules().getBoolean(GameRules.MOB_GRIEFING) ? Explosion.Mode.DESTROY : Explosion.Mode.NONE; + this.world.createExplosion(this, getPosX(), getEyeHeight(), getPosZ(), 7 * getScale(), destructionType); + } + } + + @Override + public SoundEvent getAmbientSound() { + return SoundsRegistry.MOB_JELLYFISH; + } + + @Override + protected float getSoundVolume() { + return 0.1F; + } + + @Override + public AgeableEntity func_241840_a(ServerWorld world, AgeableEntity mate) { + return null; + } + + @Override + public boolean onLivingFall(float fallDistance, float damageMultiplier) { + return false; + } + + @Override + protected void updateFallState(double heightDifference, boolean onGround, BlockState landedState, BlockPos landedPosition) {} + + @Override + public boolean attackEntityFrom(DamageSource source, float amount) { + if (source == DamageSource.WITHER || source instanceof EntityDamageSource) { + return super.attackEntityFrom(source, amount); + } + return false; + } + + public static boolean canSpawn(EntityType type, IWorld world, SpawnReason spawnReason, BlockPos pos, Random rand) { + AxisAlignedBB box = new AxisAlignedBB(pos).expand(64, 256, 64); + List list = world.getEntitiesWithinAABB(EntityHydrogenJellyfish.class, box, (entity) -> { + return true; + }); + return list.size() < 4; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/entity/EntityJungleSkeleton.java b/src/main/java/redd90/betternether/entity/EntityJungleSkeleton.java new file mode 100644 index 0000000..8bc1e02 --- /dev/null +++ b/src/main/java/redd90/betternether/entity/EntityJungleSkeleton.java @@ -0,0 +1,81 @@ +package redd90.betternether.entity; + +import java.time.LocalDate; +import java.time.temporal.ChronoField; +import java.util.Random; + +import javax.annotation.Nullable; + +import net.minecraft.block.Blocks; +import net.minecraft.entity.EntityType; +import net.minecraft.entity.ILivingEntityData; +import net.minecraft.entity.SpawnReason; +import net.minecraft.entity.monster.SkeletonEntity; +import net.minecraft.inventory.EquipmentSlotType; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.Difficulty; +import net.minecraft.world.DifficultyInstance; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import net.minecraft.world.World; + +public class EntityJungleSkeleton extends SkeletonEntity { + public EntityJungleSkeleton(EntityType entityType, World world) { + super(entityType, world); + } + + @Override + public void livingTick() { + this.updateArmSwingProgress(); + this.idle(); + super.livingTick(); + } + + @Override + public ILivingEntityData onInitialSpawn(IServerWorld IServerWorld, DifficultyInstance difficulty, SpawnReason spawnReason, @Nullable ILivingEntityData entityData, @Nullable CompoundNBT entityTag) { + entityData = super.onInitialSpawn(IServerWorld, difficulty, spawnReason, entityData, entityTag); + super.setEquipmentBasedOnDifficulty(difficulty); + + this.setItemStackToSlot(EquipmentSlotType.MAINHAND, getHandItem()); + this.setItemStackToSlot(EquipmentSlotType.OFFHAND, getOffhandItem()); + + this.setEnchantmentBasedOnDifficulty(difficulty); + this.setCombatTask(); + this.setCanPickUpLoot(this.rand.nextFloat() < 0.55F * difficulty.getClampedAdditionalDifficulty()); + if (this.getItemStackFromSlot(EquipmentSlotType.HEAD).isEmpty()) { + LocalDate localDate = LocalDate.now(); + int i = localDate.get(ChronoField.DAY_OF_MONTH); + int j = localDate.get(ChronoField.MONTH_OF_YEAR); + if (j == 10 && i == 31 && this.rand.nextFloat() < 0.25F) { + this.setItemStackToSlot(EquipmentSlotType.HEAD, new ItemStack(this.rand.nextFloat() < 0.1F ? Blocks.JACK_O_LANTERN : Blocks.CARVED_PUMPKIN)); + this.inventoryArmorDropChances[EquipmentSlotType.HEAD.getIndex()] = 0.0F; + } + } + + return entityData; + } + + private ItemStack getHandItem() { + int n = this.rand.nextInt(3); + switch (n) { + case 0: + default: + return new ItemStack(this.rand.nextBoolean() ? Items.WOODEN_SWORD : Items.STONE_SWORD); + case 1: + return new ItemStack(Items.BOW); + case 2: + return new ItemStack(Items.AIR); + } + } + + private ItemStack getOffhandItem() { + return this.rand.nextInt(8) == 0 ? new ItemStack(Items.SHIELD) : new ItemStack(Items.AIR); + } + + public static boolean canSpawn(EntityType type, IWorld world, SpawnReason spawnReason, BlockPos pos, Random rand) { + return world.getDifficulty() != Difficulty.PEACEFUL; + } +} diff --git a/src/main/java/redd90/betternether/entity/EntityNaga.java b/src/main/java/redd90/betternether/entity/EntityNaga.java new file mode 100644 index 0000000..419408e --- /dev/null +++ b/src/main/java/redd90/betternether/entity/EntityNaga.java @@ -0,0 +1,107 @@ +package redd90.betternether.entity; + +import java.util.Random; + +import net.minecraft.entity.CreatureAttribute; +import net.minecraft.entity.EntityType; +import net.minecraft.entity.IRangedAttackMob; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.MobEntity; +import net.minecraft.entity.SpawnReason; +import net.minecraft.entity.ai.attributes.AttributeModifierMap; +import net.minecraft.entity.ai.attributes.Attributes; +import net.minecraft.entity.ai.goal.LookAtGoal; +import net.minecraft.entity.ai.goal.LookRandomlyGoal; +import net.minecraft.entity.ai.goal.NearestAttackableTargetGoal; +import net.minecraft.entity.ai.goal.RangedAttackGoal; +import net.minecraft.entity.ai.goal.WaterAvoidingRandomWalkingGoal; +import net.minecraft.entity.monster.IMob; +import net.minecraft.entity.monster.MonsterEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.potion.EffectInstance; +import net.minecraft.potion.Effects; +import net.minecraft.util.DamageSource; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.Difficulty; +import net.minecraft.world.IWorld; +import net.minecraft.world.World; +import redd90.betternether.MHelper; +import redd90.betternether.registry.EntityRegistry; +import redd90.betternether.registry.SoundsRegistry; + +public class EntityNaga extends MonsterEntity implements IRangedAttackMob, IMob { + public EntityNaga(EntityType type, World world) { + super(type, world); + this.experienceValue = 10; + } + + @Override + protected void registerGoals() { + this.targetSelector.addGoal(1, new NearestAttackableTargetGoal(this, PlayerEntity.class, true)); + this.goalSelector.addGoal(2, new RangedAttackGoal(this, 1.0D, 40, 20.0F)); + this.goalSelector.addGoal(3, new LookAtGoal(this, PlayerEntity.class, 8.0F)); + this.goalSelector.addGoal(4, new WaterAvoidingRandomWalkingGoal(this, 1.0D)); + this.goalSelector.addGoal(5, new LookRandomlyGoal(this)); + } + + public static AttributeModifierMap getAttributeContainer() { + return MobEntity + .func_233666_p_() + .createMutableAttribute(Attributes.MAX_HEALTH, 10.0) + .createMutableAttribute(Attributes.FOLLOW_RANGE, 35.0) + .createMutableAttribute(Attributes.MOVEMENT_SPEED, 0.23) + .createMutableAttribute(Attributes.ATTACK_DAMAGE, 3.0) + .createMutableAttribute(Attributes.ARMOR, 2.0) + .create(); + } + + @Override + public void attackEntityWithRangedAttack(LivingEntity target, float f) { + EntityNagaProjectile projectile = EntityRegistry.NAGA_PROJECTILE.create(world); + projectile.setPositionAndRotation(getPosX(), getPosYEye(), getPosZ(), 0, 0); + projectile.setParams(this, target); + world.addEntity(projectile); + this.playSound(SoundsRegistry.MOB_NAGA_ATTACK, MHelper.randRange(3F, 5F, rand), MHelper.randRange(0.75F, 1.25F, rand)); + } + + @Override + public CreatureAttribute getCreatureAttribute() { + return CreatureAttribute.UNDEAD; + } + + @Override + public boolean isPotionApplicable(EffectInstance effect) { + return effect.getPotion() == Effects.WITHER ? false : super.isPotionApplicable(effect); + } + + @Override + public SoundEvent getAmbientSound() { + return SoundsRegistry.MOB_NAGA_IDLE; + } + + @Override + protected SoundEvent getHurtSound(DamageSource source) { + return SoundEvents.ENTITY_SKELETON_HURT; + } + + @Override + protected SoundEvent getDeathSound() { + return SoundEvents.ENTITY_SKELETON_DEATH; + } + + @Override + protected boolean isDespawnPeaceful() { + return true; + } + + @Override + public int getHorizontalFaceSpeed() { + return 1; + } + + public static boolean canSpawn(EntityType type, IWorld world, SpawnReason spawnReason, BlockPos pos, Random random) { + return world.getDifficulty() != Difficulty.PEACEFUL && world.getLight(pos) < 8; + } +} diff --git a/src/main/java/redd90/betternether/entity/EntityNagaProjectile.java b/src/main/java/redd90/betternether/entity/EntityNagaProjectile.java new file mode 100644 index 0000000..a0ba60c --- /dev/null +++ b/src/main/java/redd90/betternether/entity/EntityNagaProjectile.java @@ -0,0 +1,142 @@ +package redd90.betternether.entity; + +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityType; +import net.minecraft.entity.FlyingEntity; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.projectile.ProjectileHelper; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.potion.EffectInstance; +import net.minecraft.potion.Effects; +import net.minecraft.util.math.EntityRayTraceResult; +import net.minecraft.util.math.RayTraceResult; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.World; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; + +public class EntityNagaProjectile extends FlyingEntity { + private static final int MAX_LIFE_TIME = 60; // 3 seconds * 20 ticks + private int lifeTime = 0; + + public EntityNagaProjectile(EntityType type, World world) { + super(type, world); + this.experienceValue = 0; + } + + public void setParams(LivingEntity owner, Entity target) { + this.setPosition(getPosX(), getPosYEye() - this.getHeight(), getPosZ()); + Vector3d dir = target.getPositionVec().add(0, target.getHeight() * 0.25, 0).subtract(getPositionVec()).normalize().scale(2); + this.setMotion(dir); + this.prevPosX = getPosX() - dir.x; + this.prevPosY = getPosY() - dir.y; + this.prevPosZ = getPosZ() - dir.z; + } + + @Override + public boolean hasNoGravity() { + return true; + } + + @Override + @OnlyIn(Dist.CLIENT) + public boolean isInRangeToRenderDist(double distance) { + return distance < 128; + } + + @Override + public void tick() { + super.tick(); + world.addParticle(ParticleTypes.LARGE_SMOKE, + getPosX() + rand.nextGaussian() * 0.2, + getPosY() + rand.nextGaussian() * 0.2, + getPosZ() + rand.nextGaussian() * 0.2, + 0, 0, 0); + world.addParticle(ParticleTypes.SMOKE, + getPosX() + rand.nextGaussian() * 0.2, + getPosY() + rand.nextGaussian() * 0.2, + getPosZ() + rand.nextGaussian() * 0.2, + 0, 0, 0); + + RayTraceResult hitResult = ProjectileHelper.func_234618_a_(this, (entity) -> { + return entity.isAlive() && entity instanceof LivingEntity; + }); + if (hitResult.getType() != RayTraceResult.Type.MISS) { + this.onCollision(hitResult); + } + + lifeTime++; + if (lifeTime > MAX_LIFE_TIME) + effectKill(); + + if (isSame(this.prevPosX, this.getPosX()) && isSame(this.prevPosY, this.getPosY()) && isSame(this.prevPosZ, this.getPosZ())) + effectKill(); + } + + private boolean isSame(double a, double b) { + return Math.abs(a - b) < 0.1; + } + + protected void onCollision(RayTraceResult hitResult) { + RayTraceResult.Type type = hitResult.getType(); + if (type == RayTraceResult.Type.BLOCK) { + for (int i = 0; i < 10; i++) { + world.addParticle(ParticleTypes.LARGE_SMOKE, + getPosX() + rand.nextGaussian() * 0.5, + getPosY() + rand.nextGaussian() * 0.5, + getPosZ() + rand.nextGaussian() * 0.5, + rand.nextGaussian() * 0.2, + rand.nextGaussian() * 0.2, + rand.nextGaussian() * 0.2); + } + effectKill(); + } + else if (type == RayTraceResult.Type.ENTITY) { + Entity entity = ((EntityRayTraceResult) hitResult).getEntity(); + if (entity != this && entity instanceof LivingEntity && !(entity instanceof EntityNaga)) { + LivingEntity living = (LivingEntity) entity; + if (!(living.isPotionActive(Effects.WITHER))) { + living.addPotionEffect(new EffectInstance(Effects.WITHER, 40)); + // living.damage(DamageSource.GENERIC, 0.5F); + } + effectKill(); + } + } + } + + private void effectKill() { + for (int i = 0; i < 10; i++) { + world.addParticle(ParticleTypes.ENTITY_EFFECT, + getPosX() + rand.nextGaussian() * 0.5, + getPosY() + rand.nextGaussian() * 0.5, + getPosZ() + rand.nextGaussian() * 0.5, + 0.1, 0.1, 0.1); + } + this.onKillCommand(); + } + + @Override + public boolean isPotionApplicable(EffectInstance effect) { + return false; + } + + @Override + public boolean isSilent() { + return true; + } + + @Override + public void writeAdditional(CompoundNBT tag) { + super.writeAdditional(tag); + tag.putInt("life", lifeTime); + } + + @Override + public void readAdditional(CompoundNBT tag) { + super.readAdditional(tag); + if (tag.contains("life")) { + lifeTime = tag.getInt("life"); + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/entity/EntitySkull.java b/src/main/java/redd90/betternether/entity/EntitySkull.java new file mode 100644 index 0000000..c5e1537 --- /dev/null +++ b/src/main/java/redd90/betternether/entity/EntitySkull.java @@ -0,0 +1,267 @@ +package redd90.betternether.entity; + +import java.util.List; +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.entity.CreatureAttribute; +import net.minecraft.entity.EntityType; +import net.minecraft.entity.MobEntity; +import net.minecraft.entity.Pose; +import net.minecraft.entity.SpawnReason; +import net.minecraft.entity.ai.attributes.AttributeModifierMap; +import net.minecraft.entity.ai.attributes.Attributes; +import net.minecraft.entity.ai.controller.FlyingMovementController; +import net.minecraft.entity.ai.controller.LookController; +import net.minecraft.entity.monster.MonsterEntity; +import net.minecraft.entity.passive.IFlyingAnimal; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.player.ServerPlayerEntity; +import net.minecraft.item.ShieldItem; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.pathfinding.PathNodeType; +import net.minecraft.util.DamageSource; +import net.minecraft.util.Hand; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.MathHelper; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.Difficulty; +import net.minecraft.world.IWorld; +import net.minecraft.world.World; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.MHelper; +import redd90.betternether.registry.SoundsRegistry; + + +public class EntitySkull extends MonsterEntity implements IFlyingAnimal { + private static double particleX; + private static double particleY; + private static double particleZ; + private int attackTick; + private int dirTickTick; + private int collideTick; + + public EntitySkull(EntityType type, World world) { + super(type, world); + this.moveController = new FlyingMovementController(this, 20, true); + this.lookController = new SkullLookControl(this); + this.setPathPriority(PathNodeType.LAVA, -1.0F); + this.setPathPriority(PathNodeType.WATER, -1.0F); + this.setPathPriority(PathNodeType.DANGER_FIRE, 0.0F); + this.experienceValue = 1; + this.jumpMovementFactor = 0.5F; + } + + public static AttributeModifierMap getAttributeContainer() { + return MobEntity + .func_233666_p_() + .createMutableAttribute(Attributes.MAX_HEALTH, 4.0) + .createMutableAttribute(Attributes.FOLLOW_RANGE, 20.0) + .createMutableAttribute(Attributes.MOVEMENT_SPEED, 0.5) + .createMutableAttribute(Attributes.FLYING_SPEED, 0.5) + .createMutableAttribute(Attributes.ATTACK_DAMAGE, 1.0) + .create(); + } + + class SkullLookControl extends LookController { + SkullLookControl(MobEntity entity) { + super(entity); + } + + protected boolean shouldStayHorizontal() { + return false; + } + } + + @Override + public void onCollideWithPlayer(PlayerEntity player) { + collideTick++; + if (collideTick > 3) { + collideTick = 0; + + boolean shield = player.getActiveItemStack().getItem() instanceof ShieldItem && player.isHandActive(); + if (shield) { + player.playSound(SoundEvents.ITEM_SHIELD_BLOCK, MHelper.randRange(0.8F, 1.2F, rand), MHelper.randRange(0.8F, 1.2F, rand)); + this.setMotion(new Vector3d(0, 0, 0).subtract(getMotion())); + } + if (player instanceof ServerPlayerEntity) { + if (shield) { + player.getActiveItemStack().attemptDamageItem(1, rand, (ServerPlayerEntity) player); + if (player.getActiveItemStack().getDamage() > player.getActiveItemStack().getMaxDamage()) { + player.sendBreakAnimation(player.getActiveHand()); + if (player.getActiveHand().equals(Hand.MAIN_HAND)) + player.inventory.mainInventory.clear(); + else if (player.getActiveHand().equals(Hand.OFF_HAND)) + player.inventory.offHandInventory.clear(); + player.resetActiveHand(); + } + return; + } + player.attackEntityFrom(DamageSource.GENERIC, 1); + if (rand.nextInt(16) == 0) + player.setFire(3); + } + } + } + + @Override + public void tick() { + super.tick(); + if (rand.nextInt(3) == 0) { + updateParticlePos(); + this.world.addParticle(ParticleTypes.SMOKE, particleX, particleY, particleZ, 0, 0, 0); + } + if (rand.nextInt(3) == 0) { + updateParticlePos(); + this.world.addParticle(ParticleTypes.DRIPPING_LAVA, particleX, particleY, particleZ, 0, 0, 0); + } + if (rand.nextInt(3) == 0) { + updateParticlePos(); + this.world.addParticle(ParticleTypes.FLAME, particleX, particleY, particleZ, 0, 0, 0); + } + + if (attackTick > 40 && this.isAlive()) { + PlayerEntity target = EntitySkull.this.world.getClosestPlayer(getPosX(), getPosY(), getPosZ(), 20, true); + if (target != null && this.canEntityBeSeen(target)) { + attackTick = 0; + Vector3d velocity = target + .getPositionVec() + .add(0, target.getHeight() * 0.5F, 0) + .subtract(EntitySkull.this.getPositionVec()) + .normalize() + .scale(EntitySkull.this.jumpMovementFactor); + setMotion(velocity); + this.faceEntity(target, 360, 360); + this.playSound(SoundsRegistry.MOB_SKULL_FLIGHT, MHelper.randRange(0.15F, 0.3F, rand), MHelper.randRange(0.9F, 1.5F, rand)); + } + else if (dirTickTick < 0) { + dirTickTick = MHelper.randRange(20, 60, rand); + moveRandomDir(); + } + } + else { + if (dirTickTick < 0) { + dirTickTick = MHelper.randRange(20, 60, rand); + moveRandomDir(); + } + } + attackTick++; + dirTickTick--; + } + + @Override + protected SoundEvent getAmbientSound() { + return SoundEvents.ENTITY_SKELETON_AMBIENT; + } + + @Override + protected SoundEvent getHurtSound(DamageSource source) { + return SoundEvents.ENTITY_SKELETON_HURT; + } + + @Override + protected SoundEvent getDeathSound() { + return SoundEvents.ENTITY_SKELETON_DEATH; + } + + private void moveRandomDir() { + double dx = rand.nextDouble() - 0.5; + double dy = rand.nextDouble() - 0.5; + double dz = rand.nextDouble() - 0.5; + double l = dx * dx + dy * dy + dz * dz; + if (l == 0) + l = 1; + else + l = (float) Math.sqrt(l); + l /= this.jumpMovementFactor; + dx /= l; + dy /= l; + dz /= l; + setVelocity(dx, dy, dz); + lookAt(this.getPositionVec().add(this.getMotion())); + this.playSound(SoundsRegistry.MOB_SKULL_FLIGHT, MHelper.randRange(0.15F, 0.3F, rand), MHelper.randRange(0.75F, 1.25F, rand)); + } + + private void lookAt(Vector3d target) { + double d = target.getX() - this.getPosX(); + double e = target.getZ() - this.getPosZ(); + double g = target.getY() - this.getPosY(); + + double h = MathHelper.sqrt(d * d + e * e); + float i = (float) (MathHelper.atan2(e, d) * 57.2957763671875D) - 90.0F; + float j = (float) (-(MathHelper.atan2(g, h) * 57.2957763671875D)); + + this.rotationPitch = j; + this.rotationYaw = i; + } + + private void updateParticlePos() { + particleX = rand.nextDouble() - 0.5; + particleY = rand.nextDouble() - 0.5; + particleZ = rand.nextDouble() - 0.5; + double l = particleX * particleX + particleY * particleY + particleZ * particleZ; + if (l == 0) + l = 1; + else + l = (float) Math.sqrt(l); + particleX = particleX * 0.5 / l + getPosX(); + particleY = particleY * 0.5 / l + getPosY(); + particleZ = particleZ * 0.5 / l + getPosZ(); + } + + @Override + @OnlyIn(Dist.CLIENT) + public float getEyeHeight(Pose pose) { + return this.getSize(pose).height * 0.5F; + } + + @Override + protected boolean makeFlySound() { + return true; + } + + @Override + public CreatureAttribute getCreatureAttribute() { + return CreatureAttribute.UNDEAD; + } + + @Override + public boolean onLivingFall(float fallDistance, float damageMultiplier) { + return false; + } + + @Override + protected void updateFallState(double heightDifference, boolean onGround, BlockState landedState, BlockPos landedPosition) {} + + @Override + public boolean canTriggerWalking() { + return false; + } + + @Override + public boolean hasNoGravity() { + return true; + } + + @Override + public boolean canBePushed() { + return false; + } + + public static boolean canSpawn(EntityType type, IWorld world, SpawnReason spawnReason, BlockPos pos, Random rand) { + if (world.getDifficulty() == Difficulty.PEACEFUL || world.getLight(pos) > 7) + return false; + + if (pos.getY() >= world.getDimensionType().getLogicalHeight()) return false; + + AxisAlignedBB box = new AxisAlignedBB(pos).expand(256, 256, 256); + List list = world.getEntitiesWithinAABB(EntitySkull.class, box, (entity) -> { + return true; + }); + return list.size() < 4; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/entity/EntityTypeBuilder.java b/src/main/java/redd90/betternether/entity/EntityTypeBuilder.java new file mode 100644 index 0000000..d44138c --- /dev/null +++ b/src/main/java/redd90/betternether/entity/EntityTypeBuilder.java @@ -0,0 +1,63 @@ +package redd90.betternether.entity; + +import java.util.Objects; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +import com.google.common.collect.ImmutableSet; + +import net.minecraft.block.Block; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityClassification; +import net.minecraft.entity.EntitySize; +import net.minecraft.entity.EntityType; + +public class EntityTypeBuilder { + + private static final Logger LOGGER = LogManager.getLogger(); + private EntityClassification classification; + private EntityType.IFactory factory; + private boolean saveable = true; + private boolean summonable = true; + private int trackRange = 5; + private int trackedUpdateRate = 3; + private Boolean forceTrackedVelocityUpdates; + private boolean fireImmune = false; + private boolean spawnableFarFromPlayer; + private EntitySize size = EntitySize.flexible(-1.0f, -1.0f); + private ImmutableSet specificSpawnBlocks = ImmutableSet.of(); + + protected EntityTypeBuilder(EntityClassification classification, EntityType.IFactory factory) { + this.classification = classification; + this.factory = factory; + this.spawnableFarFromPlayer = classification == EntityClassification.CREATURE || classification == EntityClassification.MISC; + } + + public static EntityTypeBuilder create(EntityClassification classification, EntityType.IFactory factory) { + return new EntityTypeBuilder<>(classification, factory); + } + + public EntityTypeBuilder size(EntitySize size) { + Objects.requireNonNull(size, "Cannot set null size"); + this.size = size; + return this; + } + + public EntityTypeBuilder fireImmune() { + this.fireImmune = true; + return this; + } + + public EntityTypeBuilder disableSummon() { + this.summonable = false; + return this; + } + + public EntityType build() { + + EntityType type = new EntityType(this.factory, this.classification, this.saveable, this.summonable, this.fireImmune, this.spawnableFarFromPlayer, this.specificSpawnBlocks, size, trackRange, trackedUpdateRate); + + return type; + } +} diff --git a/src/main/java/redd90/betternether/entity/model/ModelEmpty.java b/src/main/java/redd90/betternether/entity/model/ModelEmpty.java new file mode 100644 index 0000000..249d689 --- /dev/null +++ b/src/main/java/redd90/betternether/entity/model/ModelEmpty.java @@ -0,0 +1,24 @@ +package redd90.betternether.entity.model; + +import com.google.common.collect.ImmutableList; + +import net.minecraft.client.renderer.entity.model.AgeableModel; +import net.minecraft.client.renderer.model.ModelRenderer; +import redd90.betternether.entity.EntityChair; + +public class ModelEmpty extends AgeableModel { + @Override + protected Iterable getHeadParts() { + return ImmutableList.of(); + } + + @Override + protected Iterable getBodyParts() { + return ImmutableList.of(); + } + + @Override + public void setRotationAngles(EntityChair entity, float limbAngle, float limbDistance, float customAngle, float headYaw, float headPitch) { + + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/entity/model/ModelEntityFirefly.java b/src/main/java/redd90/betternether/entity/model/ModelEntityFirefly.java new file mode 100644 index 0000000..80491bb --- /dev/null +++ b/src/main/java/redd90/betternether/entity/model/ModelEntityFirefly.java @@ -0,0 +1,49 @@ +package redd90.betternether.entity.model; + +import com.google.common.collect.ImmutableList; + +import net.minecraft.client.renderer.entity.model.AgeableModel; +import net.minecraft.client.renderer.model.ModelRenderer; +import redd90.betternether.entity.EntityFirefly; + +public class ModelEntityFirefly extends AgeableModel { + private final ModelRenderer body; + private final ModelRenderer legs; + private final ModelRenderer glow; + + public ModelEntityFirefly() { + textureHeight = 64; + textureWidth = 32; + + body = new ModelRenderer(this, 0, 0); + body.addBox(0F, 0F, 0F, 5, 5, 5); + body.setRotationPoint(-2.5F, 18F, -2.5F); + + legs = new ModelRenderer(this, 0, 22); + legs.addBox(0F, 0F, 0F, 3F, 3F, 4F); + legs.setRotationPoint(1.0F, 5F, 0.5F); + + body.addChild(legs); + + glow = new ModelRenderer(this, 0, 10); + glow.addBox(0F, 0F, 0F, 6F, 6F, 6F); + glow.setRotationPoint(-0.5F, -0.5F, -0.5F); + + body.addChild(glow); + } + + @Override + protected Iterable getHeadParts() { + return ImmutableList.of(); + } + + @Override + protected Iterable getBodyParts() { + return ImmutableList.of(this.body); + } + + @Override + public void setRotationAngles(EntityFirefly entity, float limbAngle, float limbDistance, float customAngle, float headYaw, float headPitch) { + + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/entity/model/ModelEntityFlyingPig.java b/src/main/java/redd90/betternether/entity/model/ModelEntityFlyingPig.java new file mode 100644 index 0000000..907b9d8 --- /dev/null +++ b/src/main/java/redd90/betternether/entity/model/ModelEntityFlyingPig.java @@ -0,0 +1,143 @@ +package redd90.betternether.entity.model; + +import com.google.common.collect.ImmutableList; + +import net.minecraft.client.renderer.entity.model.AgeableModel; +import net.minecraft.client.renderer.model.ModelRenderer; +import net.minecraft.util.math.MathHelper; +import redd90.betternether.entity.EntityFlyingPig; + +public class ModelEntityFlyingPig extends AgeableModel { + private final ModelRenderer head; + private final ModelRenderer body; + private final ModelRenderer rightWing; + private final ModelRenderer leftWing; + private final ModelRenderer rightWingTip; + private final ModelRenderer leftWingTip; + private final ModelRenderer tail; + private final ModelRenderer legA; + private final ModelRenderer legB; + + public ModelEntityFlyingPig() { + this.textureWidth = 128; + this.textureHeight = 64; + + this.head = new ModelRenderer(this, 0, 0); + this.head.addBox(-4.0F, -4.0F, -4.0F, 8.0F, 8.0F, 8.0F); + + ModelRenderer modelEar = new ModelRenderer(this, 32, 4); + modelEar.setRotationPoint(-7.0F, -7.0F, -2.0F); + modelEar.addBox(0.0F, 0.0F, 0.0F, 5.0F, 5.0F, 1.0F); + this.head.addChild(modelEar); + + modelEar = new ModelRenderer(this, 32, 4); + modelEar.setRotationPoint(2.0F, -7.0F, -2.0F); + modelEar.mirror = true; + modelEar.addBox(0.0F, 0.0F, 0.0F, 5.0F, 5.0F, 1.0F); + this.head.addChild(modelEar); + + ModelRenderer piglet = new ModelRenderer(this, 32, 0); + piglet.setRotationPoint(-2.0F, -1.0F, -5.0F); + piglet.addBox(0.0F, 0.0F, 0.0F, 4.0F, 3.0F, 1.0F); + this.head.addChild(piglet); + + this.body = new ModelRenderer(this, 0, 16); + this.body.addBox(-5.0F, 3.0F, -4.0F, 10.0F, 14.0F, 8.0F); + + this.rightWing = new ModelRenderer(this, 36, 10); + this.rightWing.setRotationPoint(5, 2.5F, 0); + this.rightWing.addBox(0.0F, 0.0F, 0.0F, 16.0F, 16.0F, 0.0F); + this.body.addChild(this.rightWing); + + this.rightWingTip = new ModelRenderer(this, 36, 26); + this.rightWingTip.setRotationPoint(16.0F, 0.0F, 0.0F); + this.rightWingTip.addBox(0.0F, 0.0F, 0.0F, 16.0F, 16.0F, 0.0F); + this.rightWing.addChild(this.rightWingTip); + + this.leftWing = new ModelRenderer(this, 36, 10); + this.leftWing.mirror = true; + this.leftWing.setRotationPoint(-5, 2.5F, 0); + this.leftWing.addBox(-16.0F, 0.0F, 0.0F, 16.0F, 16.0F, 0.0F); + this.body.addChild(this.leftWing); + + this.leftWingTip = new ModelRenderer(this, 36, 26); + this.leftWingTip.mirror = true; + this.leftWingTip.setRotationPoint(-16.0F, 0.0F, 0.0F); + this.leftWingTip.addBox(-16.0F, 0.0F, 0.0F, 16.0F, 16.0F, 0.0F); + this.leftWing.addChild(this.leftWingTip); + + tail = new ModelRenderer(this, 0, 40); + tail.setRotationPoint(0, 17, 0); + tail.addBox(-4.0F, 0.0F, 0.0F, 8.0F, 8.0F, 0.0F); + this.body.addChild(tail); + + this.legA = new ModelRenderer(this, 0, 48); + legA.setRotationPoint(1.5F, 15, -4); + legA.addBox(0.0F, 0.0F, 0.0F, 3.0F, 6.0F, 3.0F); + this.body.addChild(legA); + + this.legB = new ModelRenderer(this, 0, 48); + legB.setRotationPoint(-4.5F, 15, -4); + legB.addBox(0.0F, 0.0F, 0.0F, 3.0F, 6.0F, 3.0F); + this.body.addChild(legB); + } + + @Override + protected Iterable getHeadParts() { + return ImmutableList.of(head); + } + + @Override + protected Iterable getBodyParts() { + return ImmutableList.of(body); + } + + @Override + public void setRotationAngles(EntityFlyingPig entity, float limbAngle, float limbDistance, float animationProgress, float headYaw, float headPitch) { + if (entity.isRoosting()) { + this.head.rotateAngleX = headPitch * 0.017453292F; + this.head.rotateAngleY = 3.1415927F - headYaw * 0.017453292F; + this.head.rotateAngleZ = 3.1415927F; + + this.body.rotateAngleX = 3.1415927F; + this.rightWing.rotateAngleX = 0; + this.rightWing.rotateAngleY = -1.2566371F; + this.rightWingTip.rotateAngleY = 2.8F; + this.leftWing.rotateAngleX = this.rightWing.rotateAngleX; + this.leftWing.rotateAngleY = -this.rightWing.rotateAngleY; + this.leftWingTip.rotateAngleY = -this.rightWingTip.rotateAngleY; + + this.head.setRotationPoint(0.0F, 25, 0.0F); + this.body.setRotationPoint(0.0F, 24, 0.0F); + + this.legA.rotateAngleX = 0; + this.legB.rotateAngleX = 0; + this.tail.rotateAngleX = 0.1F; + + legA.setRotationPoint(1.5F, 15, -3); + legB.setRotationPoint(-4.5F, 15, -3); + } + else { + this.head.rotateAngleX = headPitch * 0.017453292F; + this.head.rotateAngleY = headYaw * 0.017453292F; + this.head.rotateAngleZ = 0.0F; + + this.body.rotateAngleX = 0.7853982F + MathHelper.cos(animationProgress * 0.1F) * 0.15F; + this.body.rotateAngleY = 0.0F; + this.rightWing.rotateAngleY = MathHelper.cos(animationProgress * 0.4F) * 3.1415927F * 0.25F; + this.leftWing.rotateAngleY = -this.rightWing.rotateAngleY; + this.rightWingTip.rotateAngleY = this.rightWing.rotateAngleY * 0.75F; + this.leftWingTip.rotateAngleY = -this.rightWing.rotateAngleY * 0.75F; + this.tail.rotateAngleX = MathHelper.cos(animationProgress * 0.3F) * 0.25F; + + this.legA.rotateAngleX = -this.body.rotateAngleX + MathHelper.sin(animationProgress * 0.05F) * 0.1F; + this.legB.rotateAngleX = -this.body.rotateAngleX + MathHelper.cos(animationProgress * 0.05F) * 0.1F; + + this.head.setRotationPoint(0.0F, 8.0F, 0.0F); + this.body.setRotationPoint(0.0F, 8.0F, 0.0F); + + legA.setRotationPoint(1.5F, 15, -4); + legB.setRotationPoint(-4.5F, 15, -4); + } + } +} diff --git a/src/main/java/redd90/betternether/entity/model/ModelEntityHydrogenJellyfish.java b/src/main/java/redd90/betternether/entity/model/ModelEntityHydrogenJellyfish.java new file mode 100644 index 0000000..3ae16d5 --- /dev/null +++ b/src/main/java/redd90/betternether/entity/model/ModelEntityHydrogenJellyfish.java @@ -0,0 +1,134 @@ +package redd90.betternether.entity.model; + +import com.google.common.collect.ImmutableList; + +import net.minecraft.client.renderer.entity.model.AgeableModel; +import net.minecraft.client.renderer.model.ModelRenderer; +import redd90.betternether.entity.EntityHydrogenJellyfish; + +public class ModelEntityHydrogenJellyfish extends AgeableModel { + private static double HALF_PI = Math.PI * 0.5; + private static final int LEGS = 8; + private final ModelRenderer body; + private final ModelRenderer body_top; + private final ModelRenderer[] legs_1; + private final ModelRenderer[] legs_2; + private final ModelRenderer[] legs_3; + private final ModelRenderer[] wings; + private final ModelRenderer[] leg_details; + + public ModelEntityHydrogenJellyfish() { + textureHeight = 128; + textureWidth = 128; + + body = new ModelRenderer(this, 0, 0); + body.addBox(-14F, 0F, -14F, 28, 18, 28); + body.setRotationPoint(0F, -48, 0F); + + body_top = new ModelRenderer(this, 0, 46); + body_top.addBox(-10F, 0F, -10F, 20, 6, 20); + body_top.setRotationPoint(0F, -6F, 0F); + body.addChild(body_top); + + legs_1 = new ModelRenderer[LEGS]; + legs_2 = new ModelRenderer[LEGS]; + legs_3 = new ModelRenderer[LEGS]; + leg_details = new ModelRenderer[LEGS * 3]; + wings = new ModelRenderer[LEGS]; + for (int i = 0; i < LEGS; i++) { + int li = i * 3; + float angle = (float) (i * Math.PI * 2 / LEGS); + float x = (float) Math.sin(angle) * 10; + float z = (float) Math.cos(angle) * 10; + + legs_1[i] = new ModelRenderer(this, 60, 46); + legs_1[i].addBox(-3F, 0F, -3F, 6, 14, 6); + legs_1[i].setRotationPoint(x, 18, z); + legs_1[i].rotateAngleY = angle; + body.addChild(legs_1[i]); + + leg_details[li] = new ModelRenderer(this, 97, 46); + leg_details[li].addBox(-8F, 0F, 0F, 16, 14, 0); + leg_details[li].setTextureOffset(97, 30); + leg_details[li].addBox(0F, 0F, -8F, 0, 14, 16); + leg_details[li].rotateAngleY = (float) Math.toRadians(45); + legs_1[i].addChild(leg_details[li]); + + legs_2[i] = new ModelRenderer(this, 0, 72); + legs_2[i].addBox(-2F, -24F, -2F, 4, 28, 4); + legs_2[i].setRotationPoint(0F, 14F, 0F); + legs_1[i].addChild(legs_2[i]); + + li++; + leg_details[li] = new ModelRenderer(this, 98, 60); + leg_details[li].addBox(-7F, -24F, 0F, 14, 28, 0); + leg_details[li].setTextureOffset(98, 48); + leg_details[li].addBox(0F, -24F, -7F, 0, 28, 14); + leg_details[li].rotateAngleY = (float) Math.toRadians(45); + legs_2[i].addChild(leg_details[li]); + + legs_3[i] = new ModelRenderer(this, 16, 72); + legs_3[i].addBox(-1F, -24F, -1F, 2, 28, 2); + legs_3[i].setRotationPoint(0F, -28F, 0F); + legs_2[i].addChild(legs_3[i]); + + li++; + leg_details[li] = new ModelRenderer(this, 99, 88); + leg_details[li].addBox(-6F, -28F, 0F, 12, 32, 0); + leg_details[li].setTextureOffset(99, 76); + leg_details[li].addBox(0F, -28F, -6F, 0, 32, 12); + leg_details[li].rotateAngleY = (float) Math.toRadians(45); + legs_3[i].addChild(leg_details[li]); + + x = (float) Math.sin(angle); + z = (float) Math.cos(angle); + x = Math.signum(x) * (float) Math.pow(Math.abs(x), 0.25F); + z = Math.signum(z) * (float) Math.pow(Math.abs(z), 0.25F); + x *= 12; + z *= 12; + + wings[i] = new ModelRenderer(this, 60, 4); + wings[i].setRotationPoint(x, 12 - (i & 1) * 6, z); + wings[i].addBox(-12F, 0F, 0F, 24F, 0F, 24F); + wings[i].rotateAngleY = angle; + body.addChild(wings[i]); + } + } + + @Override + protected Iterable getHeadParts() { + return ImmutableList.of(); + } + + @Override + protected Iterable getBodyParts() { + return ImmutableList.of(this.body); + } + + @Override + public void setRotationAngles(EntityHydrogenJellyfish entity, float limbAngle, float limbDistance, float animationProgress, float headYaw, float headPitch) { + double time = animationProgress * 0.03; + + body.setRotationPoint(0, (float) Math.sin(time) * 8 - 42, 0); + + double sin1 = Math.sin(time); + double sin2 = Math.sin(time + HALF_PI); + for (int i = 0; i < LEGS; i++) { + double sinIn = (i & 1) == 0 ? sin1 : sin2; + double rot = 10 + ((i + 1) & 1) * 10; + sinIn *= 10; + legs_1[i].rotateAngleX = (float) Math.toRadians(rot + sinIn + 10); + legs_2[i].rotateAngleX = (float) Math.toRadians(180 - rot + sinIn + 5); + legs_3[i].rotateAngleX = (float) Math.toRadians(sinIn); + } + + time = System.currentTimeMillis() * 0.0006; + sin1 = Math.sin(time); + sin2 = Math.sin(time + Math.PI * 0.5); + for (int i = 0; i < LEGS; i++) { + double sinIn = (i & 1) == 0 ? sin1 : sin2; + wings[i].rotateAngleX = (float) Math.toRadians(sinIn * 20 - 20); + } + } +} + diff --git a/src/main/java/redd90/betternether/entity/model/ModelJungleSkeleton.java b/src/main/java/redd90/betternether/entity/model/ModelJungleSkeleton.java new file mode 100644 index 0000000..595c64d --- /dev/null +++ b/src/main/java/redd90/betternether/entity/model/ModelJungleSkeleton.java @@ -0,0 +1,30 @@ +package redd90.betternether.entity.model; + +import java.util.Random; + +import net.minecraft.client.renderer.entity.model.SkeletonModel; +import net.minecraft.client.renderer.model.ModelRenderer; +import redd90.betternether.MHelper; +import redd90.betternether.entity.EntityJungleSkeleton; + +public class ModelJungleSkeleton extends SkeletonModel { + private static final float ANGLE45 = (float) Math.PI * 0.25F; + private static final float ANGLE90 = (float) Math.PI * 0.5F; + private static final Random RANDOM = new Random(); + private static final float BOUND_MIN = ANGLE90 * 2F / 3F; + private static final float BOUND_MAX = ANGLE90 * 4F / 5F; + + public ModelJungleSkeleton() { + super(0.0F, false); + + for (int i = 0; i < 4; i++) { + float angle = ANGLE45 + (i / 4F) * MHelper.PI2; + ModelRenderer leaf = new ModelRenderer(this, 24, 0); + leaf.setRotationPoint((float) -Math.sin(angle), -8, (float) -Math.cos(angle)); + leaf.addBox(-3.0F, -8.0F, 0.0F, 6.0F, 8.0F, 0.0F); + leaf.rotateAngleX = MHelper.randRange(BOUND_MIN, BOUND_MAX, RANDOM); + leaf.rotateAngleY = angle; + this.bipedHead.addChild(leaf); + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/entity/model/ModelNaga.java b/src/main/java/redd90/betternether/entity/model/ModelNaga.java new file mode 100644 index 0000000..2410be8 --- /dev/null +++ b/src/main/java/redd90/betternether/entity/model/ModelNaga.java @@ -0,0 +1,164 @@ +package redd90.betternether.entity.model; + +import com.google.common.collect.ImmutableList; + +import net.minecraft.client.renderer.entity.model.AgeableModel; +import net.minecraft.client.renderer.model.ModelRenderer; +import redd90.betternether.entity.EntityNaga; + +public class ModelNaga extends AgeableModel { + public ModelRenderer head; + public ModelRenderer body; + public ModelRenderer[] tail; + public ModelRenderer[] spikes; + private float rotateAngleX; + // private double animation; + // private long preTime; + private float maxAngle = 0.1F; + + public ModelNaga() { + textureHeight = 64; + textureWidth = 64; + + head = new ModelRenderer(this, 0, 0); + head.addBox(-5.0F, -10.0F, -5.0F - 2F, 10.0F, 10.0F, 10.0F); + head.setRotationPoint(0.0F, -9.0F, 0.0F); + + body = new ModelRenderer(this, 40, 0); + body.addBox(-2.0F, 0.0F, -1.0F, 4.0F, 20.0F, 2.0F); + body.setTextureOffset(0, 20); + body.addBox(-5.0F, 3.0F, -6.0F, 10.0F, 16.0F, 6.0F); + body.setRotationPoint(0.0F, -10F, 0.0F); + + spikes = new ModelRenderer[8]; + + spikes[0] = new ModelRenderer(this, 33, 25); + spikes[0].addBox(0, 0, 0, 10, 18.0F, 0); + spikes[0].setRotationPoint(0.0F, 0.0F, 0.0F); + spikes[0].rotateAngleY = (float) Math.toRadians(-40); + body.addChild(spikes[0]); + + spikes[1] = new ModelRenderer(this, 33, 25); + spikes[1].addBox(0, 0, 0, 10, 18.0F, 0); + spikes[1].setRotationPoint(0.0F, 0, 0.0F); + spikes[1].rotateAngleY = (float) Math.toRadians(-140); + body.addChild(spikes[1]); + + tail = new ModelRenderer[4]; + + int last = tail.length - 1; + for (int i = 0; i < tail.length; i++) { + int height = (tail.length - i) * 4 / tail.length; + if (height < 2) + height = 2; + int width = Math.round((float) height / 2); + if (width < 1) + width = 1; + + tail[i] = new ModelRenderer(this, 40, 0); + tail[i].addBox(-height * 0.5F, 0.0F, -width * 0.5F, height, 20.0F, width); + tail[i].setRotationPoint(0.0F, 19.0F, 0.0F); + + if (i < last) { + int px = 32 + (12 - height * 3); + + int index = (i << 1) + 2; + spikes[index] = new ModelRenderer(this, px, 22); + spikes[index].addBox(0, 0, 0, height * 3, 20.0F, 0); + spikes[index].setRotationPoint(0.0F, 0, 0.0F); + spikes[index].rotateAngleY = (float) Math.toRadians(-60); + tail[i].addChild(spikes[index]); + + index++; + spikes[index] = new ModelRenderer(this, px, 22); + spikes[index].addBox(0, 0, 0, height * 3, 20.0F, 0); + spikes[index].setRotationPoint(0.0F, 0, 0.0F); + spikes[index].rotateAngleY = (float) Math.toRadians(-120); + tail[i].addChild(spikes[index]); + } + + if (i == 0) { + body.addChild(tail[i]); + } + else { + tail[i - 1].addChild(tail[i]); + } + } + + tail[0].rotateAngleX = (float) Math.toRadians(45); + tail[1].rotateAngleX = (float) Math.toRadians(45); + } + + @Override + protected Iterable getHeadParts() { + return ImmutableList.of(this.head); + } + + @Override + protected Iterable getBodyParts() { + return ImmutableList.of(body); + } + + @Override + public void setLivingAnimations(EntityNaga livingEntity, float f, float g, float h) { + this.rotateAngleX = livingEntity.getSwimAnimation(h); + super.setLivingAnimations(livingEntity, f, g, h); + } + + @Override + public void setRotationAngles(EntityNaga entity, float limbAngle, float limbDistance, float animationProgress, float headYaw, float headPitch) { + boolean rollTooBig = entity.getTicksElytraFlying() > 4; + boolean isSwimming = entity.isActualySwimming(); + this.head.rotateAngleY = headYaw * 0.017453292F; + if (rollTooBig) { + this.head.rotateAngleX = -0.7853982F; + } + else if (this.rotateAngleX > 0.0F) { + if (isSwimming) { + this.head.rotateAngleX = this.lerpAngle(this.head.rotateAngleX, -0.7853982F, this.rotateAngleX); + } + else { + this.head.rotateAngleX = this.lerpAngle(this.head.rotateAngleX, headPitch * 0.017453292F, this.rotateAngleX); + } + } + else { + this.head.rotateAngleX = headPitch * 0.017453292F; + } + + // long time = System.currentTimeMillis(); + double speed = (entity.isOnGround() && (entity.getMotion().x != 0 || entity.getMotion().z != 0) && !entity.isPassenger()) ? 6 : 0.5; + maxAngle = this.lerpAngle(maxAngle, speed > 1 ? 0.1F : 0.5F, 0.03F); + // animation += (time - preTime) * speed / 1000.0; + double animation = animationProgress * speed / 20; + float angle = (float) Math.sin(animation) * maxAngle * 0.3F; + float start_angle = angle; + tail[0].rotateAngleY = angle; + for (int i = 1; i < tail.length; i++) { + angle = (float) Math.atan(Math.sin(i * 1.7 + animation)) * maxAngle; + tail[i].rotateAngleZ = angle - start_angle; + start_angle += angle; + } + + for (int i = 0; i < spikes.length; i++) { + float rotateAngleY = ((i & 1) == 0) ? (float) Math.toRadians(-50 + Math.sin(animation * 0.4 + i / 2) * 10) : (float) Math.toRadians(-110 - Math.sin(animation * 0.4 + i / 2) * 10); + spikes[i].rotateAngleY = rotateAngleY; + } + + // preTime = time; + } + + protected float lerpAngle(float from, float to, float position) { + float angle = (to - from) % 6.2831855F; + + if (angle < -3.1415927F) { + angle += 6.2831855F; + } + + if (angle >= 3.1415927F) { + angle -= 6.2831855F; + } + + return from + position * angle; + } +} + diff --git a/src/main/java/redd90/betternether/entity/model/ModelSkull.java b/src/main/java/redd90/betternether/entity/model/ModelSkull.java new file mode 100644 index 0000000..4e6bf2b --- /dev/null +++ b/src/main/java/redd90/betternether/entity/model/ModelSkull.java @@ -0,0 +1,69 @@ +package redd90.betternether.entity.model; + +import com.google.common.collect.ImmutableList; + +import net.minecraft.client.renderer.entity.model.AgeableModel; +import net.minecraft.client.renderer.model.ModelRenderer; +import redd90.betternether.entity.EntitySkull; + + +public class ModelSkull extends AgeableModel { + private final ModelRenderer head; + private float rotateAngleX; + + public ModelSkull() { + textureHeight = 16; + textureWidth = 32; + + head = new ModelRenderer(this, 0, 0); + head.setRotationPoint(0, 20, 0); + head.addBox(-4, -4, -4, 8, 8, 8); + } + + @Override + protected Iterable getHeadParts() { + return ImmutableList.of(head); + } + + @Override + protected Iterable getBodyParts() { + return ImmutableList.of(); + } + + @Override + public void setLivingAnimations(EntitySkull livingEntity, float f, float g, float h) { + this.rotateAngleX = livingEntity.getSwimAnimation(h); + super.setLivingAnimations(livingEntity, f, g, h); + } + + @Override + public void setRotationAngles(EntitySkull entity, float limbAngle, float limbDistance, float animationProgress, float headYaw, float headPitch) { + // head.rotateAngleX = (float) Math.toRadians(headPitch); + + boolean rollTooBig = entity.getTicksElytraFlying() > 4; + this.head.rotateAngleZ = headYaw * 0.017453292F; + if (rollTooBig) { + this.head.rotateAngleX = -0.7853982F; + } + else if (this.rotateAngleX > 0.0F) { + this.head.rotateAngleX = this.lerpAngle(this.head.rotateAngleX, headPitch * 0.017453292F, this.rotateAngleX); + } + else { + this.head.rotateAngleX = headPitch * 0.017453292F; + } + } + + protected float lerpAngle(float from, float to, float position) { + float angle = (to - from) % 6.2831855F; + + if (angle < -3.1415927F) { + angle += 6.2831855F; + } + + if (angle >= 3.1415927F) { + angle -= 6.2831855F; + } + + return from + position * angle; + } +} diff --git a/src/main/java/redd90/betternether/entity/render/RenderChair.java b/src/main/java/redd90/betternether/entity/render/RenderChair.java new file mode 100644 index 0000000..9d46d00 --- /dev/null +++ b/src/main/java/redd90/betternether/entity/render/RenderChair.java @@ -0,0 +1,21 @@ +package redd90.betternether.entity.render; + +import net.minecraft.client.renderer.entity.EntityRendererManager; +import net.minecraft.client.renderer.entity.MobRenderer; +import net.minecraft.client.renderer.entity.model.AgeableModel; +import net.minecraft.util.ResourceLocation; +import redd90.betternether.entity.EntityChair; +import redd90.betternether.entity.model.ModelEmpty; + +public class RenderChair extends MobRenderer> { + private static final ResourceLocation TEXTURE = new ResourceLocation("minecraft:textures/block/stone.png"); + + public RenderChair(EntityRendererManager renderManager) { + super(renderManager, new ModelEmpty(), 0); + } + + @Override + public ResourceLocation getEntityTexture(EntityChair entity) { + return TEXTURE; + } +} diff --git a/src/main/java/redd90/betternether/entity/render/RenderFirefly.java b/src/main/java/redd90/betternether/entity/render/RenderFirefly.java new file mode 100644 index 0000000..adc3d8a --- /dev/null +++ b/src/main/java/redd90/betternether/entity/render/RenderFirefly.java @@ -0,0 +1,167 @@ +package redd90.betternether.entity.render; + +import java.util.Iterator; + +import com.mojang.blaze3d.matrix.MatrixStack; +import com.mojang.blaze3d.systems.RenderSystem; +import com.mojang.blaze3d.vertex.IVertexBuilder; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.IRenderTypeBuffer; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.entity.EntityRendererManager; +import net.minecraft.client.renderer.entity.MobRenderer; +import net.minecraft.client.renderer.entity.layers.LayerRenderer; +import net.minecraft.client.renderer.entity.model.AgeableModel; +import net.minecraft.client.renderer.texture.OverlayTexture; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.Pose; +import net.minecraft.util.Direction; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.MathHelper; +import net.minecraft.util.math.vector.Matrix3f; +import net.minecraft.util.math.vector.Matrix4f; +import net.minecraft.util.math.vector.Vector3f; +import redd90.betternether.BetterNether; +import redd90.betternether.entity.EntityFirefly; +import redd90.betternether.entity.model.ModelEntityFirefly; + +public class RenderFirefly extends MobRenderer> { + private static final ResourceLocation TEXTURE = new ResourceLocation(BetterNether.MOD_ID, "textures/entity/firefly.png"); + private static final RenderType LAYER = RenderLayers.getFirefly(TEXTURE); // getEntityTranslucent + // getEntityNoOutline + // getBeaconBeam + // getEntityShadow + private static final int LIT = 15728880; + + public RenderFirefly(EntityRendererManager renderManager) { + super(renderManager, new ModelEntityFirefly(), 0); + } + + @Override + public ResourceLocation getEntityTexture(EntityFirefly entity) { + return TEXTURE; + } + + @Override + public void render(EntityFirefly entity, float f, float g, MatrixStack matrixStack, IRenderTypeBuffer vertexConsumerProvider, int i) { + RenderSystem.enableDepthTest(); + RenderSystem.enableBlend(); + + float red = entity.getRed(); + float green = entity.getGreen(); + float blue = entity.getBlue(); + + matrixStack.push(); + matrixStack.translate(0, 0.125, 0); + matrixStack.rotate(this.renderManager.getCameraOrientation()); + matrixStack.rotate(Vector3f.YP.rotationDegrees(180.0F)); + MatrixStack.Entry entry = matrixStack.getLast(); + Matrix4f matrix4f = entry.getMatrix(); + Matrix3f matrix3f = entry.getNormal(); + IVertexBuilder vertexConsumer = vertexConsumerProvider.getBuffer(LAYER); + addVertex(matrix4f, matrix3f, vertexConsumer, -1, -1, 0F, 0.5F, red, green, blue); + addVertex(matrix4f, matrix3f, vertexConsumer, 1, -1, 1F, 0.5F, red, green, blue); + addVertex(matrix4f, matrix3f, vertexConsumer, 1, 1, 1F, 1F, red, green, blue); + addVertex(matrix4f, matrix3f, vertexConsumer, -1, 1, 0F, 1F, red, green, blue); + matrixStack.pop(); + + matrixStack.push(); + this.entityModel.swingProgress = this.getSwingProgress(entity, g); + this.entityModel.isSitting = entity.isPassenger(); + this.entityModel.isChild = entity.isChild(); + float h = MathHelper.interpolateAngle(g, entity.prevRenderYawOffset, entity.renderYawOffset); + float j = MathHelper.interpolateAngle(g, entity.prevRotationYawHead, entity.rotationYawHead); + float k = j - h; + float o; + if (entity.isPassenger() && entity.getRidingEntity() instanceof LivingEntity) { + LivingEntity mobEntity2 = (LivingEntity) entity.getRidingEntity(); + h = MathHelper.interpolateAngle(g, mobEntity2.prevRenderYawOffset, mobEntity2.renderYawOffset); + k = j - h; + o = MathHelper.wrapDegrees(k); + if (o < -85.0F) { + o = -85.0F; + } + + if (o >= 85.0F) { + o = 85.0F; + } + + h = j - o; + if (o * o > 2500.0F) { + h += o * 0.2F; + } + + k = j - h; + } + + float m = MathHelper.lerp(g, entity.prevRotationPitch, entity.rotationPitch); + float p; + if (entity.getPose() == Pose.SLEEPING) { + Direction direction = entity.getBedDirection(); + if (direction != null) { + p = entity.getEyeHeight(Pose.STANDING) - 0.1F; + matrixStack.translate((double) ((float) (-direction.getXOffset()) * p), 0.0D, + (double) ((float) (-direction.getZOffset()) * p)); + } + } + + o = this.handleRotationFloat(entity, g); + this.applyRotations(entity, matrixStack, o, h, g); + matrixStack.scale(-1.0F, -1.0F, 1.0F); + this.preRenderCallback(entity, matrixStack, g); + matrixStack.translate(0.0D, -1.5010000467300415D, 0.0D); + p = 0.0F; + float q = 0.0F; + if (!entity.isPassenger() && entity.isAlive()) { + p = MathHelper.lerp(g, entity.prevLimbSwingAmount, entity.limbSwingAmount); + q = entity.limbSwing - entity.limbSwingAmount * (1.0F - g); + if (entity.isChild()) { + q *= 3.0F; + } + + if (p > 1.0F) { + p = 1.0F; + } + } + + this.entityModel.setLivingAnimations(entity, q, p, g); + this.entityModel.setRotationAngles(entity, q, p, o, k, m); + boolean visible = this.isVisible(entity); + boolean ghost = !visible && !entity.isInvisibleToPlayer(Minecraft.getInstance().player); + Minecraft client = Minecraft.getInstance(); + boolean outline = client.isEntityGlowing(entity); + RenderType layer = this.func_230496_a_(entity, visible, ghost, outline); + if (layer != null) { + int r = getPackedOverlay(entity, 0); + this.entityModel.render(matrixStack, vertexConsumer, i, r, red, green, blue, ghost ? 0.15F : 1.0F); + + } + + if (!entity.isSpectator()) { + Iterator var21 = this.layerRenderers.iterator(); + while (var21.hasNext()) { + @SuppressWarnings("unchecked") + LayerRenderer> feature = (LayerRenderer>) var21.next(); + feature.render(matrixStack, vertexConsumerProvider, i, entity, q, p, g, o, k, m); + } + } + + matrixStack.pop(); + + if (this.canRenderName(entity)) { + this.renderName(entity, entity.getDisplayName(), matrixStack, vertexConsumerProvider, i); + } + } + + public void addVertex(Matrix4f matrix4f, Matrix3f matrix3f, IVertexBuilder vertexConsumer, float posX, float posY, float u, float v, float red, float green, float blue) { + vertexConsumer.pos(matrix4f, posX, posY, 0).color(red, green, blue, 1F).tex(u, v).overlay(OverlayTexture.NO_OVERLAY).lightmap(LIT).normal(matrix3f, 0, 1, 0).endVertex(); + } + + @Override + protected int getBlockLight(EntityFirefly entity, BlockPos blockPos) { + return 15; + } +} + diff --git a/src/main/java/redd90/betternether/entity/render/RenderFlyingPig.java b/src/main/java/redd90/betternether/entity/render/RenderFlyingPig.java new file mode 100644 index 0000000..acdb437 --- /dev/null +++ b/src/main/java/redd90/betternether/entity/render/RenderFlyingPig.java @@ -0,0 +1,23 @@ +package redd90.betternether.entity.render; + +import net.minecraft.client.renderer.entity.EntityRendererManager; +import net.minecraft.client.renderer.entity.MobRenderer; +import net.minecraft.client.renderer.entity.model.AgeableModel; +import net.minecraft.util.ResourceLocation; +import redd90.betternether.BetterNether; +import redd90.betternether.entity.EntityFlyingPig; +import redd90.betternether.entity.model.ModelEntityFlyingPig; + +public class RenderFlyingPig extends MobRenderer> { + private static final ResourceLocation TEXTURE = new ResourceLocation(BetterNether.MOD_ID, "textures/entity/flying_pig.png"); + private static final ResourceLocation TEXTURE_WARTED = new ResourceLocation(BetterNether.MOD_ID, "textures/entity/flying_pig_warted.png"); + + public RenderFlyingPig(EntityRendererManager renderManager) { + super(renderManager, new ModelEntityFlyingPig(), 0.6F); + } + + @Override + public ResourceLocation getEntityTexture(EntityFlyingPig entity) { + return entity.isWarted() ? TEXTURE_WARTED : TEXTURE; + } +} diff --git a/src/main/java/redd90/betternether/entity/render/RenderHydrogenJellyfish.java b/src/main/java/redd90/betternether/entity/render/RenderHydrogenJellyfish.java new file mode 100644 index 0000000..c13bb4d --- /dev/null +++ b/src/main/java/redd90/betternether/entity/render/RenderHydrogenJellyfish.java @@ -0,0 +1,36 @@ +package redd90.betternether.entity.render; + +import com.mojang.blaze3d.matrix.MatrixStack; + +import net.minecraft.client.renderer.entity.EntityRendererManager; +import net.minecraft.client.renderer.entity.MobRenderer; +import net.minecraft.client.renderer.entity.model.AgeableModel; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.math.BlockPos; +import redd90.betternether.BetterNether; +import redd90.betternether.entity.EntityHydrogenJellyfish; +import redd90.betternether.entity.model.ModelEntityHydrogenJellyfish; + +public class RenderHydrogenJellyfish extends MobRenderer> { + private static final ResourceLocation TEXTURE = new ResourceLocation(BetterNether.MOD_ID, "textures/entity/jellyfish.png"); + + public RenderHydrogenJellyfish(EntityRendererManager renderManager) { + super(renderManager, new ModelEntityHydrogenJellyfish(), 1); + } + + @Override + public ResourceLocation getEntityTexture(EntityHydrogenJellyfish entity) { + return TEXTURE; + } + + @Override + protected int getBlockLight(EntityHydrogenJellyfish entity, BlockPos pos) { + return 15; + } + + @Override + protected void preRenderCallback(EntityHydrogenJellyfish entity, MatrixStack matrixStack, float f) { + float scale = entity.getScale(); + matrixStack.scale(scale, scale, scale); + } +} diff --git a/src/main/java/redd90/betternether/entity/render/RenderJungleSkeleton.java b/src/main/java/redd90/betternether/entity/render/RenderJungleSkeleton.java new file mode 100644 index 0000000..ef34f16 --- /dev/null +++ b/src/main/java/redd90/betternether/entity/render/RenderJungleSkeleton.java @@ -0,0 +1,31 @@ +package redd90.betternether.entity.render; + +import net.minecraft.client.renderer.entity.EntityRendererManager; +import net.minecraft.client.renderer.entity.MobRenderer; +import net.minecraft.client.renderer.entity.layers.BipedArmorLayer; +import net.minecraft.client.renderer.entity.layers.ElytraLayer; +import net.minecraft.client.renderer.entity.layers.HeadLayer; +import net.minecraft.client.renderer.entity.layers.HeldItemLayer; +import net.minecraft.client.renderer.entity.model.SkeletonModel; +import net.minecraft.util.ResourceLocation; +import redd90.betternether.BetterNether; +import redd90.betternether.entity.EntityJungleSkeleton; +import redd90.betternether.entity.model.ModelJungleSkeleton; + +public class RenderJungleSkeleton extends MobRenderer> { + private static final ResourceLocation TEXTURE = new ResourceLocation(BetterNether.MOD_ID, "textures/entity/jungle_skeleton.png"); + + public RenderJungleSkeleton(EntityRendererManager renderManager) { + super(renderManager, new ModelJungleSkeleton(), 0.4F); + this.addLayer(new BipedArmorLayer, SkeletonModel>(this, new SkeletonModel(0.5F, true), + new SkeletonModel(1.0F, true))); + this.addLayer(new HeldItemLayer>(this)); + this.addLayer(new ElytraLayer>(this)); + this.addLayer(new HeadLayer>(this)); + } + + @Override + public ResourceLocation getEntityTexture(EntityJungleSkeleton entity) { + return TEXTURE; + } +} diff --git a/src/main/java/redd90/betternether/entity/render/RenderLayers.java b/src/main/java/redd90/betternether/entity/render/RenderLayers.java new file mode 100644 index 0000000..ecdf5fb --- /dev/null +++ b/src/main/java/redd90/betternether/entity/render/RenderLayers.java @@ -0,0 +1,28 @@ +package redd90.betternether.entity.render; + +import net.minecraft.client.renderer.RenderState; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.vertex.DefaultVertexFormats; +import net.minecraft.util.ResourceLocation; + +public class RenderLayers { + public static RenderState.TransparencyState translucentTransparency; + public static RenderState.WriteMaskState colorMask; + public static RenderState.FogState fog; + public static RenderState.DepthTestState lEqualDepthTest; + public static RenderState.LayerState polygonZLayering; + public static RenderState.TargetState translucentTarget; + + public static RenderType getFirefly(ResourceLocation texture) { + RenderType.State multiPhaseParameters = RenderType.State.getBuilder() + .texture(new RenderState.TextureState(texture, false, false)) + .transparency(translucentTransparency) + .writeMask(colorMask) + .fog(fog) + .depthTest(lEqualDepthTest) + .layer(polygonZLayering) + .target(translucentTarget) + .build(true); + return RenderType.makeType("firefly", DefaultVertexFormats.POSITION_COLOR_TEX, 7, 256, false, true, multiPhaseParameters); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/entity/render/RenderNaga.java b/src/main/java/redd90/betternether/entity/render/RenderNaga.java new file mode 100644 index 0000000..5f9394c --- /dev/null +++ b/src/main/java/redd90/betternether/entity/render/RenderNaga.java @@ -0,0 +1,22 @@ +package redd90.betternether.entity.render; + +import net.minecraft.client.renderer.entity.EntityRendererManager; +import net.minecraft.client.renderer.entity.MobRenderer; +import net.minecraft.client.renderer.entity.model.AgeableModel; +import net.minecraft.util.ResourceLocation; +import redd90.betternether.BetterNether; +import redd90.betternether.entity.EntityNaga; +import redd90.betternether.entity.model.ModelNaga; + +public class RenderNaga extends MobRenderer> { + private static final ResourceLocation TEXTURE = new ResourceLocation(BetterNether.MOD_ID, "textures/entity/naga.png"); + + public RenderNaga(EntityRendererManager renderManager) { + super(renderManager, new ModelNaga(), 0.7F); + } + + @Override + public ResourceLocation getEntityTexture(EntityNaga entity) { + return TEXTURE; + } +} diff --git a/src/main/java/redd90/betternether/entity/render/RenderNagaProjectile.java b/src/main/java/redd90/betternether/entity/render/RenderNagaProjectile.java new file mode 100644 index 0000000..f141cdb --- /dev/null +++ b/src/main/java/redd90/betternether/entity/render/RenderNagaProjectile.java @@ -0,0 +1,55 @@ +package redd90.betternether.entity.render; + +import com.mojang.blaze3d.matrix.MatrixStack; +import com.mojang.blaze3d.vertex.IVertexBuilder; + +import net.minecraft.client.renderer.IRenderTypeBuffer; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.entity.EntityRenderer; +import net.minecraft.client.renderer.entity.EntityRendererManager; +import net.minecraft.client.renderer.texture.OverlayTexture; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.math.vector.Matrix3f; +import net.minecraft.util.math.vector.Matrix4f; +import net.minecraft.util.math.vector.Vector3f; +import redd90.betternether.BetterNether; +import redd90.betternether.entity.EntityNagaProjectile; + +public class RenderNagaProjectile extends EntityRenderer { + private static final ResourceLocation TEXTURE = new ResourceLocation(BetterNether.MOD_ID, "textures/entity/naga_projectile.png"); + private static final RenderType LAYER = RenderType.getEntityCutoutNoCull(TEXTURE); + + public RenderNagaProjectile(EntityRendererManager renderManager) { + super(renderManager); + } + + @Override + public ResourceLocation getEntityTexture(EntityNagaProjectile entity) { + return TEXTURE; + } + + @Override + public void render(EntityNagaProjectile dragonFireballEntity, float f, float g, MatrixStack matrixStack, IRenderTypeBuffer vertexConsumerProvider, int i) { + int frame = (int) (System.currentTimeMillis() / 150) & 3; + float start = frame * 0.25F; + float end = start + 0.25F; + matrixStack.push(); + matrixStack.scale(2.0F, 2.0F, 2.0F); + matrixStack.rotate(this.renderManager.getCameraOrientation()); + matrixStack.rotate(Vector3f.YP.rotationDegrees(180.0F)); + MatrixStack.Entry entry = matrixStack.getLast(); + Matrix4f matrix4f = entry.getMatrix(); + Matrix3f matrix3f = entry.getNormal(); + IVertexBuilder vertexConsumer = vertexConsumerProvider.getBuffer(LAYER); + vertex(vertexConsumer, matrix4f, matrix3f, i, 0.0F, 0, 0, end); + vertex(vertexConsumer, matrix4f, matrix3f, i, 1.0F, 0, 1, end); + vertex(vertexConsumer, matrix4f, matrix3f, i, 1.0F, 1, 1, start); + vertex(vertexConsumer, matrix4f, matrix3f, i, 0.0F, 1, 0, start); + matrixStack.pop(); + super.render(dragonFireballEntity, f, g, matrixStack, vertexConsumerProvider, i); + } + + private static void vertex(IVertexBuilder vertexConsumer, Matrix4f matrix4f, Matrix3f matrix3f, int i, float f, int j, float u, float v) { + vertexConsumer.pos(matrix4f, f - 0.5F, (float) j - 0.25F, 0.0F).color(255, 255, 255, 255).tex(u, v).overlay(OverlayTexture.NO_OVERLAY).lightmap(i).normal(matrix3f, 0.0F, 1.0F, 0.0F).endVertex(); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/entity/render/RenderSkull.java b/src/main/java/redd90/betternether/entity/render/RenderSkull.java new file mode 100644 index 0000000..910ccbe --- /dev/null +++ b/src/main/java/redd90/betternether/entity/render/RenderSkull.java @@ -0,0 +1,45 @@ +package redd90.betternether.entity.render; + +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.entity.EntityRendererManager; +import net.minecraft.client.renderer.entity.IEntityRenderer; +import net.minecraft.client.renderer.entity.MobRenderer; +import net.minecraft.client.renderer.entity.layers.AbstractEyesLayer; +import net.minecraft.client.renderer.entity.model.AgeableModel; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.MathHelper; +import redd90.betternether.BetterNether; +import redd90.betternether.entity.EntitySkull; +import redd90.betternether.entity.model.ModelSkull; + +public class RenderSkull extends MobRenderer> { + private static final ResourceLocation TEXTURE = new ResourceLocation(BetterNether.MOD_ID, "textures/entity/skull.png"); + + public RenderSkull(EntityRendererManager renderManager) { + super(renderManager, new ModelSkull(), 0.7F); + this.addLayer(new GlowFeatureRenderer(this)); + } + + @Override + public ResourceLocation getEntityTexture(EntitySkull entity) { + return TEXTURE; + } + + static class GlowFeatureRenderer extends AbstractEyesLayer> { + private static final RenderType SKIN = RenderType.getEntityTranslucent(new ResourceLocation(BetterNether.MOD_ID, "textures/entity/skull_glow.png")); + + public GlowFeatureRenderer(IEntityRenderer> featureRendererContext) { + super(featureRendererContext); + } + + public RenderType getRenderType() { + return SKIN; + } + } + + @Override + protected int getBlockLight(EntitySkull entity, BlockPos pos) { + return MathHelper.clamp(super.getBlockLight(entity, pos), 7, 15); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/items/BNArmor.java b/src/main/java/redd90/betternether/items/BNArmor.java new file mode 100644 index 0000000..b825933 --- /dev/null +++ b/src/main/java/redd90/betternether/items/BNArmor.java @@ -0,0 +1,12 @@ +package redd90.betternether.items; + +import net.minecraft.inventory.EquipmentSlotType; +import net.minecraft.item.ArmorItem; +import net.minecraft.item.IArmorMaterial; +import redd90.betternether.registry.ItemsRegistry; + +public class BNArmor extends ArmorItem { + public BNArmor(IArmorMaterial material, EquipmentSlotType slot) { + super(material, slot, ItemsRegistry.defaultSettings()); + } +} diff --git a/src/main/java/redd90/betternether/items/BNItemAxe.java b/src/main/java/redd90/betternether/items/BNItemAxe.java new file mode 100644 index 0000000..d7664cb --- /dev/null +++ b/src/main/java/redd90/betternether/items/BNItemAxe.java @@ -0,0 +1,21 @@ +package redd90.betternether.items; + +import net.minecraft.block.BlockState; +import net.minecraft.item.AxeItem; +import net.minecraft.item.IItemTier; +import net.minecraft.item.ItemStack; +import redd90.betternether.registry.ItemsRegistry; + +public class BNItemAxe extends AxeItem { + protected float speed; + + public BNItemAxe(IItemTier material, int durability, float speed) { + super(material, 1, -2.8F, ItemsRegistry.defaultSettings().isImmuneToFire()); + this.speed = speed; + } + + @Override + public float getDestroySpeed(ItemStack stack, BlockState state) { + return super.getDestroySpeed(stack, state) * speed; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/items/BNItemHoe.java b/src/main/java/redd90/betternether/items/BNItemHoe.java new file mode 100644 index 0000000..2ba88eb --- /dev/null +++ b/src/main/java/redd90/betternether/items/BNItemHoe.java @@ -0,0 +1,21 @@ +package redd90.betternether.items; + +import net.minecraft.block.BlockState; +import net.minecraft.item.HoeItem; +import net.minecraft.item.IItemTier; +import net.minecraft.item.ItemStack; +import redd90.betternether.registry.ItemsRegistry; + +public class BNItemHoe extends HoeItem { + protected float speed; + + public BNItemHoe(IItemTier material, int durability, float speed) { + super(material, 1, -2.8F, ItemsRegistry.defaultSettings().isImmuneToFire()); + this.speed = speed; + } + + @Override + public float getDestroySpeed(ItemStack stack, BlockState state) { + return super.getDestroySpeed(stack, state) * speed; + } +} diff --git a/src/main/java/redd90/betternether/items/BNItemPickaxe.java b/src/main/java/redd90/betternether/items/BNItemPickaxe.java new file mode 100644 index 0000000..07c60d8 --- /dev/null +++ b/src/main/java/redd90/betternether/items/BNItemPickaxe.java @@ -0,0 +1,21 @@ +package redd90.betternether.items; + +import net.minecraft.block.BlockState; +import net.minecraft.item.IItemTier; +import net.minecraft.item.ItemStack; +import net.minecraft.item.PickaxeItem; +import redd90.betternether.registry.ItemsRegistry; + +public class BNItemPickaxe extends PickaxeItem { + protected float speed; + + public BNItemPickaxe(IItemTier material, int durability, float speed) { + super(material, 1, -2.8F, ItemsRegistry.defaultSettings().isImmuneToFire()); + this.speed = speed; + } + + @Override + public float getDestroySpeed(ItemStack stack, BlockState state) { + return super.getDestroySpeed(stack, state) * speed; + } +} diff --git a/src/main/java/redd90/betternether/items/BNItemShovel.java b/src/main/java/redd90/betternether/items/BNItemShovel.java new file mode 100644 index 0000000..dc7aa68 --- /dev/null +++ b/src/main/java/redd90/betternether/items/BNItemShovel.java @@ -0,0 +1,21 @@ +package redd90.betternether.items; + +import net.minecraft.block.BlockState; +import net.minecraft.item.IItemTier; +import net.minecraft.item.ItemStack; +import net.minecraft.item.ShovelItem; +import redd90.betternether.registry.ItemsRegistry; + +public class BNItemShovel extends ShovelItem { + protected float speed; + + public BNItemShovel(IItemTier material, int durability, float speed) { + super(material, 1, -2.8F, ItemsRegistry.defaultSettings().isImmuneToFire()); + this.speed = speed; + } + + @Override + public float getDestroySpeed(ItemStack stack, BlockState state) { + return super.getDestroySpeed(stack, state) * speed; + } +} diff --git a/src/main/java/redd90/betternether/items/BNSword.java b/src/main/java/redd90/betternether/items/BNSword.java new file mode 100644 index 0000000..fe5eb01 --- /dev/null +++ b/src/main/java/redd90/betternether/items/BNSword.java @@ -0,0 +1,11 @@ +package redd90.betternether.items; + +import net.minecraft.item.IItemTier; +import net.minecraft.item.SwordItem; +import redd90.betternether.registry.ItemsRegistry; + +public class BNSword extends SwordItem { + public BNSword(IItemTier material, int durability, int attackDamage, float attackSpeed) { + super(material, attackDamage, attackSpeed, ItemsRegistry.defaultSettings().isImmuneToFire()); + } +} diff --git a/src/main/java/redd90/betternether/items/ItemBlackApple.java b/src/main/java/redd90/betternether/items/ItemBlackApple.java new file mode 100644 index 0000000..e8970cb --- /dev/null +++ b/src/main/java/redd90/betternether/items/ItemBlackApple.java @@ -0,0 +1,28 @@ +package redd90.betternether.items; + +import net.minecraft.entity.LivingEntity; +import net.minecraft.item.Food; +import net.minecraft.item.Foods; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.potion.EffectInstance; +import net.minecraft.potion.Effects; +import net.minecraft.world.World; +import redd90.betternether.tab.CreativeTab; + +public class ItemBlackApple extends Item { + public static final Food BLACK_APPLE = new Food.Builder().hunger(6).saturation(0.5F).build(); + + public ItemBlackApple() { + super(new Item.Properties() + .group(CreativeTab.BN_TAB) + .food(BLACK_APPLE) + .food(Foods.APPLE)); + } + + @Override + public ItemStack onItemUseFinish(ItemStack stack, World world, LivingEntity user) { + user.addPotionEffect(new EffectInstance(Effects.REGENERATION, 60, 1)); + return super.onItemUseFinish(stack, world, user); + } +} diff --git a/src/main/java/redd90/betternether/items/ItemBowlFood.java b/src/main/java/redd90/betternether/items/ItemBowlFood.java new file mode 100644 index 0000000..bb678f7 --- /dev/null +++ b/src/main/java/redd90/betternether/items/ItemBowlFood.java @@ -0,0 +1,73 @@ +package redd90.betternether.items; + +import net.minecraft.block.BlockState; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Food; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.item.ItemUseContext; +import net.minecraft.util.ActionResultType; +import net.minecraft.util.SoundCategory; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.World; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockStalagnateBowl; +import redd90.betternether.blocks.shapes.FoodShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.ItemsRegistry; +import redd90.betternether.tab.CreativeTab; + +public class ItemBowlFood extends Item { + private FoodShape bowlFood; + + public ItemBowlFood(Food component, FoodShape food) { + super(new Item.Properties().group(CreativeTab.BN_TAB).food(component).maxStackSize(16)); + food.setItem(this); + this.bowlFood = food; + } + + @Override + public ActionResultType onItemUse(ItemUseContext context) { + World world = context.getWorld(); + BlockPos pos = context.getPos().offset(context.getFace()); + if (context.getPlayer().isSneaking() && world.isAirBlock(pos) && BlocksRegistry.STALAGNATE_BOWL.isValidPosition(world.getBlockState(pos), world, pos)) { + if (!world.isRemote()) { + BlockState state = BlocksRegistry.STALAGNATE_BOWL.getDefaultState().with(BlockStalagnateBowl.FOOD, bowlFood); + BlocksHelper.setWithoutUpdate((ServerWorld) world, pos, state); + } + if (!context.getPlayer().isCreative()) { + context.getPlayer().getHeldItemMainhand().shrink(1); + } + world.playSound( + pos.getX() + 0.5, + pos.getY() + 0.25, + pos.getZ() + 0.5, + SoundEvents.BLOCK_WOOD_PLACE, + SoundCategory.BLOCKS, + 0.8F, + 1.0F, + true); + return ActionResultType.CONSUME; + } + return super.onItemUse(context); + } + + @Override + public ItemStack onItemUseFinish(ItemStack stack, World world, LivingEntity user) { + if (stack.getCount() == 1) { + super.onItemUseFinish(stack, world, user); + return new ItemStack(ItemsRegistry.STALAGNATE_BOWL, stack.getCount()); + } + else { + if (user instanceof PlayerEntity) { + PlayerEntity player = (PlayerEntity) user; + if (!player.isCreative()) + player.addItemStackToInventory(new ItemStack(ItemsRegistry.STALAGNATE_BOWL)); + } + return super.onItemUseFinish(stack, world, user); + } + } +} diff --git a/src/main/java/redd90/betternether/items/materials/BNArmorMaterial.java b/src/main/java/redd90/betternether/items/materials/BNArmorMaterial.java new file mode 100644 index 0000000..b2dbfbd --- /dev/null +++ b/src/main/java/redd90/betternether/items/materials/BNArmorMaterial.java @@ -0,0 +1,68 @@ +package redd90.betternether.items.materials; + +import net.minecraft.inventory.EquipmentSlotType; +import net.minecraft.item.IArmorMaterial; +import net.minecraft.item.crafting.Ingredient; +import net.minecraft.util.IItemProvider; +import net.minecraft.util.SoundEvent; + +public class BNArmorMaterial implements IArmorMaterial { + private static final int[] DURABILITY = new int[] { 3, 6, 8, 3 }; + private final String name; + private final int multiplier; + private final int enchantLevel; + private final SoundEvent sound; + private final IItemProvider repair; + private final float toughness; + private final int[] protection; + + public BNArmorMaterial(String name, int durabilityMultiplier, int enchantLevel, SoundEvent equipSound, IItemProvider repairItem, float toughness, int[] protection) { + this.name = name; + this.multiplier = durabilityMultiplier; + this.enchantLevel = enchantLevel; + this.sound = equipSound; + this.repair = repairItem; + this.toughness = toughness; + this.protection = protection; + } + + @Override + public int getDurability(EquipmentSlotType slot) { + return DURABILITY[slot.getIndex()] * multiplier; + } + + @Override + public int getDamageReductionAmount(EquipmentSlotType slot) { + return protection[slot.getIndex()]; + } + + @Override + public int getEnchantability() { + return enchantLevel; + } + + @Override + public SoundEvent getSoundEvent() { + return sound; + } + + @Override + public Ingredient getRepairMaterial() { + return Ingredient.fromItems(repair); + } + + @Override + public String getName() { + return name; + } + + @Override + public float getToughness() { + return toughness; + } + + @Override + public float getKnockbackResistance() { + return 0; + } +} diff --git a/src/main/java/redd90/betternether/items/materials/BNItemMaterials.java b/src/main/java/redd90/betternether/items/materials/BNItemMaterials.java new file mode 100644 index 0000000..e30c00a --- /dev/null +++ b/src/main/java/redd90/betternether/items/materials/BNItemMaterials.java @@ -0,0 +1,17 @@ +package redd90.betternether.items.materials; + +import net.minecraft.item.IArmorMaterial; +import net.minecraft.item.IItemTier; +import net.minecraft.item.Items; +import net.minecraft.util.SoundEvents; +import redd90.betternether.registry.ItemsRegistry; + +public class BNItemMaterials { + public static final IArmorMaterial CINCINNASITE_ARMOR = new BNArmorMaterial("cincinnasite", 12, 4, SoundEvents.ITEM_ARMOR_EQUIP_IRON, ItemsRegistry.CINCINNASITE_INGOT, 1F, new int[] { 3, 5, 7, 3 }); + public static final IArmorMaterial NETHER_RUBY_ARMOR = new BNArmorMaterial("nether_ruby", 13, 3, SoundEvents.ITEM_ARMOR_EQUIP_IRON, ItemsRegistry.NETHER_RUBY, 1F, new int[] { 3, 5, 7, 3 }); + + public static final IItemTier CINCINNASITE_TOOLS = new BNToolMaterial(512, 6F, 2, 14, 2.5F, ItemsRegistry.CINCINNASITE_INGOT); + public static final IItemTier CINCINNASITE_DIAMOND_TOOLS = new BNToolMaterial(1800, 8F, 3, 22, 3.5F, Items.DIAMOND); + + public static final IItemTier NETHER_RUBY_TOOLS = new BNToolMaterial(1300, 4F, 3, 9, 2.0F, ItemsRegistry.NETHER_RUBY); +} diff --git a/src/main/java/redd90/betternether/items/materials/BNToolMaterial.java b/src/main/java/redd90/betternether/items/materials/BNToolMaterial.java new file mode 100644 index 0000000..b1f03b2 --- /dev/null +++ b/src/main/java/redd90/betternether/items/materials/BNToolMaterial.java @@ -0,0 +1,53 @@ +package redd90.betternether.items.materials; + +import net.minecraft.item.IItemTier; +import net.minecraft.item.crafting.Ingredient; +import net.minecraft.util.IItemProvider; + +public class BNToolMaterial implements IItemTier { + private final int durability; + private final float speed; + private final int level; + private final int enchantibility; + private final float damage; + private final IItemProvider repair; + + public BNToolMaterial(int durability, float speed, int level, int enchantibility, float damage, IItemProvider repair) { + this.durability = durability; + this.speed = speed; + this.level = level; + this.enchantibility = enchantibility; + this.damage = damage; + this.repair = repair; + } + + @Override + public int getMaxUses() { + return durability; + } + + @Override + public float getEfficiency() { + return speed; + } + + @Override + public float getAttackDamage() { + return damage; + } + + @Override + public int getHarvestLevel() { + return level; + } + + @Override + public int getEnchantability() { + return enchantibility; + } + + @Override + public Ingredient getRepairMaterial() { + return Ingredient.fromItems(repair); + } +} diff --git a/src/main/java/redd90/betternether/mixin/ChunkGeneratorMixin.java b/src/main/java/redd90/betternether/mixin/ChunkGeneratorMixin.java new file mode 100644 index 0000000..735e625 --- /dev/null +++ b/src/main/java/redd90/betternether/mixin/ChunkGeneratorMixin.java @@ -0,0 +1,76 @@ +package redd90.betternether.mixin; + +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; + +import net.minecraft.crash.CrashReport; +import net.minecraft.crash.ReportedException; +import net.minecraft.util.SharedSeedRandom; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.biome.Biome; +import net.minecraft.world.biome.Biome.Category; +import net.minecraft.world.gen.ChunkGenerator; +import net.minecraft.world.gen.WorldGenRegion; +import net.minecraft.world.gen.feature.structure.StructureManager; +import redd90.betternether.world.BNWorldGenerator; + +@Mixin(ChunkGenerator.class) +public abstract class ChunkGeneratorMixin { + private static final SharedSeedRandom RANDOM = new SharedSeedRandom(); + private static final Mutable POS = new Mutable(); + + @Inject(method = "func_230351_a_", at = @At("HEAD"), cancellable = true) + private void customPopulate(WorldGenRegion region, StructureManager accessor, CallbackInfo info) { + int chunkX = region.getMainChunkX(); + int chunkZ = region.getMainChunkZ(); + if (!region.isRemote() && isNetherBiome(region, chunkX, chunkZ)) { + RANDOM.setBaseChunkSeed(chunkX, chunkZ); + int sx = chunkX << 4; + int sz = chunkZ << 4; + BNWorldGenerator.prePopulate(region, sx, sz, RANDOM); + + long featureSeed = RANDOM.setDecorationSeed(region.getSeed(), chunkX, chunkZ); + ChunkGenerator generator = (ChunkGenerator) (Object) this; + for (Biome biome : BNWorldGenerator.getPopulateBiomes()) { + try { + biome.generateFeatures(accessor, generator, region, featureSeed, RANDOM, new BlockPos(sx, 0, sz)); + } + catch (Exception e) { + CrashReport crashReport = CrashReport.makeCrashReport(e, "Biome decoration"); + crashReport + .makeCategory("Generation") + .addDetail("CenterX", region.getMainChunkX()) + .addDetail("CenterZ", region.getMainChunkZ()) + .addDetail("Seed", featureSeed) + .addDetail("Biome", biome); + throw new ReportedException(crashReport); + } + } + + BNWorldGenerator.populate(region, sx, sz, RANDOM); + BNWorldGenerator.cleaningPass(region, sx, sz); + + info.cancel(); + } + } + + private boolean isNetherBiome(WorldGenRegion world, int cx, int cz) { + POS.setPos(cx << 4, 0, cx << 4); + return isNetherBiome(world.getBiome(POS)) || + isNetherBiome(world.getBiome(POS.add(0, 0, 7))) || + isNetherBiome(world.getBiome(POS.add(0, 0, 15))) || + isNetherBiome(world.getBiome(POS.add(7, 0, 0))) || + isNetherBiome(world.getBiome(POS.add(7, 0, 7))) || + isNetherBiome(world.getBiome(POS.add(7, 0, 15))) || + isNetherBiome(world.getBiome(POS.add(15, 0, 0))) || + isNetherBiome(world.getBiome(POS.add(15, 0, 7))) || + isNetherBiome(world.getBiome(POS.add(15, 0, 15))); + } + + private boolean isNetherBiome(Biome biome) { + return biome.getCategory() == Category.NETHER; + } +} diff --git a/src/main/java/redd90/betternether/mixin/ChunkSerializerMixin.java b/src/main/java/redd90/betternether/mixin/ChunkSerializerMixin.java new file mode 100644 index 0000000..6e08889 --- /dev/null +++ b/src/main/java/redd90/betternether/mixin/ChunkSerializerMixin.java @@ -0,0 +1,46 @@ +package redd90.betternether.mixin; + +import java.util.Iterator; +import java.util.Map; +import java.util.Map.Entry; + +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; + +import it.unimi.dsi.fastutil.longs.LongSet; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.nbt.LongArrayNBT; +import net.minecraft.util.math.ChunkPos; +import net.minecraft.world.chunk.storage.ChunkSerializer; +import net.minecraft.world.gen.feature.structure.Structure; +import net.minecraft.world.gen.feature.structure.StructureStart; + +@Mixin(ChunkSerializer.class) +public class ChunkSerializerMixin { + @Overwrite + private static CompoundNBT writeStructures(ChunkPos pos, Map, StructureStart> structureStarts, Map, LongSet> structureReferences) { + CompoundNBT tagResult = new CompoundNBT(); + CompoundNBT tagStarts = new CompoundNBT(); + Iterator, StructureStart>> startsIterator = structureStarts.entrySet().iterator(); + + while (startsIterator.hasNext()) { + Entry, StructureStart> start = startsIterator.next(); + tagStarts.put((start.getKey()).getStructureName(), (start.getValue()).write(pos.x, pos.z)); + } + + tagResult.put("Starts", tagStarts); + CompoundNBT tagReferences = new CompoundNBT(); + Iterator, LongSet>> refIterator = structureReferences.entrySet().iterator(); + + while (refIterator.hasNext()) { + Entry, LongSet> feature = refIterator.next(); + // Structures sometimes can be null + if (feature.getKey() != null) { + tagReferences.put((feature.getKey()).getStructureName(), new LongArrayNBT(feature.getValue())); + } + } + + tagResult.put("References", tagReferences); + return tagResult; + } +} diff --git a/src/main/java/redd90/betternether/mixin/DimensionTypeMixin.java b/src/main/java/redd90/betternether/mixin/DimensionTypeMixin.java new file mode 100644 index 0000000..cde5440 --- /dev/null +++ b/src/main/java/redd90/betternether/mixin/DimensionTypeMixin.java @@ -0,0 +1,25 @@ +package redd90.betternether.mixin; + +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.CallbackInfoReturnable; + +import net.minecraft.util.registry.Registry; +import net.minecraft.world.DimensionType; +import net.minecraft.world.biome.Biome; +import net.minecraft.world.gen.ChunkGenerator; +import net.minecraft.world.gen.DimensionSettings; +import net.minecraft.world.gen.NoiseChunkGenerator; +import redd90.betternether.world.NetherBiomeProvider; + +@Mixin(value = DimensionType.class, priority = 100) +public class DimensionTypeMixin { + @Inject(method = "getNetherChunkGenerator", at = @At("HEAD"), cancellable = true) + private static void replaceGenerator(Registry biomeRegistry, Registry chunkGeneratorSettingsRegistry, long seed, CallbackInfoReturnable info) { + info.setReturnValue(new NoiseChunkGenerator(new NetherBiomeProvider(biomeRegistry, seed), seed, () -> { + return (DimensionSettings) chunkGeneratorSettingsRegistry.getOrThrow(DimensionSettings.field_242736_e); + })); + info.cancel(); + } +} diff --git a/src/main/java/redd90/betternether/mixin/MixinConnector.java b/src/main/java/redd90/betternether/mixin/MixinConnector.java new file mode 100644 index 0000000..a1b96fe --- /dev/null +++ b/src/main/java/redd90/betternether/mixin/MixinConnector.java @@ -0,0 +1,16 @@ +package redd90.betternether.mixin; + +import org.spongepowered.asm.mixin.Mixins; +import org.spongepowered.asm.mixin.connect.IMixinConnector; + +import redd90.betternether.BetterNether; + +public class MixinConnector implements IMixinConnector { + @Override + public void connect() { + BetterNether.LOGGER.debug("Better Nether: Connecting Mixins..."); + Mixins.addConfiguration("betternether.mixins.json"); + //BetterNether.isUsingMixin = true; + BetterNether.LOGGER.info("Better Nether: Mixin Connected!"); + } +} diff --git a/src/main/java/redd90/betternether/mixin/ServerWorldMixin.java b/src/main/java/redd90/betternether/mixin/ServerWorldMixin.java new file mode 100644 index 0000000..2ba0663 --- /dev/null +++ b/src/main/java/redd90/betternether/mixin/ServerWorldMixin.java @@ -0,0 +1,32 @@ +package redd90.betternether.mixin; + +import java.util.List; +import java.util.concurrent.Executor; + +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; + +import net.minecraft.server.MinecraftServer; +import net.minecraft.util.RegistryKey; +import net.minecraft.world.DimensionType; +import net.minecraft.world.World; +import net.minecraft.world.chunk.listener.IChunkStatusListener; +import net.minecraft.world.gen.ChunkGenerator; +import net.minecraft.world.server.ServerWorld; +import net.minecraft.world.spawner.ISpecialSpawner; +import net.minecraft.world.storage.IServerWorldInfo; +import net.minecraft.world.storage.SaveFormat; +import redd90.betternether.world.BNWorldGenerator; +import redd90.betternether.world.structures.CityFeature; + +@Mixin(ServerWorld.class) +public class ServerWorldMixin { + @Inject(method = "*", at = @At("RETURN")) + private void onInit(MinecraftServer server, Executor workerExecutor, SaveFormat.LevelSave session, IServerWorldInfo properties, RegistryKey registryKey, DimensionType dimensionType, + IChunkStatusListener worldGenerationProgressListener, ChunkGenerator chunkGenerator, boolean bl, long seed, List list, boolean bl2, CallbackInfo info) { + BNWorldGenerator.init(seed); + CityFeature.initGenerator(); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/mixin/WorkbenchContainerMixin.java b/src/main/java/redd90/betternether/mixin/WorkbenchContainerMixin.java new file mode 100644 index 0000000..42bfb68 --- /dev/null +++ b/src/main/java/redd90/betternether/mixin/WorkbenchContainerMixin.java @@ -0,0 +1,29 @@ +package redd90.betternether.mixin; + +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import net.minecraft.block.CraftingTableBlock; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.inventory.container.WorkbenchContainer; +import net.minecraft.util.IWorldPosCallable; + + +@Mixin(WorkbenchContainer.class) +public abstract class WorkbenchContainerMixin { + @Shadow + @Final + private IWorldPosCallable worldPosCallable; + + @Inject(method = "canInteractWith", at = @At("HEAD"), cancellable = true) + private void canUse(PlayerEntity player, CallbackInfoReturnable info) { + info.setReturnValue(worldPosCallable.applyOrElse((world, pos) -> { + return world.getBlockState(pos).getBlock() instanceof CraftingTableBlock; + }, true)); + info.cancel(); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/noise/OpenSimplexNoise.java b/src/main/java/redd90/betternether/noise/OpenSimplexNoise.java new file mode 100644 index 0000000..c27b295 --- /dev/null +++ b/src/main/java/redd90/betternether/noise/OpenSimplexNoise.java @@ -0,0 +1,2327 @@ +package redd90.betternether.noise; + +/* + * OpenSimplex Noise in Java. + * by Kurt Spencer + * + * v1.1 (October 5, 2014) + * - Added 2D and 4D implementations. + * - Proper gradient sets for all dimensions, from a + * dimensionally-generalizable scheme with an actual + * rhyme and reason behind it. + * - Removed default permutation array in favor of + * default seed. + * - Changed seed-based constructor to be independent + * of any particular randomization library, so results + * will be the same when ported to other languages. + */ + +public class OpenSimplexNoise { + private static final double STRETCH_CONSTANT_2D = -0.211324865405187; // (1/Math.sqrt(2+1)-1)/2; + private static final double SQUISH_CONSTANT_2D = 0.366025403784439; // (Math.sqrt(2+1)-1)/2; + private static final double STRETCH_CONSTANT_3D = -1.0 / 6; // (1/Math.sqrt(3+1)-1)/3; + private static final double SQUISH_CONSTANT_3D = 1.0 / 3; // (Math.sqrt(3+1)-1)/3; + private static final double STRETCH_CONSTANT_4D = -0.138196601125011; // (1/Math.sqrt(4+1)-1)/4; + private static final double SQUISH_CONSTANT_4D = 0.309016994374947; // (Math.sqrt(4+1)-1)/4; + + private static final double NORM_CONSTANT_2D = 47; + private static final double NORM_CONSTANT_3D = 103; + private static final double NORM_CONSTANT_4D = 30; + + private static final long DEFAULT_SEED = 0; + + private short[] perm; + private short[] permGradIndex3D; + + public OpenSimplexNoise() { + this(DEFAULT_SEED); + } + + public OpenSimplexNoise(short[] perm) { + this.perm = perm; + permGradIndex3D = new short[256]; + + for (int i = 0; i < 256; i++) { + // Since 3D has 24 gradients, simple bitmask won't work, so + // precompute modulo array. + permGradIndex3D[i] = (short) ((perm[i] % (gradients3D.length / 3)) * 3); + } + } + + // Initializes the class using a permutation array generated from a 64-bit + // seed. + // Generates a proper permutation (i.e. doesn't merely perform N successive + // pair swaps on a base array) + // Uses a simple 64-bit LCG. + public OpenSimplexNoise(long seed) { + perm = new short[256]; + permGradIndex3D = new short[256]; + short[] source = new short[256]; + for (short i = 0; i < 256; i++) + source[i] = i; + seed = seed * 6364136223846793005l + 1442695040888963407l; + seed = seed * 6364136223846793005l + 1442695040888963407l; + seed = seed * 6364136223846793005l + 1442695040888963407l; + for (int i = 255; i >= 0; i--) { + seed = seed * 6364136223846793005l + 1442695040888963407l; + int r = (int) ((seed + 31) % (i + 1)); + if (r < 0) + r += (i + 1); + perm[i] = source[r]; + permGradIndex3D[i] = (short) ((perm[i] % (gradients3D.length / 3)) * 3); + source[r] = source[i]; + } + } + + // 2D OpenSimplex Noise. + public double eval(double x, double y) { + + // Place input coordinates onto grid. + double stretchOffset = (x + y) * STRETCH_CONSTANT_2D; + double xs = x + stretchOffset; + double ys = y + stretchOffset; + + // Floor to get grid coordinates of rhombus (stretched square) + // super-cell origin. + int xsb = fastFloor(xs); + int ysb = fastFloor(ys); + + // Skew out to get actual coordinates of rhombus origin. We'll need + // these later. + double squishOffset = (xsb + ysb) * SQUISH_CONSTANT_2D; + double xb = xsb + squishOffset; + double yb = ysb + squishOffset; + + // Compute grid coordinates relative to rhombus origin. + double xins = xs - xsb; + double yins = ys - ysb; + + // Sum those together to get a value that determines which region we're + // in. + double inSum = xins + yins; + + // Positions relative to origin point. + double dx0 = x - xb; + double dy0 = y - yb; + + // We'll be defining these inside the next block and using them + // afterwards. + double dx_ext, dy_ext; + int xsv_ext, ysv_ext; + + double value = 0; + + // Contribution (1,0) + double dx1 = dx0 - 1 - SQUISH_CONSTANT_2D; + double dy1 = dy0 - 0 - SQUISH_CONSTANT_2D; + double attn1 = 2 - dx1 * dx1 - dy1 * dy1; + if (attn1 > 0) { + attn1 *= attn1; + value += attn1 * attn1 * extrapolate(xsb + 1, ysb + 0, dx1, dy1); + } + + // Contribution (0,1) + double dx2 = dx0 - 0 - SQUISH_CONSTANT_2D; + double dy2 = dy0 - 1 - SQUISH_CONSTANT_2D; + double attn2 = 2 - dx2 * dx2 - dy2 * dy2; + if (attn2 > 0) { + attn2 *= attn2; + value += attn2 * attn2 * extrapolate(xsb + 0, ysb + 1, dx2, dy2); + } + + if (inSum <= 1) { // We're inside the triangle (2-Simplex) at (0,0) + double zins = 1 - inSum; + if (zins > xins || zins > yins) { // (0,0) is one of the closest two + // triangular vertices + if (xins > yins) { + xsv_ext = xsb + 1; + ysv_ext = ysb - 1; + dx_ext = dx0 - 1; + dy_ext = dy0 + 1; + } + else { + xsv_ext = xsb - 1; + ysv_ext = ysb + 1; + dx_ext = dx0 + 1; + dy_ext = dy0 - 1; + } + } + else { // (1,0) and (0,1) are the closest two vertices. + xsv_ext = xsb + 1; + ysv_ext = ysb + 1; + dx_ext = dx0 - 1 - 2 * SQUISH_CONSTANT_2D; + dy_ext = dy0 - 1 - 2 * SQUISH_CONSTANT_2D; + } + } + else { // We're inside the triangle (2-Simplex) at (1,1) + double zins = 2 - inSum; + if (zins < xins || zins < yins) { // (0,0) is one of the closest two + // triangular vertices + if (xins > yins) { + xsv_ext = xsb + 2; + ysv_ext = ysb + 0; + dx_ext = dx0 - 2 - 2 * SQUISH_CONSTANT_2D; + dy_ext = dy0 + 0 - 2 * SQUISH_CONSTANT_2D; + } + else { + xsv_ext = xsb + 0; + ysv_ext = ysb + 2; + dx_ext = dx0 + 0 - 2 * SQUISH_CONSTANT_2D; + dy_ext = dy0 - 2 - 2 * SQUISH_CONSTANT_2D; + } + } + else { // (1,0) and (0,1) are the closest two vertices. + dx_ext = dx0; + dy_ext = dy0; + xsv_ext = xsb; + ysv_ext = ysb; + } + xsb += 1; + ysb += 1; + dx0 = dx0 - 1 - 2 * SQUISH_CONSTANT_2D; + dy0 = dy0 - 1 - 2 * SQUISH_CONSTANT_2D; + } + + // Contribution (0,0) or (1,1) + double attn0 = 2 - dx0 * dx0 - dy0 * dy0; + if (attn0 > 0) { + attn0 *= attn0; + value += attn0 * attn0 * extrapolate(xsb, ysb, dx0, dy0); + } + + // Extra Vertex + double attn_ext = 2 - dx_ext * dx_ext - dy_ext * dy_ext; + if (attn_ext > 0) { + attn_ext *= attn_ext; + value += attn_ext * attn_ext * extrapolate(xsv_ext, ysv_ext, dx_ext, dy_ext); + } + + return value / NORM_CONSTANT_2D; + } + + // 3D OpenSimplex Noise. + public double eval(double x, double y, double z) { + + // Place input coordinates on simplectic honeycomb. + double stretchOffset = (x + y + z) * STRETCH_CONSTANT_3D; + double xs = x + stretchOffset; + double ys = y + stretchOffset; + double zs = z + stretchOffset; + + // Floor to get simplectic honeycomb coordinates of rhombohedron + // (stretched cube) super-cell origin. + int xsb = fastFloor(xs); + int ysb = fastFloor(ys); + int zsb = fastFloor(zs); + + // Skew out to get actual coordinates of rhombohedron origin. We'll need + // these later. + double squishOffset = (xsb + ysb + zsb) * SQUISH_CONSTANT_3D; + double xb = xsb + squishOffset; + double yb = ysb + squishOffset; + double zb = zsb + squishOffset; + + // Compute simplectic honeycomb coordinates relative to rhombohedral + // origin. + double xins = xs - xsb; + double yins = ys - ysb; + double zins = zs - zsb; + + // Sum those together to get a value that determines which region we're + // in. + double inSum = xins + yins + zins; + + // Positions relative to origin point. + double dx0 = x - xb; + double dy0 = y - yb; + double dz0 = z - zb; + + // We'll be defining these inside the next block and using them + // afterwards. + double dx_ext0, dy_ext0, dz_ext0; + double dx_ext1, dy_ext1, dz_ext1; + int xsv_ext0, ysv_ext0, zsv_ext0; + int xsv_ext1, ysv_ext1, zsv_ext1; + + double value = 0; + if (inSum <= 1) { // We're inside the tetrahedron (3-Simplex) at (0,0,0) + + // Determine which two of (0,0,1), (0,1,0), (1,0,0) are closest. + byte aPoint = 0x01; + double aScore = xins; + byte bPoint = 0x02; + double bScore = yins; + if (aScore >= bScore && zins > bScore) { + bScore = zins; + bPoint = 0x04; + } + else if (aScore < bScore && zins > aScore) { + aScore = zins; + aPoint = 0x04; + } + + // Now we determine the two lattice points not part of the + // tetrahedron that may contribute. + // This depends on the closest two tetrahedral vertices, including + // (0,0,0) + double wins = 1 - inSum; + if (wins > aScore || wins > bScore) { // (0,0,0) is one of the + // closest two tetrahedral + // vertices. + byte c = (bScore > aScore ? bPoint : aPoint); // Our other + // closest + // vertex is the + // closest out + // of a and b. + + if ((c & 0x01) == 0) { + xsv_ext0 = xsb - 1; + xsv_ext1 = xsb; + dx_ext0 = dx0 + 1; + dx_ext1 = dx0; + } + else { + xsv_ext0 = xsv_ext1 = xsb + 1; + dx_ext0 = dx_ext1 = dx0 - 1; + } + + if ((c & 0x02) == 0) { + ysv_ext0 = ysv_ext1 = ysb; + dy_ext0 = dy_ext1 = dy0; + if ((c & 0x01) == 0) { + ysv_ext1 -= 1; + dy_ext1 += 1; + } + else { + ysv_ext0 -= 1; + dy_ext0 += 1; + } + } + else { + ysv_ext0 = ysv_ext1 = ysb + 1; + dy_ext0 = dy_ext1 = dy0 - 1; + } + + if ((c & 0x04) == 0) { + zsv_ext0 = zsb; + zsv_ext1 = zsb - 1; + dz_ext0 = dz0; + dz_ext1 = dz0 + 1; + } + else { + zsv_ext0 = zsv_ext1 = zsb + 1; + dz_ext0 = dz_ext1 = dz0 - 1; + } + } + else { // (0,0,0) is not one of the closest two tetrahedral + // vertices. + byte c = (byte) (aPoint | bPoint); // Our two extra vertices are + // determined by the closest + // two. + + if ((c & 0x01) == 0) { + xsv_ext0 = xsb; + xsv_ext1 = xsb - 1; + dx_ext0 = dx0 - 2 * SQUISH_CONSTANT_3D; + dx_ext1 = dx0 + 1 - SQUISH_CONSTANT_3D; + } + else { + xsv_ext0 = xsv_ext1 = xsb + 1; + dx_ext0 = dx0 - 1 - 2 * SQUISH_CONSTANT_3D; + dx_ext1 = dx0 - 1 - SQUISH_CONSTANT_3D; + } + + if ((c & 0x02) == 0) { + ysv_ext0 = ysb; + ysv_ext1 = ysb - 1; + dy_ext0 = dy0 - 2 * SQUISH_CONSTANT_3D; + dy_ext1 = dy0 + 1 - SQUISH_CONSTANT_3D; + } + else { + ysv_ext0 = ysv_ext1 = ysb + 1; + dy_ext0 = dy0 - 1 - 2 * SQUISH_CONSTANT_3D; + dy_ext1 = dy0 - 1 - SQUISH_CONSTANT_3D; + } + + if ((c & 0x04) == 0) { + zsv_ext0 = zsb; + zsv_ext1 = zsb - 1; + dz_ext0 = dz0 - 2 * SQUISH_CONSTANT_3D; + dz_ext1 = dz0 + 1 - SQUISH_CONSTANT_3D; + } + else { + zsv_ext0 = zsv_ext1 = zsb + 1; + dz_ext0 = dz0 - 1 - 2 * SQUISH_CONSTANT_3D; + dz_ext1 = dz0 - 1 - SQUISH_CONSTANT_3D; + } + } + + // Contribution (0,0,0) + double attn0 = 2 - dx0 * dx0 - dy0 * dy0 - dz0 * dz0; + if (attn0 > 0) { + attn0 *= attn0; + value += attn0 * attn0 * extrapolate(xsb + 0, ysb + 0, zsb + 0, dx0, dy0, dz0); + } + + // Contribution (1,0,0) + double dx1 = dx0 - 1 - SQUISH_CONSTANT_3D; + double dy1 = dy0 - 0 - SQUISH_CONSTANT_3D; + double dz1 = dz0 - 0 - SQUISH_CONSTANT_3D; + double attn1 = 2 - dx1 * dx1 - dy1 * dy1 - dz1 * dz1; + if (attn1 > 0) { + attn1 *= attn1; + value += attn1 * attn1 * extrapolate(xsb + 1, ysb + 0, zsb + 0, dx1, dy1, dz1); + } + + // Contribution (0,1,0) + double dx2 = dx0 - 0 - SQUISH_CONSTANT_3D; + double dy2 = dy0 - 1 - SQUISH_CONSTANT_3D; + double dz2 = dz1; + double attn2 = 2 - dx2 * dx2 - dy2 * dy2 - dz2 * dz2; + if (attn2 > 0) { + attn2 *= attn2; + value += attn2 * attn2 * extrapolate(xsb + 0, ysb + 1, zsb + 0, dx2, dy2, dz2); + } + + // Contribution (0,0,1) + double dx3 = dx2; + double dy3 = dy1; + double dz3 = dz0 - 1 - SQUISH_CONSTANT_3D; + double attn3 = 2 - dx3 * dx3 - dy3 * dy3 - dz3 * dz3; + if (attn3 > 0) { + attn3 *= attn3; + value += attn3 * attn3 * extrapolate(xsb + 0, ysb + 0, zsb + 1, dx3, dy3, dz3); + } + } + else if (inSum >= 2) { // We're inside the tetrahedron (3-Simplex) at + // (1,1,1) + + // Determine which two tetrahedral vertices are the closest, out of + // (1,1,0), (1,0,1), (0,1,1) but not (1,1,1). + byte aPoint = 0x06; + double aScore = xins; + byte bPoint = 0x05; + double bScore = yins; + if (aScore <= bScore && zins < bScore) { + bScore = zins; + bPoint = 0x03; + } + else if (aScore > bScore && zins < aScore) { + aScore = zins; + aPoint = 0x03; + } + + // Now we determine the two lattice points not part of the + // tetrahedron that may contribute. + // This depends on the closest two tetrahedral vertices, including + // (1,1,1) + double wins = 3 - inSum; + if (wins < aScore || wins < bScore) { // (1,1,1) is one of the + // closest two tetrahedral + // vertices. + byte c = (bScore < aScore ? bPoint : aPoint); // Our other + // closest + // vertex is the + // closest out + // of a and b. + + if ((c & 0x01) != 0) { + xsv_ext0 = xsb + 2; + xsv_ext1 = xsb + 1; + dx_ext0 = dx0 - 2 - 3 * SQUISH_CONSTANT_3D; + dx_ext1 = dx0 - 1 - 3 * SQUISH_CONSTANT_3D; + } + else { + xsv_ext0 = xsv_ext1 = xsb; + dx_ext0 = dx_ext1 = dx0 - 3 * SQUISH_CONSTANT_3D; + } + + if ((c & 0x02) != 0) { + ysv_ext0 = ysv_ext1 = ysb + 1; + dy_ext0 = dy_ext1 = dy0 - 1 - 3 * SQUISH_CONSTANT_3D; + if ((c & 0x01) != 0) { + ysv_ext1 += 1; + dy_ext1 -= 1; + } + else { + ysv_ext0 += 1; + dy_ext0 -= 1; + } + } + else { + ysv_ext0 = ysv_ext1 = ysb; + dy_ext0 = dy_ext1 = dy0 - 3 * SQUISH_CONSTANT_3D; + } + + if ((c & 0x04) != 0) { + zsv_ext0 = zsb + 1; + zsv_ext1 = zsb + 2; + dz_ext0 = dz0 - 1 - 3 * SQUISH_CONSTANT_3D; + dz_ext1 = dz0 - 2 - 3 * SQUISH_CONSTANT_3D; + } + else { + zsv_ext0 = zsv_ext1 = zsb; + dz_ext0 = dz_ext1 = dz0 - 3 * SQUISH_CONSTANT_3D; + } + } + else { // (1,1,1) is not one of the closest two tetrahedral + // vertices. + byte c = (byte) (aPoint & bPoint); // Our two extra vertices are + // determined by the closest + // two. + + if ((c & 0x01) != 0) { + xsv_ext0 = xsb + 1; + xsv_ext1 = xsb + 2; + dx_ext0 = dx0 - 1 - SQUISH_CONSTANT_3D; + dx_ext1 = dx0 - 2 - 2 * SQUISH_CONSTANT_3D; + } + else { + xsv_ext0 = xsv_ext1 = xsb; + dx_ext0 = dx0 - SQUISH_CONSTANT_3D; + dx_ext1 = dx0 - 2 * SQUISH_CONSTANT_3D; + } + + if ((c & 0x02) != 0) { + ysv_ext0 = ysb + 1; + ysv_ext1 = ysb + 2; + dy_ext0 = dy0 - 1 - SQUISH_CONSTANT_3D; + dy_ext1 = dy0 - 2 - 2 * SQUISH_CONSTANT_3D; + } + else { + ysv_ext0 = ysv_ext1 = ysb; + dy_ext0 = dy0 - SQUISH_CONSTANT_3D; + dy_ext1 = dy0 - 2 * SQUISH_CONSTANT_3D; + } + + if ((c & 0x04) != 0) { + zsv_ext0 = zsb + 1; + zsv_ext1 = zsb + 2; + dz_ext0 = dz0 - 1 - SQUISH_CONSTANT_3D; + dz_ext1 = dz0 - 2 - 2 * SQUISH_CONSTANT_3D; + } + else { + zsv_ext0 = zsv_ext1 = zsb; + dz_ext0 = dz0 - SQUISH_CONSTANT_3D; + dz_ext1 = dz0 - 2 * SQUISH_CONSTANT_3D; + } + } + + // Contribution (1,1,0) + double dx3 = dx0 - 1 - 2 * SQUISH_CONSTANT_3D; + double dy3 = dy0 - 1 - 2 * SQUISH_CONSTANT_3D; + double dz3 = dz0 - 0 - 2 * SQUISH_CONSTANT_3D; + double attn3 = 2 - dx3 * dx3 - dy3 * dy3 - dz3 * dz3; + if (attn3 > 0) { + attn3 *= attn3; + value += attn3 * attn3 * extrapolate(xsb + 1, ysb + 1, zsb + 0, dx3, dy3, dz3); + } + + // Contribution (1,0,1) + double dx2 = dx3; + double dy2 = dy0 - 0 - 2 * SQUISH_CONSTANT_3D; + double dz2 = dz0 - 1 - 2 * SQUISH_CONSTANT_3D; + double attn2 = 2 - dx2 * dx2 - dy2 * dy2 - dz2 * dz2; + if (attn2 > 0) { + attn2 *= attn2; + value += attn2 * attn2 * extrapolate(xsb + 1, ysb + 0, zsb + 1, dx2, dy2, dz2); + } + + // Contribution (0,1,1) + double dx1 = dx0 - 0 - 2 * SQUISH_CONSTANT_3D; + double dy1 = dy3; + double dz1 = dz2; + double attn1 = 2 - dx1 * dx1 - dy1 * dy1 - dz1 * dz1; + if (attn1 > 0) { + attn1 *= attn1; + value += attn1 * attn1 * extrapolate(xsb + 0, ysb + 1, zsb + 1, dx1, dy1, dz1); + } + + // Contribution (1,1,1) + dx0 = dx0 - 1 - 3 * SQUISH_CONSTANT_3D; + dy0 = dy0 - 1 - 3 * SQUISH_CONSTANT_3D; + dz0 = dz0 - 1 - 3 * SQUISH_CONSTANT_3D; + double attn0 = 2 - dx0 * dx0 - dy0 * dy0 - dz0 * dz0; + if (attn0 > 0) { + attn0 *= attn0; + value += attn0 * attn0 * extrapolate(xsb + 1, ysb + 1, zsb + 1, dx0, dy0, dz0); + } + } + else { // We're inside the octahedron (Rectified 3-Simplex) in between. + double aScore; + byte aPoint; + boolean aIsFurtherSide; + double bScore; + byte bPoint; + boolean bIsFurtherSide; + + // Decide between point (0,0,1) and (1,1,0) as closest + double p1 = xins + yins; + if (p1 > 1) { + aScore = p1 - 1; + aPoint = 0x03; + aIsFurtherSide = true; + } + else { + aScore = 1 - p1; + aPoint = 0x04; + aIsFurtherSide = false; + } + + // Decide between point (0,1,0) and (1,0,1) as closest + double p2 = xins + zins; + if (p2 > 1) { + bScore = p2 - 1; + bPoint = 0x05; + bIsFurtherSide = true; + } + else { + bScore = 1 - p2; + bPoint = 0x02; + bIsFurtherSide = false; + } + + // The closest out of the two (1,0,0) and (0,1,1) will replace the + // furthest out of the two decided above, if closer. + double p3 = yins + zins; + if (p3 > 1) { + double score = p3 - 1; + if (aScore <= bScore && aScore < score) { + aScore = score; + aPoint = 0x06; + aIsFurtherSide = true; + } + else if (aScore > bScore && bScore < score) { + bScore = score; + bPoint = 0x06; + bIsFurtherSide = true; + } + } + else { + double score = 1 - p3; + if (aScore <= bScore && aScore < score) { + aScore = score; + aPoint = 0x01; + aIsFurtherSide = false; + } + else if (aScore > bScore && bScore < score) { + bScore = score; + bPoint = 0x01; + bIsFurtherSide = false; + } + } + + // Where each of the two closest points are determines how the extra + // two vertices are calculated. + if (aIsFurtherSide == bIsFurtherSide) { + if (aIsFurtherSide) { // Both closest points on (1,1,1) side + + // One of the two extra points is (1,1,1) + dx_ext0 = dx0 - 1 - 3 * SQUISH_CONSTANT_3D; + dy_ext0 = dy0 - 1 - 3 * SQUISH_CONSTANT_3D; + dz_ext0 = dz0 - 1 - 3 * SQUISH_CONSTANT_3D; + xsv_ext0 = xsb + 1; + ysv_ext0 = ysb + 1; + zsv_ext0 = zsb + 1; + + // Other extra point is based on the shared axis. + byte c = (byte) (aPoint & bPoint); + if ((c & 0x01) != 0) { + dx_ext1 = dx0 - 2 - 2 * SQUISH_CONSTANT_3D; + dy_ext1 = dy0 - 2 * SQUISH_CONSTANT_3D; + dz_ext1 = dz0 - 2 * SQUISH_CONSTANT_3D; + xsv_ext1 = xsb + 2; + ysv_ext1 = ysb; + zsv_ext1 = zsb; + } + else if ((c & 0x02) != 0) { + dx_ext1 = dx0 - 2 * SQUISH_CONSTANT_3D; + dy_ext1 = dy0 - 2 - 2 * SQUISH_CONSTANT_3D; + dz_ext1 = dz0 - 2 * SQUISH_CONSTANT_3D; + xsv_ext1 = xsb; + ysv_ext1 = ysb + 2; + zsv_ext1 = zsb; + } + else { + dx_ext1 = dx0 - 2 * SQUISH_CONSTANT_3D; + dy_ext1 = dy0 - 2 * SQUISH_CONSTANT_3D; + dz_ext1 = dz0 - 2 - 2 * SQUISH_CONSTANT_3D; + xsv_ext1 = xsb; + ysv_ext1 = ysb; + zsv_ext1 = zsb + 2; + } + } + else {// Both closest points on (0,0,0) side + + // One of the two extra points is (0,0,0) + dx_ext0 = dx0; + dy_ext0 = dy0; + dz_ext0 = dz0; + xsv_ext0 = xsb; + ysv_ext0 = ysb; + zsv_ext0 = zsb; + + // Other extra point is based on the omitted axis. + byte c = (byte) (aPoint | bPoint); + if ((c & 0x01) == 0) { + dx_ext1 = dx0 + 1 - SQUISH_CONSTANT_3D; + dy_ext1 = dy0 - 1 - SQUISH_CONSTANT_3D; + dz_ext1 = dz0 - 1 - SQUISH_CONSTANT_3D; + xsv_ext1 = xsb - 1; + ysv_ext1 = ysb + 1; + zsv_ext1 = zsb + 1; + } + else if ((c & 0x02) == 0) { + dx_ext1 = dx0 - 1 - SQUISH_CONSTANT_3D; + dy_ext1 = dy0 + 1 - SQUISH_CONSTANT_3D; + dz_ext1 = dz0 - 1 - SQUISH_CONSTANT_3D; + xsv_ext1 = xsb + 1; + ysv_ext1 = ysb - 1; + zsv_ext1 = zsb + 1; + } + else { + dx_ext1 = dx0 - 1 - SQUISH_CONSTANT_3D; + dy_ext1 = dy0 - 1 - SQUISH_CONSTANT_3D; + dz_ext1 = dz0 + 1 - SQUISH_CONSTANT_3D; + xsv_ext1 = xsb + 1; + ysv_ext1 = ysb + 1; + zsv_ext1 = zsb - 1; + } + } + } + else { // One point on (0,0,0) side, one point on (1,1,1) side + byte c1, c2; + if (aIsFurtherSide) { + c1 = aPoint; + c2 = bPoint; + } + else { + c1 = bPoint; + c2 = aPoint; + } + + // One contribution is a permutation of (1,1,-1) + if ((c1 & 0x01) == 0) { + dx_ext0 = dx0 + 1 - SQUISH_CONSTANT_3D; + dy_ext0 = dy0 - 1 - SQUISH_CONSTANT_3D; + dz_ext0 = dz0 - 1 - SQUISH_CONSTANT_3D; + xsv_ext0 = xsb - 1; + ysv_ext0 = ysb + 1; + zsv_ext0 = zsb + 1; + } + else if ((c1 & 0x02) == 0) { + dx_ext0 = dx0 - 1 - SQUISH_CONSTANT_3D; + dy_ext0 = dy0 + 1 - SQUISH_CONSTANT_3D; + dz_ext0 = dz0 - 1 - SQUISH_CONSTANT_3D; + xsv_ext0 = xsb + 1; + ysv_ext0 = ysb - 1; + zsv_ext0 = zsb + 1; + } + else { + dx_ext0 = dx0 - 1 - SQUISH_CONSTANT_3D; + dy_ext0 = dy0 - 1 - SQUISH_CONSTANT_3D; + dz_ext0 = dz0 + 1 - SQUISH_CONSTANT_3D; + xsv_ext0 = xsb + 1; + ysv_ext0 = ysb + 1; + zsv_ext0 = zsb - 1; + } + + // One contribution is a permutation of (0,0,2) + dx_ext1 = dx0 - 2 * SQUISH_CONSTANT_3D; + dy_ext1 = dy0 - 2 * SQUISH_CONSTANT_3D; + dz_ext1 = dz0 - 2 * SQUISH_CONSTANT_3D; + xsv_ext1 = xsb; + ysv_ext1 = ysb; + zsv_ext1 = zsb; + if ((c2 & 0x01) != 0) { + dx_ext1 -= 2; + xsv_ext1 += 2; + } + else if ((c2 & 0x02) != 0) { + dy_ext1 -= 2; + ysv_ext1 += 2; + } + else { + dz_ext1 -= 2; + zsv_ext1 += 2; + } + } + + // Contribution (1,0,0) + double dx1 = dx0 - 1 - SQUISH_CONSTANT_3D; + double dy1 = dy0 - 0 - SQUISH_CONSTANT_3D; + double dz1 = dz0 - 0 - SQUISH_CONSTANT_3D; + double attn1 = 2 - dx1 * dx1 - dy1 * dy1 - dz1 * dz1; + if (attn1 > 0) { + attn1 *= attn1; + value += attn1 * attn1 * extrapolate(xsb + 1, ysb + 0, zsb + 0, dx1, dy1, dz1); + } + + // Contribution (0,1,0) + double dx2 = dx0 - 0 - SQUISH_CONSTANT_3D; + double dy2 = dy0 - 1 - SQUISH_CONSTANT_3D; + double dz2 = dz1; + double attn2 = 2 - dx2 * dx2 - dy2 * dy2 - dz2 * dz2; + if (attn2 > 0) { + attn2 *= attn2; + value += attn2 * attn2 * extrapolate(xsb + 0, ysb + 1, zsb + 0, dx2, dy2, dz2); + } + + // Contribution (0,0,1) + double dx3 = dx2; + double dy3 = dy1; + double dz3 = dz0 - 1 - SQUISH_CONSTANT_3D; + double attn3 = 2 - dx3 * dx3 - dy3 * dy3 - dz3 * dz3; + if (attn3 > 0) { + attn3 *= attn3; + value += attn3 * attn3 * extrapolate(xsb + 0, ysb + 0, zsb + 1, dx3, dy3, dz3); + } + + // Contribution (1,1,0) + double dx4 = dx0 - 1 - 2 * SQUISH_CONSTANT_3D; + double dy4 = dy0 - 1 - 2 * SQUISH_CONSTANT_3D; + double dz4 = dz0 - 0 - 2 * SQUISH_CONSTANT_3D; + double attn4 = 2 - dx4 * dx4 - dy4 * dy4 - dz4 * dz4; + if (attn4 > 0) { + attn4 *= attn4; + value += attn4 * attn4 * extrapolate(xsb + 1, ysb + 1, zsb + 0, dx4, dy4, dz4); + } + + // Contribution (1,0,1) + double dx5 = dx4; + double dy5 = dy0 - 0 - 2 * SQUISH_CONSTANT_3D; + double dz5 = dz0 - 1 - 2 * SQUISH_CONSTANT_3D; + double attn5 = 2 - dx5 * dx5 - dy5 * dy5 - dz5 * dz5; + if (attn5 > 0) { + attn5 *= attn5; + value += attn5 * attn5 * extrapolate(xsb + 1, ysb + 0, zsb + 1, dx5, dy5, dz5); + } + + // Contribution (0,1,1) + double dx6 = dx0 - 0 - 2 * SQUISH_CONSTANT_3D; + double dy6 = dy4; + double dz6 = dz5; + double attn6 = 2 - dx6 * dx6 - dy6 * dy6 - dz6 * dz6; + if (attn6 > 0) { + attn6 *= attn6; + value += attn6 * attn6 * extrapolate(xsb + 0, ysb + 1, zsb + 1, dx6, dy6, dz6); + } + } + + // First extra vertex + double attn_ext0 = 2 - dx_ext0 * dx_ext0 - dy_ext0 * dy_ext0 - dz_ext0 * dz_ext0; + if (attn_ext0 > 0) { + attn_ext0 *= attn_ext0; + value += attn_ext0 * attn_ext0 * extrapolate(xsv_ext0, ysv_ext0, zsv_ext0, dx_ext0, dy_ext0, dz_ext0); + } + + // Second extra vertex + double attn_ext1 = 2 - dx_ext1 * dx_ext1 - dy_ext1 * dy_ext1 - dz_ext1 * dz_ext1; + if (attn_ext1 > 0) { + attn_ext1 *= attn_ext1; + value += attn_ext1 * attn_ext1 * extrapolate(xsv_ext1, ysv_ext1, zsv_ext1, dx_ext1, dy_ext1, dz_ext1); + } + + return value / NORM_CONSTANT_3D; + } + + // 4D OpenSimplex Noise. + public double eval(double x, double y, double z, double w) { + + // Place input coordinates on simplectic honeycomb. + double stretchOffset = (x + y + z + w) * STRETCH_CONSTANT_4D; + double xs = x + stretchOffset; + double ys = y + stretchOffset; + double zs = z + stretchOffset; + double ws = w + stretchOffset; + + // Floor to get simplectic honeycomb coordinates of rhombo-hypercube + // super-cell origin. + int xsb = fastFloor(xs); + int ysb = fastFloor(ys); + int zsb = fastFloor(zs); + int wsb = fastFloor(ws); + + // Skew out to get actual coordinates of stretched rhombo-hypercube + // origin. We'll need these later. + double squishOffset = (xsb + ysb + zsb + wsb) * SQUISH_CONSTANT_4D; + double xb = xsb + squishOffset; + double yb = ysb + squishOffset; + double zb = zsb + squishOffset; + double wb = wsb + squishOffset; + + // Compute simplectic honeycomb coordinates relative to rhombo-hypercube + // origin. + double xins = xs - xsb; + double yins = ys - ysb; + double zins = zs - zsb; + double wins = ws - wsb; + + // Sum those together to get a value that determines which region we're + // in. + double inSum = xins + yins + zins + wins; + + // Positions relative to origin point. + double dx0 = x - xb; + double dy0 = y - yb; + double dz0 = z - zb; + double dw0 = w - wb; + + // We'll be defining these inside the next block and using them + // afterwards. + double dx_ext0, dy_ext0, dz_ext0, dw_ext0; + double dx_ext1, dy_ext1, dz_ext1, dw_ext1; + double dx_ext2, dy_ext2, dz_ext2, dw_ext2; + int xsv_ext0, ysv_ext0, zsv_ext0, wsv_ext0; + int xsv_ext1, ysv_ext1, zsv_ext1, wsv_ext1; + int xsv_ext2, ysv_ext2, zsv_ext2, wsv_ext2; + + double value = 0; + if (inSum <= 1) { // We're inside the pentachoron (4-Simplex) at + // (0,0,0,0) + + // Determine which two of (0,0,0,1), (0,0,1,0), (0,1,0,0), (1,0,0,0) + // are closest. + byte aPoint = 0x01; + double aScore = xins; + byte bPoint = 0x02; + double bScore = yins; + if (aScore >= bScore && zins > bScore) { + bScore = zins; + bPoint = 0x04; + } + else if (aScore < bScore && zins > aScore) { + aScore = zins; + aPoint = 0x04; + } + if (aScore >= bScore && wins > bScore) { + bScore = wins; + bPoint = 0x08; + } + else if (aScore < bScore && wins > aScore) { + aScore = wins; + aPoint = 0x08; + } + + // Now we determine the three lattice points not part of the + // pentachoron that may contribute. + // This depends on the closest two pentachoron vertices, including + // (0,0,0,0) + double uins = 1 - inSum; + if (uins > aScore || uins > bScore) { // (0,0,0,0) is one of the + // closest two pentachoron + // vertices. + byte c = (bScore > aScore ? bPoint : aPoint); // Our other + // closest + // vertex is the + // closest out + // of a and b. + if ((c & 0x01) == 0) { + xsv_ext0 = xsb - 1; + xsv_ext1 = xsv_ext2 = xsb; + dx_ext0 = dx0 + 1; + dx_ext1 = dx_ext2 = dx0; + } + else { + xsv_ext0 = xsv_ext1 = xsv_ext2 = xsb + 1; + dx_ext0 = dx_ext1 = dx_ext2 = dx0 - 1; + } + + if ((c & 0x02) == 0) { + ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb; + dy_ext0 = dy_ext1 = dy_ext2 = dy0; + if ((c & 0x01) == 0x01) { + ysv_ext0 -= 1; + dy_ext0 += 1; + } + else { + ysv_ext1 -= 1; + dy_ext1 += 1; + } + } + else { + ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb + 1; + dy_ext0 = dy_ext1 = dy_ext2 = dy0 - 1; + } + + if ((c & 0x04) == 0) { + zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb; + dz_ext0 = dz_ext1 = dz_ext2 = dz0; + if ((c & 0x03) != 0) { + if ((c & 0x03) == 0x03) { + zsv_ext0 -= 1; + dz_ext0 += 1; + } + else { + zsv_ext1 -= 1; + dz_ext1 += 1; + } + } + else { + zsv_ext2 -= 1; + dz_ext2 += 1; + } + } + else { + zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb + 1; + dz_ext0 = dz_ext1 = dz_ext2 = dz0 - 1; + } + + if ((c & 0x08) == 0) { + wsv_ext0 = wsv_ext1 = wsb; + wsv_ext2 = wsb - 1; + dw_ext0 = dw_ext1 = dw0; + dw_ext2 = dw0 + 1; + } + else { + wsv_ext0 = wsv_ext1 = wsv_ext2 = wsb + 1; + dw_ext0 = dw_ext1 = dw_ext2 = dw0 - 1; + } + } + else { // (0,0,0,0) is not one of the closest two pentachoron + // vertices. + byte c = (byte) (aPoint | bPoint); // Our three extra vertices + // are determined by the + // closest two. + + if ((c & 0x01) == 0) { + xsv_ext0 = xsv_ext2 = xsb; + xsv_ext1 = xsb - 1; + dx_ext0 = dx0 - 2 * SQUISH_CONSTANT_4D; + dx_ext1 = dx0 + 1 - SQUISH_CONSTANT_4D; + dx_ext2 = dx0 - SQUISH_CONSTANT_4D; + } + else { + xsv_ext0 = xsv_ext1 = xsv_ext2 = xsb + 1; + dx_ext0 = dx0 - 1 - 2 * SQUISH_CONSTANT_4D; + dx_ext1 = dx_ext2 = dx0 - 1 - SQUISH_CONSTANT_4D; + } + + if ((c & 0x02) == 0) { + ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb; + dy_ext0 = dy0 - 2 * SQUISH_CONSTANT_4D; + dy_ext1 = dy_ext2 = dy0 - SQUISH_CONSTANT_4D; + if ((c & 0x01) == 0x01) { + ysv_ext1 -= 1; + dy_ext1 += 1; + } + else { + ysv_ext2 -= 1; + dy_ext2 += 1; + } + } + else { + ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb + 1; + dy_ext0 = dy0 - 1 - 2 * SQUISH_CONSTANT_4D; + dy_ext1 = dy_ext2 = dy0 - 1 - SQUISH_CONSTANT_4D; + } + + if ((c & 0x04) == 0) { + zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb; + dz_ext0 = dz0 - 2 * SQUISH_CONSTANT_4D; + dz_ext1 = dz_ext2 = dz0 - SQUISH_CONSTANT_4D; + if ((c & 0x03) == 0x03) { + zsv_ext1 -= 1; + dz_ext1 += 1; + } + else { + zsv_ext2 -= 1; + dz_ext2 += 1; + } + } + else { + zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb + 1; + dz_ext0 = dz0 - 1 - 2 * SQUISH_CONSTANT_4D; + dz_ext1 = dz_ext2 = dz0 - 1 - SQUISH_CONSTANT_4D; + } + + if ((c & 0x08) == 0) { + wsv_ext0 = wsv_ext1 = wsb; + wsv_ext2 = wsb - 1; + dw_ext0 = dw0 - 2 * SQUISH_CONSTANT_4D; + dw_ext1 = dw0 - SQUISH_CONSTANT_4D; + dw_ext2 = dw0 + 1 - SQUISH_CONSTANT_4D; + } + else { + wsv_ext0 = wsv_ext1 = wsv_ext2 = wsb + 1; + dw_ext0 = dw0 - 1 - 2 * SQUISH_CONSTANT_4D; + dw_ext1 = dw_ext2 = dw0 - 1 - SQUISH_CONSTANT_4D; + } + } + + // Contribution (0,0,0,0) + double attn0 = 2 - dx0 * dx0 - dy0 * dy0 - dz0 * dz0 - dw0 * dw0; + if (attn0 > 0) { + attn0 *= attn0; + value += attn0 * attn0 * extrapolate(xsb + 0, ysb + 0, zsb + 0, wsb + 0, dx0, dy0, dz0, dw0); + } + + // Contribution (1,0,0,0) + double dx1 = dx0 - 1 - SQUISH_CONSTANT_4D; + double dy1 = dy0 - 0 - SQUISH_CONSTANT_4D; + double dz1 = dz0 - 0 - SQUISH_CONSTANT_4D; + double dw1 = dw0 - 0 - SQUISH_CONSTANT_4D; + double attn1 = 2 - dx1 * dx1 - dy1 * dy1 - dz1 * dz1 - dw1 * dw1; + if (attn1 > 0) { + attn1 *= attn1; + value += attn1 * attn1 * extrapolate(xsb + 1, ysb + 0, zsb + 0, wsb + 0, dx1, dy1, dz1, dw1); + } + + // Contribution (0,1,0,0) + double dx2 = dx0 - 0 - SQUISH_CONSTANT_4D; + double dy2 = dy0 - 1 - SQUISH_CONSTANT_4D; + double dz2 = dz1; + double dw2 = dw1; + double attn2 = 2 - dx2 * dx2 - dy2 * dy2 - dz2 * dz2 - dw2 * dw2; + if (attn2 > 0) { + attn2 *= attn2; + value += attn2 * attn2 * extrapolate(xsb + 0, ysb + 1, zsb + 0, wsb + 0, dx2, dy2, dz2, dw2); + } + + // Contribution (0,0,1,0) + double dx3 = dx2; + double dy3 = dy1; + double dz3 = dz0 - 1 - SQUISH_CONSTANT_4D; + double dw3 = dw1; + double attn3 = 2 - dx3 * dx3 - dy3 * dy3 - dz3 * dz3 - dw3 * dw3; + if (attn3 > 0) { + attn3 *= attn3; + value += attn3 * attn3 * extrapolate(xsb + 0, ysb + 0, zsb + 1, wsb + 0, dx3, dy3, dz3, dw3); + } + + // Contribution (0,0,0,1) + double dx4 = dx2; + double dy4 = dy1; + double dz4 = dz1; + double dw4 = dw0 - 1 - SQUISH_CONSTANT_4D; + double attn4 = 2 - dx4 * dx4 - dy4 * dy4 - dz4 * dz4 - dw4 * dw4; + if (attn4 > 0) { + attn4 *= attn4; + value += attn4 * attn4 * extrapolate(xsb + 0, ysb + 0, zsb + 0, wsb + 1, dx4, dy4, dz4, dw4); + } + } + else if (inSum >= 3) { // We're inside the pentachoron (4-Simplex) at + // (1,1,1,1) + // Determine which two of (1,1,1,0), (1,1,0,1), + // (1,0,1,1), (0,1,1,1) + // are closest. + byte aPoint = 0x0E; + double aScore = xins; + byte bPoint = 0x0D; + double bScore = yins; + if (aScore <= bScore && zins < bScore) { + bScore = zins; + bPoint = 0x0B; + } + else if (aScore > bScore && zins < aScore) { + aScore = zins; + aPoint = 0x0B; + } + if (aScore <= bScore && wins < bScore) { + bScore = wins; + bPoint = 0x07; + } + else if (aScore > bScore && wins < aScore) { + aScore = wins; + aPoint = 0x07; + } + + // Now we determine the three lattice points not part of the + // pentachoron that may contribute. + // This depends on the closest two pentachoron vertices, including + // (0,0,0,0) + double uins = 4 - inSum; + if (uins < aScore || uins < bScore) { // (1,1,1,1) is one of the + // closest two pentachoron + // vertices. + byte c = (bScore < aScore ? bPoint : aPoint); // Our other + // closest + // vertex is the + // closest out + // of a and b. + + if ((c & 0x01) != 0) { + xsv_ext0 = xsb + 2; + xsv_ext1 = xsv_ext2 = xsb + 1; + dx_ext0 = dx0 - 2 - 4 * SQUISH_CONSTANT_4D; + dx_ext1 = dx_ext2 = dx0 - 1 - 4 * SQUISH_CONSTANT_4D; + } + else { + xsv_ext0 = xsv_ext1 = xsv_ext2 = xsb; + dx_ext0 = dx_ext1 = dx_ext2 = dx0 - 4 * SQUISH_CONSTANT_4D; + } + + if ((c & 0x02) != 0) { + ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb + 1; + dy_ext0 = dy_ext1 = dy_ext2 = dy0 - 1 - 4 * SQUISH_CONSTANT_4D; + if ((c & 0x01) != 0) { + ysv_ext1 += 1; + dy_ext1 -= 1; + } + else { + ysv_ext0 += 1; + dy_ext0 -= 1; + } + } + else { + ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb; + dy_ext0 = dy_ext1 = dy_ext2 = dy0 - 4 * SQUISH_CONSTANT_4D; + } + + if ((c & 0x04) != 0) { + zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb + 1; + dz_ext0 = dz_ext1 = dz_ext2 = dz0 - 1 - 4 * SQUISH_CONSTANT_4D; + if ((c & 0x03) != 0x03) { + if ((c & 0x03) == 0) { + zsv_ext0 += 1; + dz_ext0 -= 1; + } + else { + zsv_ext1 += 1; + dz_ext1 -= 1; + } + } + else { + zsv_ext2 += 1; + dz_ext2 -= 1; + } + } + else { + zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb; + dz_ext0 = dz_ext1 = dz_ext2 = dz0 - 4 * SQUISH_CONSTANT_4D; + } + + if ((c & 0x08) != 0) { + wsv_ext0 = wsv_ext1 = wsb + 1; + wsv_ext2 = wsb + 2; + dw_ext0 = dw_ext1 = dw0 - 1 - 4 * SQUISH_CONSTANT_4D; + dw_ext2 = dw0 - 2 - 4 * SQUISH_CONSTANT_4D; + } + else { + wsv_ext0 = wsv_ext1 = wsv_ext2 = wsb; + dw_ext0 = dw_ext1 = dw_ext2 = dw0 - 4 * SQUISH_CONSTANT_4D; + } + } + else { // (1,1,1,1) is not one of the closest two pentachoron + // vertices. + byte c = (byte) (aPoint & bPoint); // Our three extra vertices + // are determined by the + // closest two. + + if ((c & 0x01) != 0) { + xsv_ext0 = xsv_ext2 = xsb + 1; + xsv_ext1 = xsb + 2; + dx_ext0 = dx0 - 1 - 2 * SQUISH_CONSTANT_4D; + dx_ext1 = dx0 - 2 - 3 * SQUISH_CONSTANT_4D; + dx_ext2 = dx0 - 1 - 3 * SQUISH_CONSTANT_4D; + } + else { + xsv_ext0 = xsv_ext1 = xsv_ext2 = xsb; + dx_ext0 = dx0 - 2 * SQUISH_CONSTANT_4D; + dx_ext1 = dx_ext2 = dx0 - 3 * SQUISH_CONSTANT_4D; + } + + if ((c & 0x02) != 0) { + ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb + 1; + dy_ext0 = dy0 - 1 - 2 * SQUISH_CONSTANT_4D; + dy_ext1 = dy_ext2 = dy0 - 1 - 3 * SQUISH_CONSTANT_4D; + if ((c & 0x01) != 0) { + ysv_ext2 += 1; + dy_ext2 -= 1; + } + else { + ysv_ext1 += 1; + dy_ext1 -= 1; + } + } + else { + ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb; + dy_ext0 = dy0 - 2 * SQUISH_CONSTANT_4D; + dy_ext1 = dy_ext2 = dy0 - 3 * SQUISH_CONSTANT_4D; + } + + if ((c & 0x04) != 0) { + zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb + 1; + dz_ext0 = dz0 - 1 - 2 * SQUISH_CONSTANT_4D; + dz_ext1 = dz_ext2 = dz0 - 1 - 3 * SQUISH_CONSTANT_4D; + if ((c & 0x03) != 0) { + zsv_ext2 += 1; + dz_ext2 -= 1; + } + else { + zsv_ext1 += 1; + dz_ext1 -= 1; + } + } + else { + zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb; + dz_ext0 = dz0 - 2 * SQUISH_CONSTANT_4D; + dz_ext1 = dz_ext2 = dz0 - 3 * SQUISH_CONSTANT_4D; + } + + if ((c & 0x08) != 0) { + wsv_ext0 = wsv_ext1 = wsb + 1; + wsv_ext2 = wsb + 2; + dw_ext0 = dw0 - 1 - 2 * SQUISH_CONSTANT_4D; + dw_ext1 = dw0 - 1 - 3 * SQUISH_CONSTANT_4D; + dw_ext2 = dw0 - 2 - 3 * SQUISH_CONSTANT_4D; + } + else { + wsv_ext0 = wsv_ext1 = wsv_ext2 = wsb; + dw_ext0 = dw0 - 2 * SQUISH_CONSTANT_4D; + dw_ext1 = dw_ext2 = dw0 - 3 * SQUISH_CONSTANT_4D; + } + } + + // Contribution (1,1,1,0) + double dx4 = dx0 - 1 - 3 * SQUISH_CONSTANT_4D; + double dy4 = dy0 - 1 - 3 * SQUISH_CONSTANT_4D; + double dz4 = dz0 - 1 - 3 * SQUISH_CONSTANT_4D; + double dw4 = dw0 - 3 * SQUISH_CONSTANT_4D; + double attn4 = 2 - dx4 * dx4 - dy4 * dy4 - dz4 * dz4 - dw4 * dw4; + if (attn4 > 0) { + attn4 *= attn4; + value += attn4 * attn4 * extrapolate(xsb + 1, ysb + 1, zsb + 1, wsb + 0, dx4, dy4, dz4, dw4); + } + + // Contribution (1,1,0,1) + double dx3 = dx4; + double dy3 = dy4; + double dz3 = dz0 - 3 * SQUISH_CONSTANT_4D; + double dw3 = dw0 - 1 - 3 * SQUISH_CONSTANT_4D; + double attn3 = 2 - dx3 * dx3 - dy3 * dy3 - dz3 * dz3 - dw3 * dw3; + if (attn3 > 0) { + attn3 *= attn3; + value += attn3 * attn3 * extrapolate(xsb + 1, ysb + 1, zsb + 0, wsb + 1, dx3, dy3, dz3, dw3); + } + + // Contribution (1,0,1,1) + double dx2 = dx4; + double dy2 = dy0 - 3 * SQUISH_CONSTANT_4D; + double dz2 = dz4; + double dw2 = dw3; + double attn2 = 2 - dx2 * dx2 - dy2 * dy2 - dz2 * dz2 - dw2 * dw2; + if (attn2 > 0) { + attn2 *= attn2; + value += attn2 * attn2 * extrapolate(xsb + 1, ysb + 0, zsb + 1, wsb + 1, dx2, dy2, dz2, dw2); + } + + // Contribution (0,1,1,1) + double dx1 = dx0 - 3 * SQUISH_CONSTANT_4D; + double dz1 = dz4; + double dy1 = dy4; + double dw1 = dw3; + double attn1 = 2 - dx1 * dx1 - dy1 * dy1 - dz1 * dz1 - dw1 * dw1; + if (attn1 > 0) { + attn1 *= attn1; + value += attn1 * attn1 * extrapolate(xsb + 0, ysb + 1, zsb + 1, wsb + 1, dx1, dy1, dz1, dw1); + } + + // Contribution (1,1,1,1) + dx0 = dx0 - 1 - 4 * SQUISH_CONSTANT_4D; + dy0 = dy0 - 1 - 4 * SQUISH_CONSTANT_4D; + dz0 = dz0 - 1 - 4 * SQUISH_CONSTANT_4D; + dw0 = dw0 - 1 - 4 * SQUISH_CONSTANT_4D; + double attn0 = 2 - dx0 * dx0 - dy0 * dy0 - dz0 * dz0 - dw0 * dw0; + if (attn0 > 0) { + attn0 *= attn0; + value += attn0 * attn0 * extrapolate(xsb + 1, ysb + 1, zsb + 1, wsb + 1, dx0, dy0, dz0, dw0); + } + } + else if (inSum <= 2) { // We're inside the first dispentachoron + // (Rectified 4-Simplex) + double aScore; + byte aPoint; + boolean aIsBiggerSide = true; + double bScore; + byte bPoint; + boolean bIsBiggerSide = true; + + // Decide between (1,1,0,0) and (0,0,1,1) + if (xins + yins > zins + wins) { + aScore = xins + yins; + aPoint = 0x03; + } + else { + aScore = zins + wins; + aPoint = 0x0C; + } + + // Decide between (1,0,1,0) and (0,1,0,1) + if (xins + zins > yins + wins) { + bScore = xins + zins; + bPoint = 0x05; + } + else { + bScore = yins + wins; + bPoint = 0x0A; + } + + // Closer between (1,0,0,1) and (0,1,1,0) will replace the further + // of a and b, if closer. + if (xins + wins > yins + zins) { + double score = xins + wins; + if (aScore >= bScore && score > bScore) { + bScore = score; + bPoint = 0x09; + } + else if (aScore < bScore && score > aScore) { + aScore = score; + aPoint = 0x09; + } + } + else { + double score = yins + zins; + if (aScore >= bScore && score > bScore) { + bScore = score; + bPoint = 0x06; + } + else if (aScore < bScore && score > aScore) { + aScore = score; + aPoint = 0x06; + } + } + + // Decide if (1,0,0,0) is closer. + double p1 = 2 - inSum + xins; + if (aScore >= bScore && p1 > bScore) { + bScore = p1; + bPoint = 0x01; + bIsBiggerSide = false; + } + else if (aScore < bScore && p1 > aScore) { + aScore = p1; + aPoint = 0x01; + aIsBiggerSide = false; + } + + // Decide if (0,1,0,0) is closer. + double p2 = 2 - inSum + yins; + if (aScore >= bScore && p2 > bScore) { + bScore = p2; + bPoint = 0x02; + bIsBiggerSide = false; + } + else if (aScore < bScore && p2 > aScore) { + aScore = p2; + aPoint = 0x02; + aIsBiggerSide = false; + } + + // Decide if (0,0,1,0) is closer. + double p3 = 2 - inSum + zins; + if (aScore >= bScore && p3 > bScore) { + bScore = p3; + bPoint = 0x04; + bIsBiggerSide = false; + } + else if (aScore < bScore && p3 > aScore) { + aScore = p3; + aPoint = 0x04; + aIsBiggerSide = false; + } + + // Decide if (0,0,0,1) is closer. + double p4 = 2 - inSum + wins; + if (aScore >= bScore && p4 > bScore) { + bScore = p4; + bPoint = 0x08; + bIsBiggerSide = false; + } + else if (aScore < bScore && p4 > aScore) { + aScore = p4; + aPoint = 0x08; + aIsBiggerSide = false; + } + + // Where each of the two closest points are determines how the extra + // three vertices are calculated. + if (aIsBiggerSide == bIsBiggerSide) { + if (aIsBiggerSide) { // Both closest points on the bigger side + byte c1 = (byte) (aPoint | bPoint); + byte c2 = (byte) (aPoint & bPoint); + if ((c1 & 0x01) == 0) { + xsv_ext0 = xsb; + xsv_ext1 = xsb - 1; + dx_ext0 = dx0 - 3 * SQUISH_CONSTANT_4D; + dx_ext1 = dx0 + 1 - 2 * SQUISH_CONSTANT_4D; + } + else { + xsv_ext0 = xsv_ext1 = xsb + 1; + dx_ext0 = dx0 - 1 - 3 * SQUISH_CONSTANT_4D; + dx_ext1 = dx0 - 1 - 2 * SQUISH_CONSTANT_4D; + } + + if ((c1 & 0x02) == 0) { + ysv_ext0 = ysb; + ysv_ext1 = ysb - 1; + dy_ext0 = dy0 - 3 * SQUISH_CONSTANT_4D; + dy_ext1 = dy0 + 1 - 2 * SQUISH_CONSTANT_4D; + } + else { + ysv_ext0 = ysv_ext1 = ysb + 1; + dy_ext0 = dy0 - 1 - 3 * SQUISH_CONSTANT_4D; + dy_ext1 = dy0 - 1 - 2 * SQUISH_CONSTANT_4D; + } + + if ((c1 & 0x04) == 0) { + zsv_ext0 = zsb; + zsv_ext1 = zsb - 1; + dz_ext0 = dz0 - 3 * SQUISH_CONSTANT_4D; + dz_ext1 = dz0 + 1 - 2 * SQUISH_CONSTANT_4D; + } + else { + zsv_ext0 = zsv_ext1 = zsb + 1; + dz_ext0 = dz0 - 1 - 3 * SQUISH_CONSTANT_4D; + dz_ext1 = dz0 - 1 - 2 * SQUISH_CONSTANT_4D; + } + + if ((c1 & 0x08) == 0) { + wsv_ext0 = wsb; + wsv_ext1 = wsb - 1; + dw_ext0 = dw0 - 3 * SQUISH_CONSTANT_4D; + dw_ext1 = dw0 + 1 - 2 * SQUISH_CONSTANT_4D; + } + else { + wsv_ext0 = wsv_ext1 = wsb + 1; + dw_ext0 = dw0 - 1 - 3 * SQUISH_CONSTANT_4D; + dw_ext1 = dw0 - 1 - 2 * SQUISH_CONSTANT_4D; + } + + // One combination is a permutation of (0,0,0,2) based on c2 + xsv_ext2 = xsb; + ysv_ext2 = ysb; + zsv_ext2 = zsb; + wsv_ext2 = wsb; + dx_ext2 = dx0 - 2 * SQUISH_CONSTANT_4D; + dy_ext2 = dy0 - 2 * SQUISH_CONSTANT_4D; + dz_ext2 = dz0 - 2 * SQUISH_CONSTANT_4D; + dw_ext2 = dw0 - 2 * SQUISH_CONSTANT_4D; + if ((c2 & 0x01) != 0) { + xsv_ext2 += 2; + dx_ext2 -= 2; + } + else if ((c2 & 0x02) != 0) { + ysv_ext2 += 2; + dy_ext2 -= 2; + } + else if ((c2 & 0x04) != 0) { + zsv_ext2 += 2; + dz_ext2 -= 2; + } + else { + wsv_ext2 += 2; + dw_ext2 -= 2; + } + + } + else { // Both closest points on the smaller side + // One of the two extra points is (0,0,0,0) + xsv_ext2 = xsb; + ysv_ext2 = ysb; + zsv_ext2 = zsb; + wsv_ext2 = wsb; + dx_ext2 = dx0; + dy_ext2 = dy0; + dz_ext2 = dz0; + dw_ext2 = dw0; + + // Other two points are based on the omitted axes. + byte c = (byte) (aPoint | bPoint); + + if ((c & 0x01) == 0) { + xsv_ext0 = xsb - 1; + xsv_ext1 = xsb; + dx_ext0 = dx0 + 1 - SQUISH_CONSTANT_4D; + dx_ext1 = dx0 - SQUISH_CONSTANT_4D; + } + else { + xsv_ext0 = xsv_ext1 = xsb + 1; + dx_ext0 = dx_ext1 = dx0 - 1 - SQUISH_CONSTANT_4D; + } + + if ((c & 0x02) == 0) { + ysv_ext0 = ysv_ext1 = ysb; + dy_ext0 = dy_ext1 = dy0 - SQUISH_CONSTANT_4D; + if ((c & 0x01) == 0x01) { + ysv_ext0 -= 1; + dy_ext0 += 1; + } + else { + ysv_ext1 -= 1; + dy_ext1 += 1; + } + } + else { + ysv_ext0 = ysv_ext1 = ysb + 1; + dy_ext0 = dy_ext1 = dy0 - 1 - SQUISH_CONSTANT_4D; + } + + if ((c & 0x04) == 0) { + zsv_ext0 = zsv_ext1 = zsb; + dz_ext0 = dz_ext1 = dz0 - SQUISH_CONSTANT_4D; + if ((c & 0x03) == 0x03) { + zsv_ext0 -= 1; + dz_ext0 += 1; + } + else { + zsv_ext1 -= 1; + dz_ext1 += 1; + } + } + else { + zsv_ext0 = zsv_ext1 = zsb + 1; + dz_ext0 = dz_ext1 = dz0 - 1 - SQUISH_CONSTANT_4D; + } + + if ((c & 0x08) == 0) { + wsv_ext0 = wsb; + wsv_ext1 = wsb - 1; + dw_ext0 = dw0 - SQUISH_CONSTANT_4D; + dw_ext1 = dw0 + 1 - SQUISH_CONSTANT_4D; + } + else { + wsv_ext0 = wsv_ext1 = wsb + 1; + dw_ext0 = dw_ext1 = dw0 - 1 - SQUISH_CONSTANT_4D; + } + + } + } + else { // One point on each "side" + byte c1, c2; + if (aIsBiggerSide) { + c1 = aPoint; + c2 = bPoint; + } + else { + c1 = bPoint; + c2 = aPoint; + } + + // Two contributions are the bigger-sided point with each 0 + // replaced with -1. + if ((c1 & 0x01) == 0) { + xsv_ext0 = xsb - 1; + xsv_ext1 = xsb; + dx_ext0 = dx0 + 1 - SQUISH_CONSTANT_4D; + dx_ext1 = dx0 - SQUISH_CONSTANT_4D; + } + else { + xsv_ext0 = xsv_ext1 = xsb + 1; + dx_ext0 = dx_ext1 = dx0 - 1 - SQUISH_CONSTANT_4D; + } + + if ((c1 & 0x02) == 0) { + ysv_ext0 = ysv_ext1 = ysb; + dy_ext0 = dy_ext1 = dy0 - SQUISH_CONSTANT_4D; + if ((c1 & 0x01) == 0x01) { + ysv_ext0 -= 1; + dy_ext0 += 1; + } + else { + ysv_ext1 -= 1; + dy_ext1 += 1; + } + } + else { + ysv_ext0 = ysv_ext1 = ysb + 1; + dy_ext0 = dy_ext1 = dy0 - 1 - SQUISH_CONSTANT_4D; + } + + if ((c1 & 0x04) == 0) { + zsv_ext0 = zsv_ext1 = zsb; + dz_ext0 = dz_ext1 = dz0 - SQUISH_CONSTANT_4D; + if ((c1 & 0x03) == 0x03) { + zsv_ext0 -= 1; + dz_ext0 += 1; + } + else { + zsv_ext1 -= 1; + dz_ext1 += 1; + } + } + else { + zsv_ext0 = zsv_ext1 = zsb + 1; + dz_ext0 = dz_ext1 = dz0 - 1 - SQUISH_CONSTANT_4D; + } + + if ((c1 & 0x08) == 0) { + wsv_ext0 = wsb; + wsv_ext1 = wsb - 1; + dw_ext0 = dw0 - SQUISH_CONSTANT_4D; + dw_ext1 = dw0 + 1 - SQUISH_CONSTANT_4D; + } + else { + wsv_ext0 = wsv_ext1 = wsb + 1; + dw_ext0 = dw_ext1 = dw0 - 1 - SQUISH_CONSTANT_4D; + } + + // One contribution is a permutation of (0,0,0,2) based on the + // smaller-sided point + xsv_ext2 = xsb; + ysv_ext2 = ysb; + zsv_ext2 = zsb; + wsv_ext2 = wsb; + dx_ext2 = dx0 - 2 * SQUISH_CONSTANT_4D; + dy_ext2 = dy0 - 2 * SQUISH_CONSTANT_4D; + dz_ext2 = dz0 - 2 * SQUISH_CONSTANT_4D; + dw_ext2 = dw0 - 2 * SQUISH_CONSTANT_4D; + if ((c2 & 0x01) != 0) { + xsv_ext2 += 2; + dx_ext2 -= 2; + } + else if ((c2 & 0x02) != 0) { + ysv_ext2 += 2; + dy_ext2 -= 2; + } + else if ((c2 & 0x04) != 0) { + zsv_ext2 += 2; + dz_ext2 -= 2; + } + else { + wsv_ext2 += 2; + dw_ext2 -= 2; + } + } + + // Contribution (1,0,0,0) + double dx1 = dx0 - 1 - SQUISH_CONSTANT_4D; + double dy1 = dy0 - 0 - SQUISH_CONSTANT_4D; + double dz1 = dz0 - 0 - SQUISH_CONSTANT_4D; + double dw1 = dw0 - 0 - SQUISH_CONSTANT_4D; + double attn1 = 2 - dx1 * dx1 - dy1 * dy1 - dz1 * dz1 - dw1 * dw1; + if (attn1 > 0) { + attn1 *= attn1; + value += attn1 * attn1 * extrapolate(xsb + 1, ysb + 0, zsb + 0, wsb + 0, dx1, dy1, dz1, dw1); + } + + // Contribution (0,1,0,0) + double dx2 = dx0 - 0 - SQUISH_CONSTANT_4D; + double dy2 = dy0 - 1 - SQUISH_CONSTANT_4D; + double dz2 = dz1; + double dw2 = dw1; + double attn2 = 2 - dx2 * dx2 - dy2 * dy2 - dz2 * dz2 - dw2 * dw2; + if (attn2 > 0) { + attn2 *= attn2; + value += attn2 * attn2 * extrapolate(xsb + 0, ysb + 1, zsb + 0, wsb + 0, dx2, dy2, dz2, dw2); + } + + // Contribution (0,0,1,0) + double dx3 = dx2; + double dy3 = dy1; + double dz3 = dz0 - 1 - SQUISH_CONSTANT_4D; + double dw3 = dw1; + double attn3 = 2 - dx3 * dx3 - dy3 * dy3 - dz3 * dz3 - dw3 * dw3; + if (attn3 > 0) { + attn3 *= attn3; + value += attn3 * attn3 * extrapolate(xsb + 0, ysb + 0, zsb + 1, wsb + 0, dx3, dy3, dz3, dw3); + } + + // Contribution (0,0,0,1) + double dx4 = dx2; + double dy4 = dy1; + double dz4 = dz1; + double dw4 = dw0 - 1 - SQUISH_CONSTANT_4D; + double attn4 = 2 - dx4 * dx4 - dy4 * dy4 - dz4 * dz4 - dw4 * dw4; + if (attn4 > 0) { + attn4 *= attn4; + value += attn4 * attn4 * extrapolate(xsb + 0, ysb + 0, zsb + 0, wsb + 1, dx4, dy4, dz4, dw4); + } + + // Contribution (1,1,0,0) + double dx5 = dx0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dy5 = dy0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dz5 = dz0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dw5 = dw0 - 0 - 2 * SQUISH_CONSTANT_4D; + double attn5 = 2 - dx5 * dx5 - dy5 * dy5 - dz5 * dz5 - dw5 * dw5; + if (attn5 > 0) { + attn5 *= attn5; + value += attn5 * attn5 * extrapolate(xsb + 1, ysb + 1, zsb + 0, wsb + 0, dx5, dy5, dz5, dw5); + } + + // Contribution (1,0,1,0) + double dx6 = dx0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dy6 = dy0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dz6 = dz0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dw6 = dw0 - 0 - 2 * SQUISH_CONSTANT_4D; + double attn6 = 2 - dx6 * dx6 - dy6 * dy6 - dz6 * dz6 - dw6 * dw6; + if (attn6 > 0) { + attn6 *= attn6; + value += attn6 * attn6 * extrapolate(xsb + 1, ysb + 0, zsb + 1, wsb + 0, dx6, dy6, dz6, dw6); + } + + // Contribution (1,0,0,1) + double dx7 = dx0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dy7 = dy0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dz7 = dz0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dw7 = dw0 - 1 - 2 * SQUISH_CONSTANT_4D; + double attn7 = 2 - dx7 * dx7 - dy7 * dy7 - dz7 * dz7 - dw7 * dw7; + if (attn7 > 0) { + attn7 *= attn7; + value += attn7 * attn7 * extrapolate(xsb + 1, ysb + 0, zsb + 0, wsb + 1, dx7, dy7, dz7, dw7); + } + + // Contribution (0,1,1,0) + double dx8 = dx0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dy8 = dy0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dz8 = dz0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dw8 = dw0 - 0 - 2 * SQUISH_CONSTANT_4D; + double attn8 = 2 - dx8 * dx8 - dy8 * dy8 - dz8 * dz8 - dw8 * dw8; + if (attn8 > 0) { + attn8 *= attn8; + value += attn8 * attn8 * extrapolate(xsb + 0, ysb + 1, zsb + 1, wsb + 0, dx8, dy8, dz8, dw8); + } + + // Contribution (0,1,0,1) + double dx9 = dx0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dy9 = dy0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dz9 = dz0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dw9 = dw0 - 1 - 2 * SQUISH_CONSTANT_4D; + double attn9 = 2 - dx9 * dx9 - dy9 * dy9 - dz9 * dz9 - dw9 * dw9; + if (attn9 > 0) { + attn9 *= attn9; + value += attn9 * attn9 * extrapolate(xsb + 0, ysb + 1, zsb + 0, wsb + 1, dx9, dy9, dz9, dw9); + } + + // Contribution (0,0,1,1) + double dx10 = dx0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dy10 = dy0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dz10 = dz0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dw10 = dw0 - 1 - 2 * SQUISH_CONSTANT_4D; + double attn10 = 2 - dx10 * dx10 - dy10 * dy10 - dz10 * dz10 - dw10 * dw10; + if (attn10 > 0) { + attn10 *= attn10; + value += attn10 * attn10 * extrapolate(xsb + 0, ysb + 0, zsb + 1, wsb + 1, dx10, dy10, dz10, dw10); + } + } + else { // We're inside the second dispentachoron (Rectified 4-Simplex) + double aScore; + byte aPoint; + boolean aIsBiggerSide = true; + double bScore; + byte bPoint; + boolean bIsBiggerSide = true; + + // Decide between (0,0,1,1) and (1,1,0,0) + if (xins + yins < zins + wins) { + aScore = xins + yins; + aPoint = 0x0C; + } + else { + aScore = zins + wins; + aPoint = 0x03; + } + + // Decide between (0,1,0,1) and (1,0,1,0) + if (xins + zins < yins + wins) { + bScore = xins + zins; + bPoint = 0x0A; + } + else { + bScore = yins + wins; + bPoint = 0x05; + } + + // Closer between (0,1,1,0) and (1,0,0,1) will replace the further + // of a and b, if closer. + if (xins + wins < yins + zins) { + double score = xins + wins; + if (aScore <= bScore && score < bScore) { + bScore = score; + bPoint = 0x06; + } + else if (aScore > bScore && score < aScore) { + aScore = score; + aPoint = 0x06; + } + } + else { + double score = yins + zins; + if (aScore <= bScore && score < bScore) { + bScore = score; + bPoint = 0x09; + } + else if (aScore > bScore && score < aScore) { + aScore = score; + aPoint = 0x09; + } + } + + // Decide if (0,1,1,1) is closer. + double p1 = 3 - inSum + xins; + if (aScore <= bScore && p1 < bScore) { + bScore = p1; + bPoint = 0x0E; + bIsBiggerSide = false; + } + else if (aScore > bScore && p1 < aScore) { + aScore = p1; + aPoint = 0x0E; + aIsBiggerSide = false; + } + + // Decide if (1,0,1,1) is closer. + double p2 = 3 - inSum + yins; + if (aScore <= bScore && p2 < bScore) { + bScore = p2; + bPoint = 0x0D; + bIsBiggerSide = false; + } + else if (aScore > bScore && p2 < aScore) { + aScore = p2; + aPoint = 0x0D; + aIsBiggerSide = false; + } + + // Decide if (1,1,0,1) is closer. + double p3 = 3 - inSum + zins; + if (aScore <= bScore && p3 < bScore) { + bScore = p3; + bPoint = 0x0B; + bIsBiggerSide = false; + } + else if (aScore > bScore && p3 < aScore) { + aScore = p3; + aPoint = 0x0B; + aIsBiggerSide = false; + } + + // Decide if (1,1,1,0) is closer. + double p4 = 3 - inSum + wins; + if (aScore <= bScore && p4 < bScore) { + bScore = p4; + bPoint = 0x07; + bIsBiggerSide = false; + } + else if (aScore > bScore && p4 < aScore) { + aScore = p4; + aPoint = 0x07; + aIsBiggerSide = false; + } + + // Where each of the two closest points are determines how the extra + // three vertices are calculated. + if (aIsBiggerSide == bIsBiggerSide) { + if (aIsBiggerSide) { // Both closest points on the bigger side + byte c1 = (byte) (aPoint & bPoint); + byte c2 = (byte) (aPoint | bPoint); + + // Two contributions are permutations of (0,0,0,1) and + // (0,0,0,2) based on c1 + xsv_ext0 = xsv_ext1 = xsb; + ysv_ext0 = ysv_ext1 = ysb; + zsv_ext0 = zsv_ext1 = zsb; + wsv_ext0 = wsv_ext1 = wsb; + dx_ext0 = dx0 - SQUISH_CONSTANT_4D; + dy_ext0 = dy0 - SQUISH_CONSTANT_4D; + dz_ext0 = dz0 - SQUISH_CONSTANT_4D; + dw_ext0 = dw0 - SQUISH_CONSTANT_4D; + dx_ext1 = dx0 - 2 * SQUISH_CONSTANT_4D; + dy_ext1 = dy0 - 2 * SQUISH_CONSTANT_4D; + dz_ext1 = dz0 - 2 * SQUISH_CONSTANT_4D; + dw_ext1 = dw0 - 2 * SQUISH_CONSTANT_4D; + if ((c1 & 0x01) != 0) { + xsv_ext0 += 1; + dx_ext0 -= 1; + xsv_ext1 += 2; + dx_ext1 -= 2; + } + else if ((c1 & 0x02) != 0) { + ysv_ext0 += 1; + dy_ext0 -= 1; + ysv_ext1 += 2; + dy_ext1 -= 2; + } + else if ((c1 & 0x04) != 0) { + zsv_ext0 += 1; + dz_ext0 -= 1; + zsv_ext1 += 2; + dz_ext1 -= 2; + } + else { + wsv_ext0 += 1; + dw_ext0 -= 1; + wsv_ext1 += 2; + dw_ext1 -= 2; + } + + // One contribution is a permutation of (1,1,1,-1) based on + // c2 + xsv_ext2 = xsb + 1; + ysv_ext2 = ysb + 1; + zsv_ext2 = zsb + 1; + wsv_ext2 = wsb + 1; + dx_ext2 = dx0 - 1 - 2 * SQUISH_CONSTANT_4D; + dy_ext2 = dy0 - 1 - 2 * SQUISH_CONSTANT_4D; + dz_ext2 = dz0 - 1 - 2 * SQUISH_CONSTANT_4D; + dw_ext2 = dw0 - 1 - 2 * SQUISH_CONSTANT_4D; + if ((c2 & 0x01) == 0) { + xsv_ext2 -= 2; + dx_ext2 += 2; + } + else if ((c2 & 0x02) == 0) { + ysv_ext2 -= 2; + dy_ext2 += 2; + } + else if ((c2 & 0x04) == 0) { + zsv_ext2 -= 2; + dz_ext2 += 2; + } + else { + wsv_ext2 -= 2; + dw_ext2 += 2; + } + } + else { // Both closest points on the smaller side + // One of the two extra points is (1,1,1,1) + xsv_ext2 = xsb + 1; + ysv_ext2 = ysb + 1; + zsv_ext2 = zsb + 1; + wsv_ext2 = wsb + 1; + dx_ext2 = dx0 - 1 - 4 * SQUISH_CONSTANT_4D; + dy_ext2 = dy0 - 1 - 4 * SQUISH_CONSTANT_4D; + dz_ext2 = dz0 - 1 - 4 * SQUISH_CONSTANT_4D; + dw_ext2 = dw0 - 1 - 4 * SQUISH_CONSTANT_4D; + + // Other two points are based on the shared axes. + byte c = (byte) (aPoint & bPoint); + + if ((c & 0x01) != 0) { + xsv_ext0 = xsb + 2; + xsv_ext1 = xsb + 1; + dx_ext0 = dx0 - 2 - 3 * SQUISH_CONSTANT_4D; + dx_ext1 = dx0 - 1 - 3 * SQUISH_CONSTANT_4D; + } + else { + xsv_ext0 = xsv_ext1 = xsb; + dx_ext0 = dx_ext1 = dx0 - 3 * SQUISH_CONSTANT_4D; + } + + if ((c & 0x02) != 0) { + ysv_ext0 = ysv_ext1 = ysb + 1; + dy_ext0 = dy_ext1 = dy0 - 1 - 3 * SQUISH_CONSTANT_4D; + if ((c & 0x01) == 0) { + ysv_ext0 += 1; + dy_ext0 -= 1; + } + else { + ysv_ext1 += 1; + dy_ext1 -= 1; + } + } + else { + ysv_ext0 = ysv_ext1 = ysb; + dy_ext0 = dy_ext1 = dy0 - 3 * SQUISH_CONSTANT_4D; + } + + if ((c & 0x04) != 0) { + zsv_ext0 = zsv_ext1 = zsb + 1; + dz_ext0 = dz_ext1 = dz0 - 1 - 3 * SQUISH_CONSTANT_4D; + if ((c & 0x03) == 0) { + zsv_ext0 += 1; + dz_ext0 -= 1; + } + else { + zsv_ext1 += 1; + dz_ext1 -= 1; + } + } + else { + zsv_ext0 = zsv_ext1 = zsb; + dz_ext0 = dz_ext1 = dz0 - 3 * SQUISH_CONSTANT_4D; + } + + if ((c & 0x08) != 0) { + wsv_ext0 = wsb + 1; + wsv_ext1 = wsb + 2; + dw_ext0 = dw0 - 1 - 3 * SQUISH_CONSTANT_4D; + dw_ext1 = dw0 - 2 - 3 * SQUISH_CONSTANT_4D; + } + else { + wsv_ext0 = wsv_ext1 = wsb; + dw_ext0 = dw_ext1 = dw0 - 3 * SQUISH_CONSTANT_4D; + } + } + } + else { // One point on each "side" + byte c1, c2; + if (aIsBiggerSide) { + c1 = aPoint; + c2 = bPoint; + } + else { + c1 = bPoint; + c2 = aPoint; + } + + // Two contributions are the bigger-sided point with each 1 + // replaced with 2. + if ((c1 & 0x01) != 0) { + xsv_ext0 = xsb + 2; + xsv_ext1 = xsb + 1; + dx_ext0 = dx0 - 2 - 3 * SQUISH_CONSTANT_4D; + dx_ext1 = dx0 - 1 - 3 * SQUISH_CONSTANT_4D; + } + else { + xsv_ext0 = xsv_ext1 = xsb; + dx_ext0 = dx_ext1 = dx0 - 3 * SQUISH_CONSTANT_4D; + } + + if ((c1 & 0x02) != 0) { + ysv_ext0 = ysv_ext1 = ysb + 1; + dy_ext0 = dy_ext1 = dy0 - 1 - 3 * SQUISH_CONSTANT_4D; + if ((c1 & 0x01) == 0) { + ysv_ext0 += 1; + dy_ext0 -= 1; + } + else { + ysv_ext1 += 1; + dy_ext1 -= 1; + } + } + else { + ysv_ext0 = ysv_ext1 = ysb; + dy_ext0 = dy_ext1 = dy0 - 3 * SQUISH_CONSTANT_4D; + } + + if ((c1 & 0x04) != 0) { + zsv_ext0 = zsv_ext1 = zsb + 1; + dz_ext0 = dz_ext1 = dz0 - 1 - 3 * SQUISH_CONSTANT_4D; + if ((c1 & 0x03) == 0) { + zsv_ext0 += 1; + dz_ext0 -= 1; + } + else { + zsv_ext1 += 1; + dz_ext1 -= 1; + } + } + else { + zsv_ext0 = zsv_ext1 = zsb; + dz_ext0 = dz_ext1 = dz0 - 3 * SQUISH_CONSTANT_4D; + } + + if ((c1 & 0x08) != 0) { + wsv_ext0 = wsb + 1; + wsv_ext1 = wsb + 2; + dw_ext0 = dw0 - 1 - 3 * SQUISH_CONSTANT_4D; + dw_ext1 = dw0 - 2 - 3 * SQUISH_CONSTANT_4D; + } + else { + wsv_ext0 = wsv_ext1 = wsb; + dw_ext0 = dw_ext1 = dw0 - 3 * SQUISH_CONSTANT_4D; + } + + // One contribution is a permutation of (1,1,1,-1) based on the + // smaller-sided point + xsv_ext2 = xsb + 1; + ysv_ext2 = ysb + 1; + zsv_ext2 = zsb + 1; + wsv_ext2 = wsb + 1; + dx_ext2 = dx0 - 1 - 2 * SQUISH_CONSTANT_4D; + dy_ext2 = dy0 - 1 - 2 * SQUISH_CONSTANT_4D; + dz_ext2 = dz0 - 1 - 2 * SQUISH_CONSTANT_4D; + dw_ext2 = dw0 - 1 - 2 * SQUISH_CONSTANT_4D; + if ((c2 & 0x01) == 0) { + xsv_ext2 -= 2; + dx_ext2 += 2; + } + else if ((c2 & 0x02) == 0) { + ysv_ext2 -= 2; + dy_ext2 += 2; + } + else if ((c2 & 0x04) == 0) { + zsv_ext2 -= 2; + dz_ext2 += 2; + } + else { + wsv_ext2 -= 2; + dw_ext2 += 2; + } + } + + // Contribution (1,1,1,0) + double dx4 = dx0 - 1 - 3 * SQUISH_CONSTANT_4D; + double dy4 = dy0 - 1 - 3 * SQUISH_CONSTANT_4D; + double dz4 = dz0 - 1 - 3 * SQUISH_CONSTANT_4D; + double dw4 = dw0 - 3 * SQUISH_CONSTANT_4D; + double attn4 = 2 - dx4 * dx4 - dy4 * dy4 - dz4 * dz4 - dw4 * dw4; + if (attn4 > 0) { + attn4 *= attn4; + value += attn4 * attn4 * extrapolate(xsb + 1, ysb + 1, zsb + 1, wsb + 0, dx4, dy4, dz4, dw4); + } + + // Contribution (1,1,0,1) + double dx3 = dx4; + double dy3 = dy4; + double dz3 = dz0 - 3 * SQUISH_CONSTANT_4D; + double dw3 = dw0 - 1 - 3 * SQUISH_CONSTANT_4D; + double attn3 = 2 - dx3 * dx3 - dy3 * dy3 - dz3 * dz3 - dw3 * dw3; + if (attn3 > 0) { + attn3 *= attn3; + value += attn3 * attn3 * extrapolate(xsb + 1, ysb + 1, zsb + 0, wsb + 1, dx3, dy3, dz3, dw3); + } + + // Contribution (1,0,1,1) + double dx2 = dx4; + double dy2 = dy0 - 3 * SQUISH_CONSTANT_4D; + double dz2 = dz4; + double dw2 = dw3; + double attn2 = 2 - dx2 * dx2 - dy2 * dy2 - dz2 * dz2 - dw2 * dw2; + if (attn2 > 0) { + attn2 *= attn2; + value += attn2 * attn2 * extrapolate(xsb + 1, ysb + 0, zsb + 1, wsb + 1, dx2, dy2, dz2, dw2); + } + + // Contribution (0,1,1,1) + double dx1 = dx0 - 3 * SQUISH_CONSTANT_4D; + double dz1 = dz4; + double dy1 = dy4; + double dw1 = dw3; + double attn1 = 2 - dx1 * dx1 - dy1 * dy1 - dz1 * dz1 - dw1 * dw1; + if (attn1 > 0) { + attn1 *= attn1; + value += attn1 * attn1 * extrapolate(xsb + 0, ysb + 1, zsb + 1, wsb + 1, dx1, dy1, dz1, dw1); + } + + // Contribution (1,1,0,0) + double dx5 = dx0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dy5 = dy0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dz5 = dz0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dw5 = dw0 - 0 - 2 * SQUISH_CONSTANT_4D; + double attn5 = 2 - dx5 * dx5 - dy5 * dy5 - dz5 * dz5 - dw5 * dw5; + if (attn5 > 0) { + attn5 *= attn5; + value += attn5 * attn5 * extrapolate(xsb + 1, ysb + 1, zsb + 0, wsb + 0, dx5, dy5, dz5, dw5); + } + + // Contribution (1,0,1,0) + double dx6 = dx0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dy6 = dy0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dz6 = dz0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dw6 = dw0 - 0 - 2 * SQUISH_CONSTANT_4D; + double attn6 = 2 - dx6 * dx6 - dy6 * dy6 - dz6 * dz6 - dw6 * dw6; + if (attn6 > 0) { + attn6 *= attn6; + value += attn6 * attn6 * extrapolate(xsb + 1, ysb + 0, zsb + 1, wsb + 0, dx6, dy6, dz6, dw6); + } + + // Contribution (1,0,0,1) + double dx7 = dx0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dy7 = dy0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dz7 = dz0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dw7 = dw0 - 1 - 2 * SQUISH_CONSTANT_4D; + double attn7 = 2 - dx7 * dx7 - dy7 * dy7 - dz7 * dz7 - dw7 * dw7; + if (attn7 > 0) { + attn7 *= attn7; + value += attn7 * attn7 * extrapolate(xsb + 1, ysb + 0, zsb + 0, wsb + 1, dx7, dy7, dz7, dw7); + } + + // Contribution (0,1,1,0) + double dx8 = dx0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dy8 = dy0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dz8 = dz0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dw8 = dw0 - 0 - 2 * SQUISH_CONSTANT_4D; + double attn8 = 2 - dx8 * dx8 - dy8 * dy8 - dz8 * dz8 - dw8 * dw8; + if (attn8 > 0) { + attn8 *= attn8; + value += attn8 * attn8 * extrapolate(xsb + 0, ysb + 1, zsb + 1, wsb + 0, dx8, dy8, dz8, dw8); + } + + // Contribution (0,1,0,1) + double dx9 = dx0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dy9 = dy0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dz9 = dz0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dw9 = dw0 - 1 - 2 * SQUISH_CONSTANT_4D; + double attn9 = 2 - dx9 * dx9 - dy9 * dy9 - dz9 * dz9 - dw9 * dw9; + if (attn9 > 0) { + attn9 *= attn9; + value += attn9 * attn9 * extrapolate(xsb + 0, ysb + 1, zsb + 0, wsb + 1, dx9, dy9, dz9, dw9); + } + + // Contribution (0,0,1,1) + double dx10 = dx0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dy10 = dy0 - 0 - 2 * SQUISH_CONSTANT_4D; + double dz10 = dz0 - 1 - 2 * SQUISH_CONSTANT_4D; + double dw10 = dw0 - 1 - 2 * SQUISH_CONSTANT_4D; + double attn10 = 2 - dx10 * dx10 - dy10 * dy10 - dz10 * dz10 - dw10 * dw10; + if (attn10 > 0) { + attn10 *= attn10; + value += attn10 * attn10 * extrapolate(xsb + 0, ysb + 0, zsb + 1, wsb + 1, dx10, dy10, dz10, dw10); + } + } + + // First extra vertex + double attn_ext0 = 2 - dx_ext0 * dx_ext0 - dy_ext0 * dy_ext0 - dz_ext0 * dz_ext0 - dw_ext0 * dw_ext0; + if (attn_ext0 > 0) { + attn_ext0 *= attn_ext0; + value += attn_ext0 * attn_ext0 + * extrapolate(xsv_ext0, ysv_ext0, zsv_ext0, wsv_ext0, dx_ext0, dy_ext0, dz_ext0, dw_ext0); + } + + // Second extra vertex + double attn_ext1 = 2 - dx_ext1 * dx_ext1 - dy_ext1 * dy_ext1 - dz_ext1 * dz_ext1 - dw_ext1 * dw_ext1; + if (attn_ext1 > 0) { + attn_ext1 *= attn_ext1; + value += attn_ext1 * attn_ext1 + * extrapolate(xsv_ext1, ysv_ext1, zsv_ext1, wsv_ext1, dx_ext1, dy_ext1, dz_ext1, dw_ext1); + } + + // Third extra vertex + double attn_ext2 = 2 - dx_ext2 * dx_ext2 - dy_ext2 * dy_ext2 - dz_ext2 * dz_ext2 - dw_ext2 * dw_ext2; + if (attn_ext2 > 0) { + attn_ext2 *= attn_ext2; + value += attn_ext2 * attn_ext2 + * extrapolate(xsv_ext2, ysv_ext2, zsv_ext2, wsv_ext2, dx_ext2, dy_ext2, dz_ext2, dw_ext2); + } + + return value / NORM_CONSTANT_4D; + } + + private double extrapolate(int xsb, int ysb, double dx, double dy) { + int index = perm[(perm[xsb & 0xFF] + ysb) & 0xFF] & 0x0E; + return gradients2D[index] * dx + gradients2D[index + 1] * dy; + } + + private double extrapolate(int xsb, int ysb, int zsb, double dx, double dy, double dz) { + int index = permGradIndex3D[(perm[(perm[xsb & 0xFF] + ysb) & 0xFF] + zsb) & 0xFF]; + return gradients3D[index] * dx + gradients3D[index + 1] * dy + gradients3D[index + 2] * dz; + } + + private double extrapolate(int xsb, int ysb, int zsb, int wsb, double dx, double dy, double dz, double dw) { + int index = perm[(perm[(perm[(perm[xsb & 0xFF] + ysb) & 0xFF] + zsb) & 0xFF] + wsb) & 0xFF] & 0xFC; + return gradients4D[index] * dx + gradients4D[index + 1] * dy + gradients4D[index + 2] * dz + + gradients4D[index + 3] * dw; + } + + private static int fastFloor(double x) { + int xi = (int) x; + return x < xi ? xi - 1 : xi; + } + + // Gradients for 2D. They approximate the directions to the + // vertices of an octagon from the center. + private static byte[] gradients2D = new byte[] { 5, 2, 2, 5, -5, 2, -2, 5, 5, -2, 2, -5, -5, -2, -2, -5, }; + + // Gradients for 3D. They approximate the directions to the + // vertices of a rhombicuboctahedron from the center, skewed so + // that the triangular and square facets can be inscribed inside + // circles of the same radius. + private static byte[] gradients3D = new byte[] { -11, 4, 4, -4, 11, 4, -4, 4, 11, 11, 4, 4, 4, 11, 4, 4, 4, 11, -11, + -4, 4, -4, -11, 4, -4, -4, 11, 11, -4, 4, 4, -11, 4, 4, -4, 11, -11, 4, -4, -4, 11, -4, -4, 4, -11, 11, 4, + -4, 4, 11, -4, 4, 4, -11, -11, -4, -4, -4, -11, -4, -4, -4, -11, 11, -4, -4, 4, -11, -4, 4, -4, -11, }; + + // Gradients for 4D. They approximate the directions to the + // vertices of a disprismatotesseractihexadecachoron from the center, + // skewed so that the tetrahedral and cubic facets can be inscribed inside + // spheres of the same radius. + private static byte[] gradients4D = new byte[] { 3, 1, 1, 1, 1, 3, 1, 1, 1, 1, 3, 1, 1, 1, 1, 3, -3, 1, 1, 1, -1, 3, + 1, 1, -1, 1, 3, 1, -1, 1, 1, 3, 3, -1, 1, 1, 1, -3, 1, 1, 1, -1, 3, 1, 1, -1, 1, 3, -3, -1, 1, 1, -1, -3, 1, + 1, -1, -1, 3, 1, -1, -1, 1, 3, 3, 1, -1, 1, 1, 3, -1, 1, 1, 1, -3, 1, 1, 1, -1, 3, -3, 1, -1, 1, -1, 3, -1, + 1, -1, 1, -3, 1, -1, 1, -1, 3, 3, -1, -1, 1, 1, -3, -1, 1, 1, -1, -3, 1, 1, -1, -1, 3, -3, -1, -1, 1, -1, + -3, -1, 1, -1, -1, -3, 1, -1, -1, -1, 3, 3, 1, 1, -1, 1, 3, 1, -1, 1, 1, 3, -1, 1, 1, 1, -3, -3, 1, 1, -1, + -1, 3, 1, -1, -1, 1, 3, -1, -1, 1, 1, -3, 3, -1, 1, -1, 1, -3, 1, -1, 1, -1, 3, -1, 1, -1, 1, -3, -3, -1, 1, + -1, -1, -3, 1, -1, -1, -1, 3, -1, -1, -1, 1, -3, 3, 1, -1, -1, 1, 3, -1, -1, 1, 1, -3, -1, 1, 1, -1, -3, -3, + 1, -1, -1, -1, 3, -1, -1, -1, 1, -3, -1, -1, 1, -1, -3, 3, -1, -1, -1, 1, -3, -1, -1, 1, -1, -3, -1, 1, -1, + -1, -3, -3, -1, -1, -1, -1, -3, -1, -1, -1, -1, -3, -1, -1, -1, -1, -3, }; +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/recipes/BNRecipeManager.java b/src/main/java/redd90/betternether/recipes/BNRecipeManager.java new file mode 100644 index 0000000..483792f --- /dev/null +++ b/src/main/java/redd90/betternether/recipes/BNRecipeManager.java @@ -0,0 +1,115 @@ +package redd90.betternether.recipes; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +import com.google.common.collect.Maps; +import com.google.common.collect.Sets; +import com.google.gson.JsonSyntaxException; + +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.item.crafting.IRecipe; +import net.minecraft.item.crafting.IRecipeType; +import net.minecraft.item.crafting.Ingredient; +import net.minecraft.item.crafting.ShapedRecipe; +import net.minecraft.item.crafting.ShapelessRecipe; +import net.minecraft.util.NonNullList; +import net.minecraft.util.ResourceLocation; +import redd90.betternether.BetterNether; +import redd90.betternether.config.Configs; + + +public class BNRecipeManager { + private static final Map, Map>> RECIPES = Maps.newHashMap(); + + public static void addRecipe(IRecipeType type, IRecipe recipe) { + if (Configs.RECIPES.getBoolean("recipes", recipe.getId().getPath(), true)) { + Map> list = RECIPES.get(type); + if (list == null) { + list = Maps.newHashMap(); + RECIPES.put(type, list); + } + list.put(recipe.getId(), recipe); + } + } + + public static Map, Map>> getMap(Map, Map>> recipes) { + Map, Map>> result = Maps.newHashMap(); + + for (IRecipeType type : recipes.keySet()) { + Map> typeList = Maps.newHashMap(); + typeList.putAll(recipes.get(type)); + result.put(type, typeList); + } + + for (IRecipeType type : RECIPES.keySet()) { + Map> list = RECIPES.get(type); + if (list != null) { + Map> typeList = result.get(type); + list.forEach((id, recipe) -> { + if (!typeList.containsKey(id)) + typeList.put(id, recipe); + }); + } + } + + return result; + } + + public static NonNullList getIngredients(String[] pattern, Map key, int width, int height) { + NonNullList defaultedList = NonNullList.withSize(width * height, Ingredient.EMPTY); + Set set = Sets.newHashSet(key.keySet()); + set.remove(" "); + + for (int i = 0; i < pattern.length; ++i) { + for (int j = 0; j < pattern[i].length(); ++j) { + String string = pattern[i].substring(j, j + 1); + Ingredient ingredient = (Ingredient) key.get(string); + if (ingredient == null) { + throw new JsonSyntaxException("Pattern references symbol '" + string + "' but it's not defined in the key"); + } + + set.remove(string); + defaultedList.set(j + width * i, ingredient); + } + } + + if (!set.isEmpty()) { + throw new JsonSyntaxException("Key defines symbols that aren't used in pattern: " + set); + } + else { + return defaultedList; + } + } + + public static void addCraftingRecipe(String name, String[] shape, Map materials, ItemStack result) { + addCraftingRecipe(name, "", shape, materials, result); + } + + public static void addCraftingRecipe(String name, String group, String[] shape, Map materials, ItemStack result) { + int width = shape[0].length(); + int height = shape.length; + + Map mapIng = new HashMap(); + mapIng.put(" ", Ingredient.EMPTY); + materials.forEach((id, material) -> { + mapIng.put(id, fromStacks(material)); + }); + + NonNullList list = BNRecipeManager.getIngredients(shape, mapIng, width, height); + ShapedRecipe recipe = new ShapedRecipe(new ResourceLocation(BetterNether.MOD_ID, name), group, width, height, list, result); + BNRecipeManager.addRecipe(IRecipeType.CRAFTING, recipe); + } + + private static Ingredient fromStacks(ItemStack... stacks) { + return Ingredient.fromStacks(Arrays.stream(stacks)); + } + + public static ShapelessRecipe makeEmtyRecipe(ResourceLocation id) { + ShapelessRecipe recipe = new ShapelessRecipe(id, "empty", new ItemStack(Items.AIR), NonNullList.create()); + return recipe; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/recipes/ItemRecipes.java b/src/main/java/redd90/betternether/recipes/ItemRecipes.java new file mode 100644 index 0000000..9720438 --- /dev/null +++ b/src/main/java/redd90/betternether/recipes/ItemRecipes.java @@ -0,0 +1,67 @@ +package redd90.betternether.recipes; + +import com.google.common.collect.ImmutableMap; + +import net.minecraft.block.Block; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraftforge.registries.ForgeRegistries; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.ItemsRegistry; + +public class ItemRecipes { + public static void register() { + if (itemExists(ItemsRegistry.GLOWSTONE_PILE)) { + String[] shape = new String[] { "###", "###", "###" }; + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(ItemsRegistry.GLOWSTONE_PILE)); + BNRecipeManager.addCraftingRecipe("bn_glowstone_dust", "", shape, materials, new ItemStack(Items.GLOWSTONE_DUST)); + } + + if (itemExists(ItemsRegistry.CINCINNASITE_INGOT) && blockExists(BlocksRegistry.CINCINNASITE_CHAIN)) { + String[] shape = new String[] { "#", "#", "#" }; + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(ItemsRegistry.CINCINNASITE_INGOT)); + BNRecipeManager.addCraftingRecipe("cincinnasite_chains", "", shape, materials, new ItemStack(BlocksRegistry.CINCINNASITE_CHAIN, 3)); + } + + if (itemExists(ItemsRegistry.LAPIS_PILE)) { + String[] shape = new String[] { "###", "###", "###" }; + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(ItemsRegistry.LAPIS_PILE)); + BNRecipeManager.addCraftingRecipe("glowstone_pile_to_dust", "", shape, materials, new ItemStack(Items.LAPIS_LAZULI)); + } + + if (blockExists(BlocksRegistry.BLOOMING_VINE)) { + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(BlocksRegistry.BLOOMING_VINE)); + BNRecipeManager.addCraftingRecipe("bn_yellow_dye", "", new String[] { "#" }, materials, new ItemStack(Items.YELLOW_DYE, 2)); + } + + if (blockExists(BlocksRegistry.GOLDEN_VINE) && itemExists(ItemsRegistry.GLOWSTONE_PILE)) { + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(BlocksRegistry.GOLDEN_VINE)); + BNRecipeManager.addCraftingRecipe("bn_golden_vine", "", new String[] { "#" }, materials, new ItemStack(ItemsRegistry.GLOWSTONE_PILE, 2)); + } + + if (blockExists(BlocksRegistry.WALL_MUSHROOM_BROWN)) { + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(BlocksRegistry.WALL_MUSHROOM_BROWN)); + BNRecipeManager.addCraftingRecipe("wall_mushroom_brown_1", "wall_mushroom", new String[] { "#" }, materials, new ItemStack(Items.BROWN_MUSHROOM)); + + materials = ImmutableMap.of("#", new ItemStack(Items.BROWN_MUSHROOM)); + BNRecipeManager.addCraftingRecipe("wall_mushroom_brown_2", "wall_mushroom", new String[] { "#" }, materials, new ItemStack(BlocksRegistry.WALL_MUSHROOM_BROWN)); + } + + if (blockExists(BlocksRegistry.WALL_MUSHROOM_RED)) { + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(BlocksRegistry.WALL_MUSHROOM_RED)); + BNRecipeManager.addCraftingRecipe("wall_mushroom_red_1", "wall_mushroom", new String[] { "#" }, materials, new ItemStack(Items.RED_MUSHROOM)); + + materials = ImmutableMap.of("#", new ItemStack(Items.RED_MUSHROOM)); + BNRecipeManager.addCraftingRecipe("wall_mushroom_red_2", "wall_mushroom", new String[] { "#" }, materials, new ItemStack(BlocksRegistry.WALL_MUSHROOM_RED)); + } + } + + private static boolean itemExists(Item item) { + return ForgeRegistries.ITEMS.getKey(item) != ForgeRegistries.ITEMS.getDefaultKey(); + } + + private static boolean blockExists(Block block) { + return ForgeRegistries.BLOCKS.getKey(block) != ForgeRegistries.BLOCKS.getDefaultKey(); + } +} diff --git a/src/main/java/redd90/betternether/recipes/RecipesHelper.java b/src/main/java/redd90/betternether/recipes/RecipesHelper.java new file mode 100644 index 0000000..d891a86 --- /dev/null +++ b/src/main/java/redd90/betternether/recipes/RecipesHelper.java @@ -0,0 +1,176 @@ +package redd90.betternether.recipes; + +import com.google.common.collect.ImmutableMap; + +import net.minecraft.block.Block; +import net.minecraft.block.SoundType; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraftforge.registries.ForgeRegistries; + + +public class RecipesHelper { + private static final String[] SHAPE_ROOF = new String[] { "# #", "###", " # " }; + private static final String[] SHAPE_STAIR = new String[] { "# ", "## ", "###" }; + private static final String[] SHAPE_SLAB = new String[] { "###" }; + private static final String[] SHAPE_BUTTON = new String[] { "#" }; + private static final String[] SHAPE_PLATE = new String[] { "##" }; + private static final String[] SHAPE_X2 = new String[] { "##", "##" }; + private static final String[] SHAPE_FG = new String[] { "#I#", "#I#" }; + private static final String[] SHAPE_2X3 = new String[] { "##", "##", "##" }; + private static final String[] SHAPE_3X2 = new String[] { "###", "###" }; + private static final String[] SHAPE_COLORING = new String[] { "###", "#I#", "###" }; + private static final String[] SHAPE_ROUND = new String[] { "###", "# #", "###" }; + private static final String[] SHAPE_SIGN = new String[] { "###", "###", " I " }; + private static final String[] SHAPE_BARREL = new String[] { "#S#", "# #", "#S#" }; + private static final String[] SHAPE_LADDER = new String[] { "I I", "I#I", "I I" }; + private static final String[] SHAPE_TABURET = new String[] { "##", "II" }; + private static final String[] SHAPE_CHAIR = new String[] { "I ", "##", "II" }; + private static final String[] SHAPE_BAR_STOOL = new String[] { "##", "II", "II" }; + private static final String[] SHAPE_FIRE_BOWL = new String[] { "#I#", " # ", "L L" }; + + private static void makeSingleRecipe(String group, Block source, Block result, String[] shape, int count) { + if (ForgeRegistries.BLOCKS.getKey(source) != ForgeRegistries.BLOCKS.getDefaultKey()) { + String name = ForgeRegistries.BLOCKS.getKey(source).getPath() + "_" + ForgeRegistries.BLOCKS.getKey(result).getPath(); + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(source)); + BNRecipeManager.addCraftingRecipe(name, group, shape, materials, new ItemStack(result, count)); + } + } + + public static void makeRoofRecipe(Block source, Block roof) { + makeSingleRecipe("roof_tile", source, roof, SHAPE_ROOF, 6); + } + + public static void makeStairsRecipe(Block source, Block stairs) { + String group = ForgeRegistries.BLOCKS.getKey(stairs).getPath().contains("roof_tile") ? "roof_tile_stairs" : stairs.getSoundType(stairs.getDefaultState()) == SoundType.WOOD ? "nether_wooden_stairs" : "nether_rock_stairs"; + makeSingleRecipe(group, source, stairs, SHAPE_STAIR, 4); + } + + public static void makeSlabRecipe(Block source, Block slab) { + String group = ForgeRegistries.BLOCKS.getKey(slab).getPath().contains("roof_tile") ? "roof_tile_slab" : slab.getSoundType(slab.getDefaultState()) == SoundType.WOOD ? "nether_wooden_slab" : "nether_rock_slab"; + makeSingleRecipe(group, source, slab, SHAPE_SLAB, 6); + } + + public static void makeButtonRecipe(Block source, Block button) { + String group = button.getSoundType(button.getDefaultState()) == SoundType.WOOD ? "nether_wooden_button" : "nether_rock_button"; + makeSingleRecipe(group, source, button, SHAPE_BUTTON, 1); + } + + public static void makePlateRecipe(Block source, Block plate) { + String group = plate.getSoundType(plate.getDefaultState()) == SoundType.WOOD ? "nether_wooden_plate" : "nether_rock_plate"; + makeSingleRecipe(group, source, plate, SHAPE_PLATE, 1); + } + + public static void makeSimpleRecipe(Block source, Block result, int count, String group) { + makeSingleRecipe(group, source, result, SHAPE_BUTTON, count); + } + + public static void makeSimpleRecipe2(Block source, Block result, int count, String group) { + makeSingleRecipe(group, source, result, SHAPE_X2, count); + } + + public static void makeFenceRecipe(Block source, Block fence) { + if (ForgeRegistries.BLOCKS.getKey(source) != ForgeRegistries.BLOCKS.getDefaultKey()) { + String name = ForgeRegistries.BLOCKS.getKey(fence).getPath(); + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(source), "I", new ItemStack(Items.STICK)); + BNRecipeManager.addCraftingRecipe(name, "nether_fence", SHAPE_FG, materials, new ItemStack(fence, 3)); + } + } + + public static void makeGateRecipe(Block source, Block gate) { + if (ForgeRegistries.BLOCKS.getKey(source) != ForgeRegistries.BLOCKS.getDefaultKey()) { + String name = ForgeRegistries.BLOCKS.getKey(gate).getPath(); + ImmutableMap materials = ImmutableMap.of("I", new ItemStack(source), "#", new ItemStack(Items.STICK)); + BNRecipeManager.addCraftingRecipe(name, "nether_gate", SHAPE_FG, materials, new ItemStack(gate)); + } + } + + public static void makeDoorRecipe(Block source, Block result) { + makeSingleRecipe("nether_door", source, result, SHAPE_2X3, 3); + } + + public static void makeTrapdoorRecipe(Block source, Block result) { + makeSingleRecipe("nether_trapdoor", source, result, SHAPE_3X2, 2); + } + + public static void makeWallRecipe(Block source, Block wall) { + if (ForgeRegistries.BLOCKS.getKey(source) != ForgeRegistries.BLOCKS.getDefaultKey()) { + String name = ForgeRegistries.BLOCKS.getKey(wall).getPath(); + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(source)); + BNRecipeManager.addCraftingRecipe(name, "nether_wall", SHAPE_3X2, materials, new ItemStack(wall, 6)); + } + } + + public static void makeColoringRecipe(Block source, Block result, Item dye, String group) { + if (ForgeRegistries.BLOCKS.getKey(source) != ForgeRegistries.BLOCKS.getDefaultKey()) { + String name = ForgeRegistries.BLOCKS.getKey(result).getPath(); + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(source), "I", new ItemStack(dye)); + BNRecipeManager.addCraftingRecipe(name, group, SHAPE_COLORING, materials, new ItemStack(result, 8)); + } + } + + public static void makeRoundRecipe(Block source, Block result, String group) { + if (ForgeRegistries.BLOCKS.getKey(source) != ForgeRegistries.BLOCKS.getDefaultKey()) { + String name = ForgeRegistries.BLOCKS.getKey(result).getPath(); + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(source)); + BNRecipeManager.addCraftingRecipe(name, group, SHAPE_ROUND, materials, new ItemStack(result)); + } + } + + public static void makeSignRecipe(Block source, Block result) { + if (ForgeRegistries.BLOCKS.getKey(source) != ForgeRegistries.BLOCKS.getDefaultKey()) { + String name = ForgeRegistries.BLOCKS.getKey(result).getPath(); + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(source), "I", new ItemStack(Items.STICK)); + BNRecipeManager.addCraftingRecipe(name, "nether_sign", SHAPE_SIGN, materials, new ItemStack(result, 3)); + } + } + + public static void makeBarrelRecipe(Block source, Block slab, Block result) { + if (ForgeRegistries.BLOCKS.getKey(source) != ForgeRegistries.BLOCKS.getDefaultKey()) { + String name = ForgeRegistries.BLOCKS.getKey(result).getPath(); + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(source), "S", new ItemStack(slab)); + BNRecipeManager.addCraftingRecipe(name, "nether_barrel", SHAPE_BARREL, materials, new ItemStack(result)); + } + } + + public static void makeLadderRecipe(Block source, Block result) { + if (ForgeRegistries.BLOCKS.getKey(source) != ForgeRegistries.BLOCKS.getDefaultKey()) { + String name = ForgeRegistries.BLOCKS.getKey(result).getPath(); + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(source), "I", new ItemStack(Items.STICK)); + BNRecipeManager.addCraftingRecipe(name, "nether_ladder", SHAPE_LADDER, materials, new ItemStack(result, 3)); + } + } + + public static void makeTaburetRecipe(Block source, Block result) { + if (ForgeRegistries.BLOCKS.getKey(source) != ForgeRegistries.BLOCKS.getDefaultKey()) { + String name = ForgeRegistries.BLOCKS.getKey(result).getPath(); + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(source), "I", new ItemStack(Items.STICK)); + BNRecipeManager.addCraftingRecipe(name, "nether_ladder", SHAPE_TABURET, materials, new ItemStack(result)); + } + } + + public static void makeChairRecipe(Block source, Block result) { + if (ForgeRegistries.BLOCKS.getKey(source) != ForgeRegistries.BLOCKS.getDefaultKey()) { + String name = ForgeRegistries.BLOCKS.getKey(result).getPath(); + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(source), "I", new ItemStack(Items.STICK)); + BNRecipeManager.addCraftingRecipe(name, "nether_ladder", SHAPE_CHAIR, materials, new ItemStack(result)); + } + } + + public static void makeBarStoolRecipe(Block source, Block result) { + if (ForgeRegistries.BLOCKS.getKey(source) != ForgeRegistries.BLOCKS.getDefaultKey()) { + String name = ForgeRegistries.BLOCKS.getKey(result).getPath(); + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(source), "I", new ItemStack(Items.STICK)); + BNRecipeManager.addCraftingRecipe(name, "nether_ladder", SHAPE_BAR_STOOL, materials, new ItemStack(result)); + } + } + + public static void makeFireBowlRecipe(Block material, Block inside, Item leg, Block result) { + if (ForgeRegistries.BLOCKS.getKey(material) != ForgeRegistries.BLOCKS.getDefaultKey() && ForgeRegistries.BLOCKS.getKey(inside) != ForgeRegistries.BLOCKS.getDefaultKey() && ForgeRegistries.ITEMS.getKey(leg) != ForgeRegistries.ITEMS.getDefaultKey()) { + String name = ForgeRegistries.BLOCKS.getKey(result).getPath(); + ImmutableMap materials = ImmutableMap.of("#", new ItemStack(material), "I", new ItemStack(inside), "L", new ItemStack(leg)); + BNRecipeManager.addCraftingRecipe(name, "fire_bowl", SHAPE_FIRE_BOWL, materials, new ItemStack(result)); + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/registry/BlocksRegistry.java b/src/main/java/redd90/betternether/registry/BlocksRegistry.java new file mode 100644 index 0000000..6146df9 --- /dev/null +++ b/src/main/java/redd90/betternether/registry/BlocksRegistry.java @@ -0,0 +1,815 @@ +package redd90.betternether.registry; + +import java.util.ArrayList; +import java.util.List; + +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.Blocks; +import net.minecraft.block.PressurePlateBlock.Sensitivity; +import net.minecraft.block.material.MaterialColor; +import net.minecraft.item.BlockItem; +import net.minecraft.item.Item; +import net.minecraft.item.Items; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.event.RegistryEvent; +import net.minecraftforge.registries.IForgeRegistry; +import redd90.betternether.BetterNether; +import redd90.betternether.blocks.*; +import redd90.betternether.blocks.complex.ColoredGlassMaterial; +import redd90.betternether.blocks.complex.WoodenMaterial; +import redd90.betternether.config.Configs; +import redd90.betternether.datagen.BNRecipes; +import redd90.betternether.structures.plants.StructureGoldenLumabusVine; +import redd90.betternether.structures.plants.StructureLumabusVine; +import redd90.betternether.tab.CreativeTab; + +public class BlocksRegistry { + + public static final List BLOCKS = new ArrayList<>(); + + // Stalagnate // + public static final Block STALAGNATE = registerBlockNI("stalagnate", new BlockStalagnate()); + public static final Block STALAGNATE_STEM = registerBlock("stalagnate_stem", new BlockStem(MaterialColor.LIME_TERRACOTTA)); + public static final Block STALAGNATE_SEED = registerBlock("stalagnate_seed", new BlockStalagnateSeed()); + public static final Block STRIPED_LOG_STALAGNATE = registerBlock("striped_log_stalagnate", new BNPillar(MaterialColor.LIME_TERRACOTTA)); + public static final Block STRIPED_BARK_STALAGNATE = registerBlock("striped_bark_stalagnate", new BNPillar(MaterialColor.LIME_TERRACOTTA)); + public static final Block STALAGNATE_LOG = registerLog("stalagnate_log", new BNLogStripable(MaterialColor.LIME_TERRACOTTA, STRIPED_LOG_STALAGNATE), STALAGNATE_STEM); + public static final Block STALAGNATE_BARK = registerBark("stalagnate_bark", new BNLogStripable(MaterialColor.LIME_TERRACOTTA, STRIPED_BARK_STALAGNATE), STALAGNATE_LOG); + public static final Block STALAGNATE_PLANKS = registerPlanks("stalagnate_planks", new BNPlanks(MaterialColor.LIME_TERRACOTTA), 1, STALAGNATE_STEM, STALAGNATE_LOG, STALAGNATE_BARK, STRIPED_LOG_STALAGNATE, STRIPED_BARK_STALAGNATE); + public static final Block STALAGNATE_STAIRS = registerStairs("stalagnate_planks_stairs", STALAGNATE_PLANKS); + public static final Block STALAGNATE_SLAB = registerSlab("stalagnate_planks_slab", STALAGNATE_PLANKS); + public static final Block STALAGNATE_FENCE = registerFence("stalagnate_planks_fence", STALAGNATE_PLANKS); + public static final Block STALAGNATE_GATE = registerGate("stalagnate_planks_gate", STALAGNATE_PLANKS); + public static final Block STALAGNATE_BUTTON = registerButton("stalagnate_planks_button", STALAGNATE_PLANKS); + public static final Block STALAGNATE_PLATE = registerPlate("stalagnate_planks_plate", STALAGNATE_PLANKS); + public static final Block STALAGNATE_TRAPDOOR = registerTrapdoor("stalagnate_planks_trapdoor", STALAGNATE_PLANKS); + public static final Block STALAGNATE_DOOR = registerDoor("stalagnate_planks_door", STALAGNATE_PLANKS); + public static final Block STALAGNATE_BOWL = registerBlockNI("stalagnate_bowl", new BlockStalagnateBowl()); + + // Reed // + public static final Block NETHER_REED = registerBlock("nether_reed", new BlockNetherReed()); + public static final Block REEDS_BLOCK = registerBlock("reeds_block", new BlockReedsBlock()); + public static final Block REEDS_STAIRS = registerStairs("reeds_stairs", REEDS_BLOCK); + public static final Block REEDS_SLAB = registerSlab("reeds_slab", REEDS_BLOCK); + public static final Block REEDS_FENCE = registerFence("reeds_fence", REEDS_BLOCK); + public static final Block REEDS_GATE = registerGate("reeds_gate", REEDS_BLOCK); + public static final Block REEDS_BUTTON = registerButton("reeds_button", REEDS_BLOCK); + public static final Block REEDS_PLATE = registerPlate("reeds_plate", REEDS_BLOCK); + public static final Block REEDS_TRAPDOOR = registerTrapdoor("reeds_trapdoor", REEDS_BLOCK); + public static final Block REEDS_DOOR = registerDoor("reeds_door", REEDS_BLOCK); + + // Cincinnasite // + public static final Block CINCINNASITE_ORE = registerBlock("cincinnasite_ore", new BlockOre(ItemsRegistry.CINCINNASITE, 1, 3)); + public static final Block CINCINNASITE_BLOCK = registerBlock("cincinnasite_block", new BlockCincinnasite()); + public static final Block CINCINNASITE_FORGED = registerBlock("cincinnasite_forged", new BlockCincinnasite()); + public static final Block CINCINNASITE_PILLAR = registerBlock("cincinnasite_pillar", new BlockCincinnasitPillar()); + public static final Block CINCINNASITE_BRICKS = registerBlock("cincinnasite_bricks", new BlockCincinnasite()); + public static final Block CINCINNASITE_BRICK_PLATE = registerBlock("cincinnasite_brick_plate", new BlockCincinnasite()); + public static final Block CINCINNASITE_STAIRS = registerStairs("cincinnasite_stairs", CINCINNASITE_FORGED); + public static final Block CINCINNASITE_SLAB = registerSlab("cincinnasite_slab", CINCINNASITE_FORGED); + public static final Block CINCINNASITE_BUTTON = registerBlock("cincinnasite_button", new BNButton(CINCINNASITE_FORGED)); + public static final Block CINCINNASITE_PLATE = registerPlate("cincinnasite_plate", CINCINNASITE_FORGED, Sensitivity.MOBS); + public static final Block CINCINNASITE_LANTERN = registerBlock("cincinnasite_lantern", new BlockCincinnasiteLantern()); + public static final Block CINCINNASITE_TILE_LARGE = registerBlock("cincinnasite_tile_large", new BlockCincinnasite()); + public static final Block CINCINNASITE_TILE_SMALL = registerBlock("cincinnasite_tile_small", new BlockCincinnasite()); + public static final Block CINCINNASITE_CARVED = registerBlock("cincinnasite_carved", new BlockCincinnasite()); + public static final Block CINCINNASITE_WALL = registerWall("cincinnasite_wall", CINCINNASITE_FORGED); + public static final Block CINCINNASITE_BRICKS_PILLAR = registerBlock("cincinnasite_bricks_pillar", new BNPillar(CINCINNASITE_FORGED)); + public static final Block CINCINNASITE_BARS = registerBlock("cincinnasite_bars", new BNPane(CINCINNASITE_FORGED, true)); + public static final Block CINCINNASITE_PEDESTAL = registerBlock("cincinnasite_pedestal", new BlockCincinnasitePedestal()); + public static final Block CINCINNASITE_FRAME = registerBlock("cincinnasite_frame", new BlockCincinnasiteFrame()); + public static final Block CINCINNASITE_LANTERN_SMALL = registerBlock("cincinnasite_lantern_small", new BlockSmallLantern()); + public static final Block CINCINNASITE_CHAIN = registerBlock("cincinnasite_chain", new BNChain()); + + // Ruby // + public static final Block NETHER_RUBY_ORE = registerBlock("nether_ruby_ore", new BlockOre(ItemsRegistry.NETHER_RUBY, 1, 2)); + public static final Block NETHER_RUBY_BLOCK = registerBlock("nether_ruby_block", new BlockNetherRuby()); + public static final Block NETHER_RUBY_STAIRS = registerStairs("nether_ruby_stairs", NETHER_RUBY_BLOCK); + public static final Block NETHER_RUBY_SLAB = registerSlab("nether_ruby_slab", NETHER_RUBY_BLOCK); + + // Lapis + public static final Block NETHER_LAPIS_ORE = registerBlock("nether_lapis_ore", new BlockOre(ItemsRegistry.LAPIS_PILE, 3, 6)); + + // Bricks // + public static final Block NETHER_BRICK_TILE_LARGE = registerBlock("nether_brick_tile_large", new BNNetherBrick()); + public static final Block NETHER_BRICK_TILE_SMALL = registerBlock("nether_brick_tile_small", new BNNetherBrick()); + public static final Block NETHER_BRICK_WALL = registerWall("nether_brick_wall", NETHER_BRICK_TILE_LARGE); + public static final Block NETHER_BRICK_TILE_SLAB = registerSlab("nether_brick_tile_slab", NETHER_BRICK_TILE_SMALL); + public static final Block NETHER_BRICK_TILE_STAIRS = registerStairs("nether_brick_tile_stairs", NETHER_BRICK_TILE_SMALL); + + // Bone // + public static final Block BONE_BLOCK = registerBlock("bone_block", new BNBoneBlock()); + public static final Block BONE_STAIRS = registerStairs("bone_stairs", BONE_BLOCK); + public static final Block BONE_SLAB = registerSlab("bone_slab", BONE_BLOCK); + public static final Block BONE_BUTTON = registerButton("bone_button", BONE_BLOCK); + public static final Block BONE_PLATE = registerPlate("bone_plate", BONE_BLOCK); + public static final Block BONE_WALL = registerWall("bone_wall", BONE_BLOCK); + public static final Block BONE_TILE = registerBlock("bone_tile", new BNBoneBlock()); + public static final Block BONE_REED_DOOR = registerBlock("bone_reed_door", new BNDoor(BONE_BLOCK)); + public static final Block BONE_CINCINNASITE_DOOR = registerBlock("bone_cincinnasite_door", new BNDoor(BONE_BLOCK)); + + // Quartz Glass // + public static final Block QUARTZ_GLASS = registerBlock("quartz_glass", new BNGlass(Blocks.GLASS)); + public static final Block QUARTZ_GLASS_FRAMED = registerBlock("quartz_glass_framed", new BNGlass(CINCINNASITE_BLOCK)); + public static final Block QUARTZ_GLASS_PANE = registerBlock("quartz_glass_pane", new BNPane(QUARTZ_GLASS, true)); + public static final Block QUARTZ_GLASS_FRAMED_PANE = registerBlock("quartz_glass_framed_pane", new BNPane(CINCINNASITE_BLOCK, true)); + + // Quartz Glass Colored // + public static final ColoredGlassMaterial QUARTZ_GLASS_COLORED = new ColoredGlassMaterial("quartz_glass", QUARTZ_GLASS); + public static final ColoredGlassMaterial QUARTZ_GLASS_FRAMED_COLORED = new ColoredGlassMaterial("quartz_glass_framed", QUARTZ_GLASS_FRAMED); + public static final ColoredGlassMaterial QUARTZ_GLASS_PANE_COLORED = new ColoredGlassMaterial("quartz_glass_pane", QUARTZ_GLASS_PANE, false); + public static final ColoredGlassMaterial QUARTZ_GLASS_FRAMED_PANE_COLORED = new ColoredGlassMaterial("quartz_glass_framed_pane", QUARTZ_GLASS_FRAMED_PANE, true); + + // Obsidian // + public static final Block OBSIDIAN_BRICKS = registerBlock("obsidian_bricks", new BNObsidian()); + public static final Block OBSIDIAN_BRICKS_STAIRS = registerStairs("obsidian_bricks_stairs", OBSIDIAN_BRICKS); + public static final Block OBSIDIAN_BRICKS_SLAB = registerSlab("obsidian_bricks_slab", OBSIDIAN_BRICKS); + public static final Block OBSIDIAN_TILE = registerBlock("obsidian_tile", new BNObsidian()); + public static final Block OBSIDIAN_TILE_SMALL = registerBlock("obsidian_tile_small", new BNObsidian()); + public static final Block OBSIDIAN_TILE_STAIRS = registerStairs("obsidian_tile_stairs", OBSIDIAN_TILE_SMALL); + public static final Block OBSIDIAN_TILE_SLAB = registerSlab("obsidian_tile_slab", OBSIDIAN_TILE_SMALL); + public static final Block OBSIDIAN_GLASS = registerBlock("obsidian_glass", new BlockObsidianGlass()); + public static final Block OBSIDIAN_GLASS_PANE = registerBlock("obsidian_glass_pane", new BNPane(OBSIDIAN_GLASS, true)); + public static final Block BLUE_OBSIDIAN = registerBlock("blue_obsidian", new BNObsidian()); + public static final Block BLUE_OBSIDIAN_BRICKS = registerBlock("blue_obsidian_bricks", new BNObsidian()); + public static final Block BLUE_OBSIDIAN_BRICKS_STAIRS = registerStairs("blue_obsidian_bricks_stairs", BLUE_OBSIDIAN_BRICKS); + public static final Block BLUE_OBSIDIAN_BRICKS_SLAB = registerSlab("blue_obsidian_bricks_slab", BLUE_OBSIDIAN_BRICKS); + public static final Block BLUE_OBSIDIAN_TILE = registerBlock("blue_obsidian_tile", new BNObsidian()); + public static final Block BLUE_OBSIDIAN_TILE_SMALL = registerBlock("blue_obsidian_tile_small", new BNObsidian()); + public static final Block BLUE_OBSIDIAN_TILE_STAIRS = registerStairs("blue_obsidian_tile_stairs", BLUE_OBSIDIAN_TILE_SMALL); + public static final Block BLUE_OBSIDIAN_TILE_SLAB = registerSlab("blue_obsidian_tile_slab", BLUE_OBSIDIAN_TILE_SMALL); + public static final Block BLUE_OBSIDIAN_GLASS = registerBlock("blue_obsidian_glass", new BlockObsidianGlass()); + public static final Block BLUE_OBSIDIAN_GLASS_PANE = registerBlock("blue_obsidian_glass_pane", new BNPane(BLUE_OBSIDIAN_GLASS, true)); + + // Soul Sandstone // + public static final Block SOUL_SANDSTONE = registerBlock("soul_sandstone", new BlockSoulSandstone()); + public static final Block SOUL_SANDSTONE_CUT = registerMakeable2X2("soul_sandstone_cut", new BlockSoulSandstone(), "soul_sandstone", SOUL_SANDSTONE); + public static final Block SOUL_SANDSTONE_SMOOTH = registerMakeable2X2("soul_sandstone_smooth", new BlockBase(AbstractBlock.Properties.from(Blocks.SANDSTONE)), "soul_sandstone", SOUL_SANDSTONE_CUT); + public static final Block SOUL_SANDSTONE_CHISELED = registerMakeable2X2("soul_sandstone_chiseled", new BlockBase(AbstractBlock.Properties.from(Blocks.SANDSTONE)), "soul_sandstone", SOUL_SANDSTONE_SMOOTH); + + public static final Block SOUL_SANDSTONE_STAIRS = registerStairs("soul_sandstone_stairs", SOUL_SANDSTONE); + public static final Block SOUL_SANDSTONE_CUT_STAIRS = registerStairs("soul_sandstone_cut_stairs", SOUL_SANDSTONE_CUT); + public static final Block SOUL_SANDSTONE_SMOOTH_STAIRS = registerStairs("soul_sandstone_smooth_stairs", SOUL_SANDSTONE_SMOOTH); + + public static final Block SOUL_SANDSTONE_SLAB = registerSlab("soul_sandstone_slab", SOUL_SANDSTONE); + public static final Block SOUL_SANDSTONE_CUT_SLAB = registerSlab("soul_sandstone_cut_slab", SOUL_SANDSTONE_CUT); + public static final Block SOUL_SANDSTONE_SMOOTH_SLAB = registerSlab("soul_sandstone_smooth_slab", SOUL_SANDSTONE_SMOOTH); + + public static final Block SOUL_SANDSTONE_WALL = registerWall("soul_sandstone_wall", SOUL_SANDSTONE_CUT); + + // Basalt Bricks // + public static final Block BASALT_BRICKS = registerMakeable2X2("basalt_bricks", new BlockBase(AbstractBlock.Properties.from(Blocks.BASALT)), "basalt_bricks", Blocks.POLISHED_BASALT); + public static final Block BASALT_BRICKS_STAIRS = registerStairs("basalt_bricks_stairs", BASALT_BRICKS); + public static final Block BASALT_BRICKS_SLAB = registerSlab("basalt_bricks_slab", BASALT_BRICKS); + public static final Block BASALT_BRICKS_WALL = registerWall("basalt_bricks_wall", BASALT_BRICKS); + public static final Block BASALT_SLAB = registerSlab("basalt_slab", Blocks.BASALT); + + // Willow // + public static final Block WILLOW_BRANCH = registerBlockNI("willow_branch", new BlockWillowBranch()); + public static final Block WILLOW_LEAVES = registerBlock("willow_leaves", new BlockWillowLeaves()); + public static final Block WILLOW_TRUNK = registerBlockNI("willow_trunk", new BlockWillowTrunk()); + public static final Block STRIPED_LOG_WILLOW = registerBlock("striped_log_willow", new BNPillar(MaterialColor.PINK)); + public static final Block STRIPED_BARK_WILLOW = registerBlock("striped_bark_willow", new BNPillar(MaterialColor.PINK)); + public static final Block WILLOW_LOG = registerBlock("willow_log", new BNLogStripable(MaterialColor.RED_TERRACOTTA, STRIPED_LOG_WILLOW)); + public static final Block WILLOW_BARK = registerBark("willow_bark", new BNLogStripable(MaterialColor.RED_TERRACOTTA, STRIPED_BARK_WILLOW), WILLOW_LOG); + public static final Block WILLOW_SAPLING = registerBlock("willow_sapling", new BlockWillowSapling()); + public static final Block WILLOW_PLANKS = registerPlanks("willow_planks", new BNPlanks(MaterialColor.RED_TERRACOTTA), WILLOW_LOG, WILLOW_BARK, STRIPED_LOG_WILLOW, STRIPED_BARK_WILLOW); + public static final Block WILLOW_STAIRS = registerStairs("willow_stairs", WILLOW_PLANKS); + public static final Block WILLOW_SLAB = registerSlab("willow_slab", WILLOW_PLANKS); + public static final Block WILLOW_FENCE = registerFence("willow_fence", WILLOW_PLANKS); + public static final Block WILLOW_GATE = registerGate("willow_gate", WILLOW_PLANKS); + public static final Block WILLOW_BUTTON = registerButton("willow_button", WILLOW_PLANKS); + public static final Block WILLOW_PLATE = registerPlate("willow_plate", WILLOW_PLANKS); + public static final Block WILLOW_TRAPDOOR = registerTrapdoor("willow_trapdoor", WILLOW_PLANKS); + public static final Block WILLOW_DOOR = registerDoor("willow_door", WILLOW_PLANKS); + + // Wart // + public static final Block STRIPED_LOG_WART = registerBlock("striped_log_wart", new BNPillar(MaterialColor.RED)); + public static final Block STRIPED_BARK_WART = registerBlock("striped_bark_wart", new BNPillar(MaterialColor.RED)); + public static final Block WART_LOG = registerBlock("wart_log", new BNLogStripable(MaterialColor.RED, STRIPED_LOG_WART)); + public static final Block WART_BARK = registerBark("wart_bark", new BNLogStripable(MaterialColor.RED, STRIPED_BARK_WART), WART_LOG); + public static final Block WART_ROOTS = registerBlockNI("wart_roots", new BlockWartRoots()); + public static final Block WART_PLANKS = registerPlanks("wart_planks", new BNPlanks(MaterialColor.RED), WART_LOG, WART_BARK, STRIPED_LOG_WART, STRIPED_BARK_WART); + public static final Block WART_STAIRS = registerStairs("wart_stairs", WART_PLANKS); + public static final Block WART_SLAB = registerSlab("wart_slab", WART_PLANKS); + public static final Block WART_FENCE = registerFence("wart_fence", WART_PLANKS); + public static final Block WART_GATE = registerGate("wart_gate", WART_PLANKS); + public static final Block WART_BUTTON = registerButton("wart_button", WART_PLANKS); + public static final Block WART_PLATE = registerPlate("wart_plate", WART_PLANKS); + public static final Block WART_TRAPDOOR = registerTrapdoor("wart_trapdoor", WART_PLANKS); + public static final Block WART_DOOR = registerDoor("wart_door", WART_PLANKS); + + // Rubeus + public static final Block RUBEUS_SAPLING = registerBlock("rubeus_sapling", new BlockRubeusSapling()); + public static final Block RUBEUS_CONE = registerBlock("rubeus_cone", new BlockRubeusCone()); + public static final Block STRIPED_LOG_RUBEUS = registerBlock("striped_log_rubeus", new BNPillar(MaterialColor.MAGENTA)); + public static final Block STRIPED_BARK_RUBEUS = registerBlock("striped_bark_rubeus", new BNPillar(MaterialColor.MAGENTA)); + public static final Block RUBEUS_LOG = registerBlock("rubeus_log", new RubeusLog(STRIPED_LOG_RUBEUS)); + public static final Block RUBEUS_BARK = registerBark("rubeus_bark", new RubeusLog(STRIPED_BARK_RUBEUS), RUBEUS_LOG); + public static final Block RUBEUS_LEAVES = registerBlock("rubeus_leaves", new BlockRubeusLeaves()); + public static final Block RUBEUS_PLANKS = registerPlanks("rubeus_planks", new BNPlanks(MaterialColor.MAGENTA), RUBEUS_LOG, RUBEUS_BARK, STRIPED_LOG_RUBEUS, STRIPED_BARK_RUBEUS); + public static final Block RUBEUS_STAIRS = registerStairs("rubeus_stairs", RUBEUS_PLANKS); + public static final Block RUBEUS_SLAB = registerSlab("rubeus_slab", RUBEUS_PLANKS); + public static final Block RUBEUS_FENCE = registerFence("rubeus_fence", RUBEUS_PLANKS); + public static final Block RUBEUS_GATE = registerGate("rubeus_gate", RUBEUS_PLANKS); + public static final Block RUBEUS_BUTTON = registerButton("rubeus_button", RUBEUS_PLANKS); + public static final Block RUBEUS_PLATE = registerPlate("rubeus_plate", RUBEUS_PLANKS); + public static final Block RUBEUS_TRAPDOOR = registerTrapdoor("rubeus_trapdoor", RUBEUS_PLANKS); + public static final Block RUBEUS_DOOR = registerDoor("rubeus_door", RUBEUS_PLANKS); + + // Mushroom // + public static final Block MUSHROOM_STEM = registerBlock("mushroom_stem", new BlockStem(MaterialColor.WHITE_TERRACOTTA)); + public static final Block MUSHROOM_PLANKS = registerPlanks("mushroom_planks", new BNPlanks(MaterialColor.LIGHT_GRAY), 2, MUSHROOM_STEM); + public static final Block MUSHROOM_STAIRS = registerStairs("mushroom_stairs", MUSHROOM_PLANKS); + public static final Block MUSHROOM_SLAB = registerSlab("mushroom_slab", MUSHROOM_PLANKS); + public static final Block MUSHROOM_FENCE = registerFence("mushroom_fence", MUSHROOM_PLANKS); + public static final Block MUSHROOM_GATE = registerGate("mushroom_gate", MUSHROOM_PLANKS); + public static final Block MUSHROOM_BUTTON = registerButton("mushroom_button", MUSHROOM_PLANKS); + public static final Block MUSHROOM_PLATE = registerPlate("mushroom_plate", MUSHROOM_PLANKS); + public static final Block MUSHROOM_TRAPDOOR = registerTrapdoor("mushroom_trapdoor", MUSHROOM_PLANKS); + public static final Block MUSHROOM_DOOR = registerDoor("mushroom_door", MUSHROOM_PLANKS); + + // Soul lily // + public static final Block SOUL_LILY = registerBlockNI("soul_lily", new BlockSoulLily()); + public static final Block SOUL_LILY_SAPLING = registerBlock("soul_lily_sapling", new BlockSoulLilySapling()); + + // Large & Small Mushrooms // + public static final Block RED_LARGE_MUSHROOM = registerBlockNI("red_large_mushroom", new BlockRedLargeMushroom()); + public static final Block BROWN_LARGE_MUSHROOM = registerBlockNI("brown_large_mushroom", new BlockBrownLargeMushroom()); + public static final Block ORANGE_MUSHROOM = registerBlock("orange_mushroom", new BlockOrangeMushroom()); + public static final Block RED_MOLD = registerBlock("red_mold", new BlockRedMold()); + public static final Block GRAY_MOLD = registerBlock("gray_mold", new BlockGrayMold()); + + // Lucis // + public static final Block LUCIS_MUSHROOM = registerBlockNI("lucis_mushroom", new BlockLucisMushroom()); + public static final Block LUCIS_SPORE = registerBlock("lucis_spore", new BlockLucisSpore()); + public static final Block GIANT_LUCIS = registerBlock("giant_lucis", new BlockGiantLucis()); + + // Giant Mold // + public static final Block GIANT_MOLD = registerBlockNI("giant_mold", new BlockGiantMold()); + public static final Block GIANT_MOLD_SAPLING = registerBlock("giant_mold_sapling", new BlockGiantMoldSapling()); + + public static final Block JELLYFISH_MUSHROOM = registerBlockNI("jellyfish_mushroom", new BlockJellyfishMushroom()); + public static final Block JELLYFISH_MUSHROOM_SAPLING = registerBlock("jellyfish_mushroom_sapling", new BlockJellyfishMushroomSapling()); + + // Mushroom Fir // + public static final Block MUSHROOM_FIR = registerBlockNI("mushroom_fir", new BlockMushroomFir()); + public static final Block MUSHROOM_FIR_SAPLING = registerBlock("mushroom_fir_sapling", new BlockMushroomFirSapling()); + public static final Block MUSHROOM_FIR_STEM = registerBlock("mushroom_fir_stem", new BlockStem(MaterialColor.BLACK_TERRACOTTA)); + public static final Block STRIPED_LOG_MUSHROOM_FIR = registerBlock("striped_log_mushroom_fir", new BNPillar(MaterialColor.BLUE)); + public static final Block STRIPED_WOOD_MUSHROOM_FIR = registerBlock("striped_wood_mushroom_fir", new BNPillar(MaterialColor.BLUE)); + public static final Block MUSHROOM_FIR_LOG = registerLog("mushroom_fir_log", new BNLogStripable(MaterialColor.BLUE, STRIPED_LOG_MUSHROOM_FIR), MUSHROOM_FIR_STEM); + public static final Block MUSHROOM_FIR_WOOD = registerBark("mushroom_fir_wood", new BNLogStripable(MaterialColor.BLUE, STRIPED_WOOD_MUSHROOM_FIR), MUSHROOM_FIR_LOG); + public static final Block MUSHROOM_FIR_PLANKS = registerPlanks("mushroom_fir_planks", new BNPlanks(MaterialColor.LIGHT_GRAY), 1, MUSHROOM_FIR_STEM, MUSHROOM_FIR_LOG, MUSHROOM_FIR_WOOD, STRIPED_LOG_MUSHROOM_FIR, STRIPED_WOOD_MUSHROOM_FIR); + public static final Block MUSHROOM_FIR_STAIRS = registerStairs("mushroom_fir_stairs", MUSHROOM_FIR_PLANKS); + public static final Block MUSHROOM_FIR_SLAB = registerSlab("mushroom_fir_slab", MUSHROOM_FIR_PLANKS); + public static final Block MUSHROOM_FIR_FENCE = registerFence("mushroom_fir_fence", MUSHROOM_FIR_PLANKS); + public static final Block MUSHROOM_FIR_GATE = registerGate("mushroom_fir_gate", MUSHROOM_FIR_PLANKS); + public static final Block MUSHROOM_FIR_BUTTON = registerButton("mushroom_fir_button", MUSHROOM_FIR_PLANKS); + public static final Block MUSHROOM_FIR_PLATE = registerPlate("mushroom_fir_plate", MUSHROOM_FIR_PLANKS); + public static final Block MUSHROOM_FIR_TRAPDOOR = registerTrapdoor("mushroom_fir_trapdoor", MUSHROOM_FIR_PLANKS); + public static final Block MUSHROOM_FIR_DOOR = registerDoor("mushroom_fir_door", MUSHROOM_FIR_PLANKS); + + // Anchor Tree + public static final Block ANCHOR_TREE_SAPLING = registerBlock("anchor_tree_sapling", new BlockAnchorTreeSapling()); + public static final Block ANCHOR_TREE_LEAVES = registerBlock("anchor_tree_leaves", new BlockAnchorTreeLeaves()); + public static final Block ANCHOR_TREE_VINE = registerBlockNI("anchor_tree_vine", new BlockAnchorTreeVine()); + public static final WoodenMaterial ANCHOR_TREE = new WoodenMaterial("anchor_tree", MaterialColor.BLUE, MaterialColor.GREEN); + + // Nether Sakura + public static final Block NETHER_SAKURA_SAPLING = registerBlock("nether_sakura_sapling", new BlockNetherSakuraSapling()); + public static final Block NETHER_SAKURA_LEAVES = registerBlock("nether_sakura_leaves", new BlockNetherSakuraLeaves()); + public static final WoodenMaterial NETHER_SAKURA = new WoodenMaterial("nether_sakura", MaterialColor.PINK, MaterialColor.BROWN); + + // Eyes // + public static final Block EYEBALL = registerBlockNI("eyeball", new BlockEyeball()); + public static final Block EYEBALL_SMALL = registerBlockNI("eyeball_small", new BlockEyeballSmall()); + public static final Block EYE_VINE = registerBlockNI("eye_vine", new BlockEyeVine()); + public static final Block EYE_SEED = registerBlock("eye_seed", new BlockEyeSeed()); + + // Grass // + public static final Block NETHER_GRASS = registerBlock("nether_grass", new BlockNetherGrass()); + public static final Block SWAMP_GRASS = registerBlock("swamp_grass", new BlockNetherGrass()); + public static final Block SOUL_GRASS = registerBlock("soul_grass", new BlockSoulGrass()); + public static final Block JUNGLE_PLANT = registerBlock("jungle_plant", new BlockNetherGrass()); + public static final Block BONE_GRASS = registerBlock("bone_grass", new BlockNetherGrass()); + public static final Block SEPIA_BONE_GRASS = registerBlock("sepia_bone_grass", new BlockNetherGrass()); + + // Vines // + public static final Block BLACK_VINE = registerBlock("black_vine", new BlockBlackVine()); + public static final Block BLOOMING_VINE = registerBlock("blooming_vine", new BlockBlackVine()); + public static final Block GOLDEN_VINE = registerBlock("golden_vine", new BlockGoldenVine()); + public static final Block LUMABUS_SEED = registerBlock("lumabus_seed", new BlockLumabusSeed(new StructureLumabusVine())); + public static final Block LUMABUS_VINE = registerBlockNI("lumabus_vine", new BlockLumabusVine(LUMABUS_SEED)); + public static final Block GOLDEN_LUMABUS_SEED = registerBlock("golden_lumabus_seed", new BlockLumabusSeed(new StructureGoldenLumabusVine())); + public static final Block GOLDEN_LUMABUS_VINE = registerBlockNI("golden_lumabus_vine", new BlockLumabusVine(GOLDEN_LUMABUS_SEED)); + + // Small Plants + public static final Block SOUL_VEIN = registerBlock("soul_vein", new BlockSoulVein()); + public static final Block BONE_MUSHROOM = registerBlock("bone_mushroom", new BlockBoneMushroom()); + public static final Block WART_SEED = registerBlock("wart_seed", new BlockWartSeed()); + public static final Block BLACK_BUSH = registerBlock("black_bush", new BlockBlackBush()); + public static final Block INK_BUSH = registerBlockNI("ink_bush", new BlockInkBush()); + public static final Block INK_BUSH_SEED = registerBlock("ink_bush_seed", new BlockInkBushSeed()); + public static final Block SMOKER = registerBlock("smoker", new BlockSmoker()); + public static final Block EGG_PLANT = registerBlock("egg_plant", new BlockEggPlant()); + public static final Block BLACK_APPLE = registerBlockNI("black_apple", new BlockBlackApple()); + public static final Block BLACK_APPLE_SEED = registerBlock("black_apple_seed", new BlockBlackAppleSeed()); + public static final Block MAGMA_FLOWER = registerBlock("magma_flower", new BlockMagmaFlower()); + public static final Block FEATHER_FERN = registerBlock("feather_fern", new BlockFeatherFern()); + public static final Block MOSS_COVER = registerBlock("moss_cover", new BlockMossCover()); + public static final Block NEON_EQUISETUM = registerBlock("neon_equisetum", new BlockNeonEquisetum()); + public static final Block HOOK_MUSHROOM = registerBlock("hook_mushroom", new BlockHookMushroom()); + public static final Block WHISPERING_GOURD_VINE = registerBlock("whispering_gourd_vine", new BlockWhisperingGourdVine()); + public static final Block WHISPERING_GOURD = registerBlock("whispering_gourd", new BlockWhisperingGourd()); + public static final Block WHISPERING_GOURD_LANTERN = registerBlock("whispering_gourd_lantern", new BlockWhisperingGourdLantern()); + + // Cactuses // + public static final Block AGAVE = registerBlock("agave", new BlockAgave()); + public static final Block BARREL_CACTUS = registerBlock("barrel_cactus", new BlockBarrelCactus()); + public static final Block NETHER_CACTUS = registerBlock("nether_cactus", new BlockNetherCactus()); + + // Wall plants + public static final Block WALL_MOSS = registerBlock("wall_moss", new BlockPlantWall(MaterialColor.RED)); + public static final Block WALL_MUSHROOM_BROWN = registerBlock("wall_mushroom_brown", new BlockPlantWall(MaterialColor.BROWN)); + public static final Block WALL_MUSHROOM_RED = registerBlock("wall_mushroom_red", new BlockPlantWall(MaterialColor.RED)); + public static final Block JUNGLE_MOSS = registerBlock("jungle_moss", new BlockPlantWall(MaterialColor.LIME)); + + // Decorations // + public static final Block PIG_STATUE_RESPAWNER = registerBlock("pig_statue_respawner", new BlockStatueRespawner()); + public static final Block CINCINNASITE_POT = registerBlock("cincinnasite_pot", new BlockBNPot(CINCINNASITE_BLOCK)); + public static final Block BRICK_POT = registerBlock("brick_pot", new BlockBNPot(Blocks.NETHER_BRICKS)); + public static final Block POTTED_PLANT = registerBlockNI("potted_plant", new BlockPottedPlant()); + public static final Block GEYSER = registerBlock("geyser", new BlockGeyser()); + public static final Block NETHERRACK_STALACTITE = registerStalactite("netherrack_stalactite", Blocks.NETHERRACK); + public static final Block GLOWSTONE_STALACTITE = registerStalactite("glowstone_stalactite", Blocks.GLOWSTONE); + public static final Block BLACKSTONE_STALACTITE = registerStalactite("blackstone_stalactite", Blocks.BLACKSTONE); + public static final Block BASALT_STALACTITE = registerStalactite("basalt_stalactite", Blocks.BASALT); + public static final Block BONE_STALACTITE = registerStalactite("bone_stalactite", BONE_BLOCK); + public static final Block WILLOW_TORCH = registerBlock("willow_torch", new BlockWillowTorch()); + + // Fire Bowls + public static final Block CINCINNASITE_FIRE_BOWL = registerFireBowl("cincinnasite_fire_bowl", CINCINNASITE_FORGED, Blocks.NETHERRACK, ItemsRegistry.CINCINNASITE_INGOT); + public static final Block BRICKS_FIRE_BOWL = registerFireBowl("bricks_fire_bowl", NETHER_BRICK_TILE_LARGE, Blocks.NETHERRACK, Items.NETHER_BRICK); + public static final Block NETHERITE_FIRE_BOWL = registerFireBowl("netherite_fire_bowl", Blocks.NETHERITE_BLOCK, Blocks.NETHERRACK, Items.NETHERITE_INGOT); + + public static final Block CINCINNASITE_FIRE_BOWL_SOUL = registerFireBowl("cincinnasite_fire_bowl_soul", CINCINNASITE_FORGED, Blocks.SOUL_SAND, ItemsRegistry.CINCINNASITE_INGOT); + public static final Block BRICKS_FIRE_BOWL_SOUL = registerFireBowl("bricks_fire_bowl_soul", NETHER_BRICK_TILE_LARGE, Blocks.SOUL_SAND, Items.NETHER_BRICK); + public static final Block NETHERITE_FIRE_BOWL_SOUL = registerFireBowl("netherite_fire_bowl_soul", Blocks.NETHERITE_BLOCK, Blocks.SOUL_SAND, Items.NETHERITE_INGOT); + + // Terrain // + public static final Block NETHERRACK_MOSS = registerBlock("netherrack_moss", new BlockTerrain()); + public static final Block NETHER_MYCELIUM = registerBlock("nether_mycelium", new BlockNetherMycelium()); + public static final Block JUNGLE_GRASS = registerBlock("jungle_grass", new BlockTerrain()); + public static final Block MUSHROOM_GRASS = registerBlock("mushroom_grass", new BlockTerrain()); + public static final Block SEPIA_MUSHROOM_GRASS = registerBlock("sepia_mushroom_grass", new BlockTerrain()); + public static final Block VEINED_SAND = registerBlockNI("veined_sand", new BlockVeinedSand()); + public static final Block FARMLAND = registerBlock("farmland", new BlockFarmland()); + public static final Block SWAMPLAND_GRASS = registerBlock("swampland_grass", new BlockTerrain()); + public static final Block CEILING_MUSHROOMS = registerBlock("ceiling_mushrooms", new BlockTerrain()); + + // Roofs // + public static final Block ROOF_TILE_REEDS = registerRoof("roof_tile_reeds", REEDS_BLOCK); + public static final Block ROOF_TILE_REEDS_STAIRS = registerStairs("roof_tile_reeds_stairs", ROOF_TILE_REEDS); + public static final Block ROOF_TILE_REEDS_SLAB = registerSlab("roof_tile_reeds_slab", ROOF_TILE_REEDS); + public static final Block ROOF_TILE_STALAGNATE = registerRoof("roof_tile_stalagnate", STALAGNATE_PLANKS); + public static final Block ROOF_TILE_STALAGNATE_STAIRS = registerStairs("roof_tile_stalagnate_stairs", ROOF_TILE_STALAGNATE); + public static final Block ROOF_TILE_STALAGNATE_SLAB = registerSlab("roof_tile_stalagnate_slab", ROOF_TILE_STALAGNATE); + public static final Block ROOF_TILE_NETHER_BRICKS = registerRoof("roof_tile_nether_bricks", Blocks.NETHER_BRICKS); + public static final Block ROOF_TILE_NETHER_BRICKS_STAIRS = registerStairs("roof_tile_nether_bricks_stairs", ROOF_TILE_NETHER_BRICKS); + public static final Block ROOF_TILE_NETHER_BRICKS_SLAB = registerSlab("roof_tile_nether_bricks_slab", ROOF_TILE_NETHER_BRICKS); + public static final Block ROOF_TILE_CINCINNASITE = registerRoof("roof_tile_cincinnasite", CINCINNASITE_FORGED); + public static final Block ROOF_TILE_CINCINNASITE_STAIRS = registerStairs("roof_tile_cincinnasite_stairs", ROOF_TILE_CINCINNASITE); + public static final Block ROOF_TILE_CINCINNASITE_SLAB = registerSlab("roof_tile_cincinnasite_slab", ROOF_TILE_CINCINNASITE); + public static final Block ROOF_TILE_WILLOW = registerRoof("roof_tile_willow", WILLOW_PLANKS); + public static final Block ROOF_TILE_WILLOW_STAIRS = registerStairs("roof_tile_willow_stairs", ROOF_TILE_WILLOW); + public static final Block ROOF_TILE_WILLOW_SLAB = registerSlab("roof_tile_willow_slab", ROOF_TILE_WILLOW); + public static final Block ROOF_TILE_WART = registerRoof("roof_tile_wart", WART_PLANKS); + public static final Block ROOF_TILE_WART_STAIRS = registerStairs("roof_tile_wart_stairs", ROOF_TILE_WART); + public static final Block ROOF_TILE_WART_SLAB = registerSlab("roof_tile_wart_slab", ROOF_TILE_WART); + + // Craft Stations // + public static final Block BLACKSTONE_FURNACE = registerFurnace("blackstone_furnace", Blocks.BLACKSTONE); + public static final Block BASALT_FURNACE = registerFurnace("basalt_furnace", Blocks.BASALT); + public static final Block NETHERRACK_FURNACE = registerFurnace("netherrack_furnace", Blocks.NETHERRACK); + public static final Block CINCINNASITE_FORGE = registerBlock("cincinnasite_forge", new BlockCincinnasiteForge()); + public static final Block NETHER_BREWING_STAND = registerBlock("nether_brewing_stand", new BNBrewingStand()); + public static final Block CINCINNASITE_ANVIL = registerBlock("cincinnasite_anvil", new BlockCincinnasiteAnvil()); + + public static final Block CRAFTING_TABLE_CRIMSON = registerCraftingTable("crafting_table_crimson", Blocks.CRIMSON_PLANKS); + public static final Block CRAFTING_TABLE_WARPED = registerCraftingTable("crafting_table_warped", Blocks.WARPED_PLANKS); + + public static final Block CRAFTING_TABLE_STALAGNATE = registerCraftingTable("crafting_table_stalagnate", STALAGNATE_PLANKS); + public static final Block CRAFTING_TABLE_REED = registerCraftingTable("crafting_table_reed", REEDS_BLOCK); + public static final Block CRAFTING_TABLE_WILLOW = registerCraftingTable("crafting_table_willow", WILLOW_PLANKS); + public static final Block CRAFTING_TABLE_WART = registerCraftingTable("crafting_table_wart", WART_PLANKS); + public static final Block CRAFTING_TABLE_RUBEUS = registerCraftingTable("crafting_table_rubeus", RUBEUS_PLANKS); + public static final Block CRAFTING_TABLE_MUSHROOM = registerCraftingTable("crafting_table_mushroom", MUSHROOM_PLANKS); + public static final Block CRAFTING_TABLE_MUSHROOM_FIR = registerCraftingTable("crafting_table_mushroom_fir", MUSHROOM_FIR_PLANKS); + + // Storage + public static final Block CHEST_OF_DRAWERS = registerBlock("chest_of_drawers", new BlockChestOfDrawers()); + + public static final Block CHEST_CRIMSON = registerChest("chest_crimson", Blocks.CRIMSON_PLANKS); + public static final Block CHEST_WARPED = registerChest("chest_warped", Blocks.WARPED_PLANKS); + + public static final Block CHEST_STALAGNATE = registerChest("chest_stalagnate", STALAGNATE_PLANKS); + public static final Block CHEST_REED = registerChest("chest_reed", REEDS_BLOCK); + public static final Block CHEST_WILLOW = registerChest("chest_willow", WILLOW_PLANKS); + public static final Block CHEST_WART = registerChest("chest_wart", WART_PLANKS); + public static final Block CHEST_RUBEUS = registerChest("chest_rubeus", RUBEUS_PLANKS); + public static final Block CHEST_MUSHROOM = registerChest("chest_mushroom", MUSHROOM_PLANKS); + public static final Block CHEST_MUSHROOM_FIR = registerChest("chest_mushroom_fir", MUSHROOM_FIR_PLANKS); + + public static final Block BARREL_CRIMSON = registerBarrel("barrel_crimson", Blocks.CRIMSON_PLANKS, Blocks.CRIMSON_SLAB); + public static final Block BARREL_WARPED = registerBarrel("barrel_warped", Blocks.WARPED_PLANKS, Blocks.WARPED_SLAB); + + public static final Block BARREL_STALAGNATE = registerBarrel("barrel_stalagnate", STALAGNATE_PLANKS, STALAGNATE_SLAB); + public static final Block BARREL_REED = registerBarrel("barrel_reed", REEDS_BLOCK, REEDS_SLAB); + public static final Block BARREL_WILLOW = registerBarrel("barrel_willow", WILLOW_PLANKS, WILLOW_SLAB); + public static final Block BARREL_WART = registerBarrel("barrel_wart", WART_PLANKS, WART_SLAB); + public static final Block BARREL_RUBEUS = registerBarrel("barrel_rubeus", RUBEUS_PLANKS, RUBEUS_SLAB); + public static final Block BARREL_MUSHROOM = registerBarrel("barrel_mushroom", MUSHROOM_PLANKS, MUSHROOM_SLAB); + public static final Block BARREL_MUSHROOM_FIR = registerBarrel("barrel_mushroom_fir", MUSHROOM_FIR_PLANKS, MUSHROOM_FIR_SLAB); + + // Taburets // + public static final Block TABURET_OAK = registerTaburet("taburet_oak", Blocks.OAK_SLAB); + public static final Block TABURET_SPRUCE = registerTaburet("taburet_spruce", Blocks.SPRUCE_SLAB); + public static final Block TABURET_BIRCH = registerTaburet("taburet_birch", Blocks.BIRCH_SLAB); + public static final Block TABURET_JUNGLE = registerTaburet("taburet_jungle", Blocks.JUNGLE_SLAB); + public static final Block TABURET_ACACIA = registerTaburet("taburet_acacia", Blocks.ACACIA_SLAB); + public static final Block TABURET_DARK_OAK = registerTaburet("taburet_dark_oak", Blocks.DARK_OAK_SLAB); + public static final Block TABURET_CRIMSON = registerTaburet("taburet_crimson", Blocks.CRIMSON_SLAB); + public static final Block TABURET_WARPED = registerTaburet("taburet_warped", Blocks.WARPED_SLAB); + + public static final Block TABURET_REEDS = registerTaburet("taburet_reeds", REEDS_SLAB); + public static final Block TABURET_STALAGNATE = registerTaburet("taburet_stalagnate", STALAGNATE_SLAB); + public static final Block TABURET_WILLOW = registerTaburet("taburet_willow", WILLOW_SLAB); + public static final Block TABURET_WART = registerTaburet("taburet_wart", WART_SLAB); + public static final Block TABURET_CINCINNASITE = registerTaburet("taburet_cincinnasite", CINCINNASITE_SLAB); + public static final Block TABURET_MUSHROOM = registerTaburet("taburet_mushroom", MUSHROOM_SLAB); + public static final Block TABURET_MUSHROOM_FIR = registerTaburet("taburet_mushroom_fir", MUSHROOM_FIR_SLAB); + public static final Block TABURET_RUBEUS = registerTaburet("taburet_rubeus", RUBEUS_SLAB); + + // Chairs + public static final Block CHAIR_OAK = registerChair("chair_oak", Blocks.OAK_SLAB); + public static final Block CHAIR_SPRUCE = registerChair("chair_spruce", Blocks.SPRUCE_SLAB); + public static final Block CHAIR_BIRCH = registerChair("chair_birch", Blocks.BIRCH_SLAB); + public static final Block CHAIR_JUNGLE = registerChair("chair_jungle", Blocks.JUNGLE_SLAB); + public static final Block CHAIR_ACACIA = registerChair("chair_acacia", Blocks.ACACIA_SLAB); + public static final Block CHAIR_DARK_OAK = registerChair("chair_dark_oak", Blocks.DARK_OAK_SLAB); + public static final Block CHAIR_CRIMSON = registerChair("chair_crimson", Blocks.CRIMSON_SLAB); + public static final Block CHAIR_WARPED = registerChair("chair_warped", Blocks.WARPED_SLAB); + + public static final Block CHAIR_REEDS = registerChair("chair_reeds", REEDS_SLAB); + public static final Block CHAIR_STALAGNATE = registerChair("chair_stalagnate", STALAGNATE_SLAB); + public static final Block CHAIR_WILLOW = registerChair("chair_willow", WILLOW_SLAB); + public static final Block CHAIR_WART = registerChair("chair_wart", WART_SLAB); + public static final Block CHAIR_CINCINNASITE = registerChair("chair_cincinnasite", CINCINNASITE_SLAB); + public static final Block CHAIR_MUSHROOM = registerChair("chair_mushroom", MUSHROOM_SLAB); + public static final Block CHAIR_MUSHROOM_FIR = registerChair("chair_mushroom_fir", MUSHROOM_FIR_SLAB); + public static final Block CHAIR_RUBEUS = registerChair("chair_rubeus", RUBEUS_SLAB); + + // Stools // + public static final Block BAR_STOOL_OAK = registerBarStool("bar_stool_oak", Blocks.OAK_SLAB); + public static final Block BAR_STOOL_SPRUCE = registerBarStool("bar_stool_spruce", Blocks.SPRUCE_SLAB); + public static final Block BAR_STOOL_BIRCH = registerBarStool("bar_stool_birch", Blocks.BIRCH_SLAB); + public static final Block BAR_STOOL_JUNGLE = registerBarStool("bar_stool_jungle", Blocks.JUNGLE_SLAB); + public static final Block BAR_STOOL_ACACIA = registerBarStool("bar_stool_acacia", Blocks.ACACIA_SLAB); + public static final Block BAR_STOOL_DARK_OAK = registerBarStool("bar_stool_dark_oak", Blocks.DARK_OAK_SLAB); + public static final Block BAR_STOOL_CRIMSON = registerBarStool("bar_stool_crimson", Blocks.CRIMSON_SLAB); + public static final Block BAR_STOOL_WARPED = registerBarStool("bar_stool_warped", Blocks.WARPED_SLAB); + + public static final Block BAR_STOOL_REEDS = registerBarStool("bar_stool_reeds", REEDS_SLAB); + public static final Block BAR_STOOL_STALAGNATE = registerBarStool("bar_stool_stalagnate", STALAGNATE_SLAB); + public static final Block BAR_STOOL_WILLOW = registerBarStool("bar_stool_willow", WILLOW_SLAB); + public static final Block BAR_STOOL_WART = registerBarStool("bar_stool_wart", WART_SLAB); + public static final Block BAR_STOOL_CINCINNASITE = registerBarStool("bar_stool_cincinnasite", CINCINNASITE_SLAB); + public static final Block BAR_STOOL_MUSHROOM = registerBarStool("bar_stool_mushroom", MUSHROOM_SLAB); + public static final Block BAR_STOOL_MUSHROOM_FIR = registerBarStool("bar_stool_mushroom_fir", MUSHROOM_FIR_SLAB); + public static final Block BAR_STOOL_RUBEUS = registerBarStool("bar_stool_rubeus", RUBEUS_SLAB); + + // Ladders // + public static final Block CRIMSON_LADDER = registerLadder("crimson_ladder", Blocks.CRIMSON_PLANKS); + public static final Block WARPED_LADDER = registerLadder("warped_ladder", Blocks.WARPED_PLANKS); + + public static final Block REEDS_LADDER = registerLadder("reeds_ladder", REEDS_BLOCK); + public static final Block STALAGNATE_LADDER = registerLadder("stalagnate_ladder", STALAGNATE_PLANKS); + public static final Block WILLOW_LADDER = registerLadder("willow_ladder", WILLOW_PLANKS); + public static final Block WART_LADDER = registerLadder("wart_ladder", WART_PLANKS); + public static final Block MUSHROOM_LADDER = registerLadder("mushroom_ladder", MUSHROOM_PLANKS); + public static final Block MUSHROOM_FIR_LADDER = registerLadder("mushroom_fir_ladder", MUSHROOM_FIR_PLANKS); + public static final Block RUBEUS_LADDER = registerLadder("rubeus_ladder", RUBEUS_PLANKS); + + // Signs + public static final Block SIGN_STALAGNATE = registerSign("sign_stalagnate", STALAGNATE_PLANKS); + public static final Block SIGN_REED = registerSign("sign_reed", REEDS_BLOCK); + public static final Block SIGN_WILLOW = registerSign("sign_willow", WILLOW_PLANKS); + public static final Block SIGN_WART = registerSign("sign_wart", WART_PLANKS); + public static final Block SIGN_RUBEUS = registerSign("sign_rubeus", RUBEUS_PLANKS); + public static final Block SIGN_MUSHROOM = registerSign("sign_mushroom", MUSHROOM_PLANKS); + public static final Block SIGN_MUSHROOM_FIR = registerSign("sign_mushroom_fir", MUSHROOM_FIR_PLANKS); + + + public static void registerAll(RegistryEvent.Register e) { + IForgeRegistry r = e.getRegistry(); + + for (Block block : BLOCKS) { + r.register(block); + } + } + + public static Block registerBlock(String name, Block block) { + //if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + // registerBlockDirectly(name, block); + //} + registerBlockDirectly(name, block); + return block; + } + + public static Block registerBlockNI(String name, Block block) { + //if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + // Registry.register(Registry.BLOCK, new ResourceLocation(BetterNether.MOD_ID, name), block); + //} + block.setRegistryName(new ResourceLocation(BetterNether.MOD_ID, name)); + BLOCKS.add(block); + return block; + } + + private static Block registerBlockDirectly(String name, Block block) { + block.setRegistryName(new ResourceLocation(BetterNether.MOD_ID, name)); + BLOCKS.add(block); + ItemsRegistry.registerItem(name, new BlockItem(block, new Item.Properties().group(CreativeTab.BN_TAB))); + return block; + } + + private static void addFuel(Block source, Block result) { + if (source.getDefaultState().getMaterial().isFlammable()) { + FuelRegistry.addFuel(result, 40); + } + } + + public static Block registerStairs(String name, Block source) { + Block stairs = new BNStairs(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, stairs); + addFuel(source, stairs); + BNRecipes.STAIRS.add(new BNRecipes.SingleInputRecipe(source, stairs)); + } + return stairs; + } + + public static Block registerSlab(String name, Block source) { + Block slab = new BNSlab(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, slab); + addFuel(source, slab); + BNRecipes.SLABS.add(new BNRecipes.SingleInputRecipe(source, slab)); + } + return slab; + } + + private static Block registerRoof(String name, Block source) { + Block roof = new BlockBase(AbstractBlock.Properties.from(source)); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, roof); + addFuel(source, roof); + BNRecipes.ROOFS.add(new BNRecipes.SingleInputRecipe(source, roof)); + } + return roof; + } + + public static Block registerButton(String name, Block source) { + Block button = new BNButton(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, button); + addFuel(source, button); + BNRecipes.SHAPELESS.add(new BNRecipes.SingleInputRecipe(source, button, 1)); + } + return button; + } + + public static Block registerPlate(String name, Block source) { + Block plate = new BNPlate(Sensitivity.EVERYTHING, source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, plate); + addFuel(source, plate); + BNRecipes.PLATES.add(new BNRecipes.SingleInputRecipe(source, plate)); + } + return plate; + } + + private static Block registerPlate(String name, Block source, Sensitivity rule) { + Block plate = new BNPlate(rule, source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, plate); + addFuel(source, plate); + BNRecipes.PLATES.add(new BNRecipes.SingleInputRecipe(source, plate)); + } + return plate; + } + + public static Block registerPlanks(String name, Block planks, Block... logs) { + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, planks); + for (Block log : logs) + BNRecipes.SHAPELESS.add(new BNRecipes.SingleInputRecipe(log, planks, 4)); + } + return planks; + } + + private static Block registerPlanks(String name, Block planks, int output, Block stem, Block... logs) { + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, planks); + BNRecipes.SHAPELESS.add(new BNRecipes.SingleInputRecipe(stem, planks, output)); + for (Block log : logs) + BNRecipes.SHAPELESS.add(new BNRecipes.SingleInputRecipe(log, planks, 4)); + } + return planks; + } + + public static Block registerLog(String name, Block log, Block stem) { + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, log); + BNRecipes.TWOBYTWO.add(new BNRecipes.SingleInputRecipe(stem, log, 1)); + } + return log; + } + + public static Block registerBark(String name, Block bark, Block log) { + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, bark); + BNRecipes.TWOBYTWO.add(new BNRecipes.SingleInputRecipe(log, bark, 3)); + } + return bark; + } + + public static Block registerFence(String name, Block source) { + Block fence = new BNFence(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, fence); + addFuel(source, fence); + BNRecipes.FENCES.add(new BNRecipes.SingleInputRecipe(source, fence)); + } + return fence; + } + + public static Block registerGate(String name, Block source) { + Block gate = new BNGate(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, gate); + addFuel(source, gate); + BNRecipes.GATES.add(new BNRecipes.SingleInputRecipe(source, gate)); + } + return gate; + } + + public static Block registerDoor(String name, Block source) { + Block door = new BNDoor(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, door); + addFuel(source, door); + BNRecipes.DOORS.add(new BNRecipes.SingleInputRecipe(source, door)); + } + return door; + } + + public static Block registerTrapdoor(String name, Block source) { + Block trapdoor = new BNTrapdoor(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, trapdoor); + addFuel(source, trapdoor); + BNRecipes.TRAPDOORS.add(new BNRecipes.SingleInputRecipe(source, trapdoor)); + } + return trapdoor; + } + + public static Block registerMakeable2X2(String name, Block result, String group, Block... sources) { + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, result); + for (Block source : sources) + BNRecipes.TWOBYTWO.add(new BNRecipes.SingleInputRecipe(source, result, 4)); + } + return result; + } + + public static Block registerWall(String name, Block source) { + Block wall = new BNWall(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, wall); + BNRecipes.WALLS.add(new BNRecipes.SingleInputRecipe(source, wall)); + } + return wall; + } + + public static Block registerCraftingTable(String name, Block source) { + Block block = new BNCraftingTable(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, block); + BNRecipes.TWOBYTWO.add(new BNRecipes.SingleInputRecipe(source, block, 1)); + } + return block; + } + + public static Block registerChest(String name, Block source) { + Block block = new BNChest(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, block); + addFuel(source, block); + BNRecipes.ROUND.add(new BNRecipes.SingleInputRecipe(source, block)); + } + return block; + } + + public static Block registerSign(String name, Block source) { + Block block = new BNSign(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, block); + addFuel(source, block); + BNRecipes.SIGNS.add(new BNRecipes.SingleInputRecipe(source, block)); + } + return block; + } + + public static Block registerBarrel(String name, Block source, Block slab) { + Block block = new BNBarrel(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, block); + addFuel(source, block); + BNRecipes.BARRELS.add(new BNRecipes.TwoInputRecipe(source, slab, block)); + } + return block; + } + + public static Block registerLadder(String name, Block source) { + Block block = new BNLadder(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, block); + addFuel(source, block); + BNRecipes.LADDERS.add(new BNRecipes.SingleInputRecipe(source, block)); + } + return block; + } + + public static Block registerTaburet(String name, Block source) { + Block block = new BNTaburet(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, block); + addFuel(source, block); + BNRecipes.TABURETS.add(new BNRecipes.SingleInputRecipe(source, block)); + } + return block; + } + + public static Block registerChair(String name, Block source) { + Block block = new BNNormalChair(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, block); + addFuel(source, block); + BNRecipes.CHAIRS.add(new BNRecipes.SingleInputRecipe(source, block)); + } + return block; + } + + public static Block registerBarStool(String name, Block source) { + Block block = new BNBarStool(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, block); + addFuel(source, block); + BNRecipes.BAR_STOOLS.add(new BNRecipes.SingleInputRecipe(source, block)); + } + return block; + } + + public static Block registerFurnace(String name, Block source) { + Block block = new BlockNetherFurnace(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, block); + BNRecipes.ROUND.add(new BNRecipes.SingleInputRecipe(source, block)); + } + return block; + } + + private static Block registerStalactite(String name, Block source) { + Block block = new BlockStalactite(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, block); + BNRecipes.TWOBYTWO.add(new BNRecipes.SingleInputRecipe(source, block, 1)); + } + return block; + } + + private static Block registerFireBowl(String name, Block source, Block inside, Item leg) { + Block block = new BlockFireBowl(source); + if (Configs.BLOCKS.getBoolean("blocks", name, true)) { + registerBlockDirectly(name, block); + BNRecipes.FIRE_BOWLS.add(new BNRecipes.FireBowlRecipe(source, inside, leg, block)); + } + return block; + } + + public static List getPossibleBlocks() { + return BLOCKS; + } +} diff --git a/src/main/java/redd90/betternether/registry/BrewingRegistry.java b/src/main/java/redd90/betternether/registry/BrewingRegistry.java new file mode 100644 index 0000000..a40523a --- /dev/null +++ b/src/main/java/redd90/betternether/registry/BrewingRegistry.java @@ -0,0 +1,66 @@ +package redd90.betternether.registry; + +import java.util.ArrayList; +import java.util.List; + +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.potion.Potion; +import net.minecraft.potion.PotionUtils; +import net.minecraft.potion.Potions; + + +public class BrewingRegistry { + private static final List RECIPES = new ArrayList(); + + public static void register() { + register(new ItemStack(BlocksRegistry.BARREL_CACTUS), new ItemStack(Items.GLASS_BOTTLE), makePotion(Potions.WATER)); + register(new ItemStack(BlocksRegistry.HOOK_MUSHROOM), makePotion(Potions.AWKWARD), makePotion(Potions.HEALING)); + } + + private static void register(ItemStack source, ItemStack bottle, ItemStack result) { + RECIPES.add(new BrewingRecipe(source, bottle, result)); + } + + private static ItemStack makePotion(Potion potion) { + return PotionUtils.addPotionToItemStack(new ItemStack(Items.POTION), potion); + } + + public static class BrewingRecipe { + private final ItemStack source; + private final ItemStack bottle; + private final ItemStack result; + + public BrewingRecipe(ItemStack source, ItemStack bottle, ItemStack result) { + this.source = source; + this.bottle = bottle; + this.result = result; + } + + public boolean isValid(ItemStack source, ItemStack bottle) { + return ItemStack.areItemsEqualIgnoreDurability(this.source, source) && ItemStack.areItemsEqualIgnoreDurability(this.bottle, bottle); + } + + public boolean isValid(ItemStack source) { + return ItemStack.areItemsEqualIgnoreDurability(this.source, source); + } + + public ItemStack getResult() { + return result; + } + } + + public static ItemStack getResult(ItemStack source, ItemStack bottle) { + for (BrewingRecipe recipe : RECIPES) + if (recipe.isValid(source, bottle)) + return recipe.getResult(); + return null; + } + + public static boolean isValidIngridient(ItemStack source) { + for (BrewingRecipe recipe : RECIPES) + if (recipe.isValid(source)) + return true; + return false; + } +} diff --git a/src/main/java/redd90/betternether/registry/EntityRegistry.java b/src/main/java/redd90/betternether/registry/EntityRegistry.java new file mode 100644 index 0000000..dada2d4 --- /dev/null +++ b/src/main/java/redd90/betternether/registry/EntityRegistry.java @@ -0,0 +1,186 @@ +package redd90.betternether.registry; + +import java.util.List; +import java.util.Map; +import java.util.Random; + +import com.google.common.collect.Lists; +import com.google.common.collect.Maps; + +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityClassification; +import net.minecraft.entity.EntitySpawnPlacementRegistry; +import net.minecraft.entity.EntityType; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.MobEntity; +import net.minecraft.entity.SpawnReason; +import net.minecraft.entity.ai.attributes.AttributeModifierMap; +import net.minecraft.entity.ai.attributes.GlobalEntityTypeAttributes; +import net.minecraft.entity.monster.AbstractSkeletonEntity; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorld; +import net.minecraft.world.gen.Heightmap; +import net.minecraftforge.event.RegistryEvent; +import net.minecraftforge.registries.DeferredRegister; +import net.minecraftforge.registries.ForgeRegistries; +import net.minecraftforge.registries.IForgeRegistry; +import redd90.betternether.BetterNether; +import redd90.betternether.entity.EntityChair; +import redd90.betternether.entity.EntityFlyingPig; +import redd90.betternether.entity.EntityHydrogenJellyfish; +import redd90.betternether.entity.EntityJungleSkeleton; +import redd90.betternether.entity.EntityNaga; +import redd90.betternether.entity.EntityNagaProjectile; +import redd90.betternether.entity.EntitySkull; + +public class EntityRegistry { + public static final Map, AttributeModifierMap> ATTRIBUTES = Maps.newHashMap(); + private static final List> NETHER_ENTITIES = Lists.newArrayList(); + + public static final DeferredRegister> DEFERRED = DeferredRegister.create(ForgeRegistries.ENTITIES, BetterNether.MOD_ID); + + public static final EntityType CHAIR = //registerEntity("chair", EntityTypeBuilder.create(EntityClassification.MISC, EntityChair::new).size(EntitySize.fixed(0.0F, 0.0F)).fireImmune().disableSummon().build(), EntityChair.getAttributeContainer()); + EntityType.Builder + .create(EntityChair::new, EntityClassification.MISC) + .size(0, 0) + .setUpdateInterval(3) + .setTrackingRange(5) + .disableSummoning() + .immuneToFire() + .setShouldReceiveVelocityUpdates(true) + .build(""); + + + public static final EntityType NAGA_PROJECTILE = //registerEntity("naga_projectile", EntityTypeBuilder.create(EntityClassification.MISC, EntityNagaProjectile::new).size(EntitySize.fixed(1F, 1F)).disableSummon().build()); + EntityType.Builder + .create(EntityNagaProjectile::new, EntityClassification.MISC) + .size(1f, 1f) + .setUpdateInterval(3) + .setTrackingRange(5) + .disableSummoning() + .setShouldReceiveVelocityUpdates(true) + .build(""); + + /* + * Firefly's renderer doesn't register properly + * + public static final EntityType FIREFLY = //registerEntity("firefly", EntityTypeBuilder.create(EntityClassification.AMBIENT, EntityFirefly::new).size(EntitySize.fixed(0.5F, 0.5F)).fireImmune().build(), EntityFirefly.getAttributeContainer()); + EntityType.Builder + .create(EntityFirefly::new, EntityClassification.AMBIENT) + .size(0.5f, 0.5f) + .setUpdateInterval(3) + .setTrackingRange(5) + .immuneToFire() + .setShouldReceiveVelocityUpdates(true) + .build(""); + */ + + public static final EntityType HYDROGEN_JELLYFISH = //registerEntity("hydrogen_jellyfish", EntityTypeBuilder.create(EntityClassification.AMBIENT, EntityHydrogenJellyfish::new).size(EntitySize.flexible(2F, 5F)).fireImmune().build(), EntityHydrogenJellyfish.getAttributeContainer()); + EntityType.Builder + .create(EntityHydrogenJellyfish::new, EntityClassification.AMBIENT) + .size(2f, 5f) + .setUpdateInterval(3) + .setTrackingRange(5) + .immuneToFire() + .setShouldReceiveVelocityUpdates(true) + .build(""); + + public static final EntityType NAGA = //registerEntity("naga", EntityTypeBuilder.create(EntityClassification.MONSTER, EntityNaga::new).size(EntitySize.fixed(0.625F, 2.75F)).fireImmune().build(), EntityNaga.getAttributeContainer()); + EntityType.Builder + .create(EntityNaga::new, EntityClassification.MONSTER) + .size(0.625f, 2.75f) + .setUpdateInterval(3) + .setTrackingRange(5) + .immuneToFire() + .setShouldReceiveVelocityUpdates(true) + .build(""); + + public static final EntityType FLYING_PIG = //registerEntity("flying_pig", EntityTypeBuilder.create(EntityClassification.AMBIENT, EntityFlyingPig::new).size(EntitySize.fixed(1.0F, 1.25F)).fireImmune().build(), EntityFlyingPig.getAttributeContainer()); + EntityType.Builder + .create(EntityFlyingPig::new, EntityClassification.AMBIENT) + .size(1.000f, 1.25f) + .setUpdateInterval(3) + .setTrackingRange(5) + .immuneToFire() + .setShouldReceiveVelocityUpdates(true) + .build(""); + + public static final EntityType JUNGLE_SKELETON = //registerEntity("jungle_skeleton", EntityTypeBuilder.create(EntityClassification.MONSTER, EntityJungleSkeleton::new).size(EntitySize.fixed(0.6F, 1.99F)).fireImmune().build(), AbstractSkeletonEntity.getAttributeContainer()); + EntityType.Builder + .create(EntityJungleSkeleton::new, EntityClassification.MONSTER) + .size(0.600f, 1.99f) + .setUpdateInterval(3) + .setTrackingRange(5) + .immuneToFire() + .setShouldReceiveVelocityUpdates(true) + .build(""); + + public static final EntityType SKULL = //registerEntity("skull", EntityTypeBuilder.create(EntityClassification.MONSTER, EntitySkull::new).size(EntitySize.fixed(0.625F, 0.625F)).fireImmune().build(), EntitySkull.getAttributeContainer()); + EntityType.Builder + .create(EntitySkull::new, EntityClassification.MONSTER) + .size(0.625f, 0.625f) + .setUpdateInterval(3) + .setTrackingRange(5) + .immuneToFire() + .setShouldReceiveVelocityUpdates(true) + .build(""); + + public static void registerAll(RegistryEvent.Register> evt) { + IForgeRegistry> r = evt.getRegistry(); + r.register(CHAIR.setRegistryName(new ResourceLocation(BetterNether.MOD_ID, "chair"))); + r.register(NAGA_PROJECTILE.setRegistryName(new ResourceLocation(BetterNether.MOD_ID, "naga_projectile"))); + //r.register(FIREFLY.setRegistryName(new ResourceLocation(BetterNether.MOD_ID, "firefly"))); + r.register(NAGA.setRegistryName(new ResourceLocation(BetterNether.MOD_ID, "naga"))); + r.register(FLYING_PIG.setRegistryName(new ResourceLocation(BetterNether.MOD_ID, "flying_pig"))); + r.register(JUNGLE_SKELETON.setRegistryName(new ResourceLocation(BetterNether.MOD_ID, "jungle_skeleton"))); + r.register(HYDROGEN_JELLYFISH.setRegistryName(new ResourceLocation(BetterNether.MOD_ID, "hydrogen_jellyfish"))); + r.register(SKULL.setRegistryName(new ResourceLocation(BetterNether.MOD_ID, "skull"))); + + registerEntityAttributes(); + registerSpawnPlacementData(); + } + + public static void registerSpawnPlacementData() { + EntitySpawnPlacementRegistry.register(NAGA, EntitySpawnPlacementRegistry.PlacementType.ON_GROUND, Heightmap.Type.MOTION_BLOCKING_NO_LEAVES, EntityNaga::canSpawn); + EntitySpawnPlacementRegistry.register(HYDROGEN_JELLYFISH, EntitySpawnPlacementRegistry.PlacementType.NO_RESTRICTIONS, Heightmap.Type.MOTION_BLOCKING_NO_LEAVES, EntityHydrogenJellyfish::canSpawn); + EntitySpawnPlacementRegistry.register(JUNGLE_SKELETON, EntitySpawnPlacementRegistry.PlacementType.ON_GROUND, Heightmap.Type.MOTION_BLOCKING_NO_LEAVES, EntityJungleSkeleton::canSpawn); + } + + public static void registerEntityAttributes() { + GlobalEntityTypeAttributes.put(CHAIR, EntityChair.getAttributeContainer()); + GlobalEntityTypeAttributes.put(NAGA_PROJECTILE, MobEntity.func_233666_p_().create()); + //GlobalEntityTypeAttributes.put(FIREFLY, EntityFirefly.getAttributeContainer()); + GlobalEntityTypeAttributes.put(NAGA, EntityNaga.getAttributeContainer()); + GlobalEntityTypeAttributes.put(FLYING_PIG, EntityFlyingPig.getAttributeContainer()); + GlobalEntityTypeAttributes.put(JUNGLE_SKELETON, AbstractSkeletonEntity.registerAttributes().create()); + GlobalEntityTypeAttributes.put(HYDROGEN_JELLYFISH, EntityHydrogenJellyfish.getAttributeContainer()); + GlobalEntityTypeAttributes.put(SKULL, EntitySkull.getAttributeContainer()); + } + + public static void registerNetherEntities() { + NETHER_ENTITIES.add(EntityType.GHAST); + NETHER_ENTITIES.add(EntityType.ZOMBIFIED_PIGLIN); + NETHER_ENTITIES.add(EntityType.PIGLIN); + NETHER_ENTITIES.add(EntityType.HOGLIN); + NETHER_ENTITIES.add(EntityType.BLAZE); + NETHER_ENTITIES.add(EntityType.STRIDER); + } + + public static EntityType registerEntity(String name, EntityType entity) { + DEFERRED.register(name, () -> entity); + ATTRIBUTES.put(entity, MobEntity.func_233666_p_().create()); + return entity; + } + + public static EntityType registerEntity(String name, EntityType entity, AttributeModifierMap container) { + DEFERRED.register(name, () -> entity); + ATTRIBUTES.put(entity, container); + return entity; + } + + public static boolean isNetherEntity(Entity entity) { + return NETHER_ENTITIES.contains(entity.getType()); + } +} + diff --git a/src/main/java/redd90/betternether/registry/EntityRenderRegistry.java b/src/main/java/redd90/betternether/registry/EntityRenderRegistry.java new file mode 100644 index 0000000..8f394bf --- /dev/null +++ b/src/main/java/redd90/betternether/registry/EntityRenderRegistry.java @@ -0,0 +1,18 @@ +package redd90.betternether.registry; + +import net.minecraftforge.fml.client.registry.RenderingRegistry; +import redd90.betternether.entity.render.*; + +public class EntityRenderRegistry { + public static void register() { + // Firefly is "bugged", something in the renderer doesn't allow it to register properly + //RenderingRegistry.registerEntityRenderingHandler(EntityRegistry.FIREFLY, RenderFirefly::new); + RenderingRegistry.registerEntityRenderingHandler(EntityRegistry.CHAIR, RenderChair::new); + RenderingRegistry.registerEntityRenderingHandler(EntityRegistry.HYDROGEN_JELLYFISH, RenderHydrogenJellyfish::new); + RenderingRegistry.registerEntityRenderingHandler(EntityRegistry.NAGA, RenderNaga::new); + RenderingRegistry.registerEntityRenderingHandler(EntityRegistry.NAGA_PROJECTILE, RenderNagaProjectile::new); + RenderingRegistry.registerEntityRenderingHandler(EntityRegistry.FLYING_PIG, RenderFlyingPig::new); + RenderingRegistry.registerEntityRenderingHandler(EntityRegistry.JUNGLE_SKELETON, RenderJungleSkeleton::new); + RenderingRegistry.registerEntityRenderingHandler(EntityRegistry.SKULL, RenderSkull::new); + } +} diff --git a/src/main/java/redd90/betternether/registry/FuelRegistry.java b/src/main/java/redd90/betternether/registry/FuelRegistry.java new file mode 100644 index 0000000..38eb7be --- /dev/null +++ b/src/main/java/redd90/betternether/registry/FuelRegistry.java @@ -0,0 +1,26 @@ +package redd90.betternether.registry; + +import java.util.HashMap; +import java.util.Map; + +import net.minecraft.item.ItemStack; +import net.minecraft.util.IItemProvider; +import net.minecraftforge.event.furnace.FurnaceFuelBurnTimeEvent; + +public class FuelRegistry { + + private static Map FUELS = new HashMap<>(); + + public static void onFuelBurnTimeEvent(FurnaceFuelBurnTimeEvent event) { + ItemStack stack = event.getItemStack(); + IItemProvider item = stack.getItem(); + if (FUELS.keySet().contains(item)) { + event.setBurnTime(FUELS.get(item)); + } + } + + public static void addFuel(IItemProvider item, int burnTime) { + FUELS.put(item, burnTime); + } + +} diff --git a/src/main/java/redd90/betternether/registry/ItemsRegistry.java b/src/main/java/redd90/betternether/registry/ItemsRegistry.java new file mode 100644 index 0000000..a34c76c --- /dev/null +++ b/src/main/java/redd90/betternether/registry/ItemsRegistry.java @@ -0,0 +1,201 @@ +package redd90.betternether.registry; + +import java.util.ArrayList; +import java.util.List; + +import org.apache.commons.lang3.tuple.Pair; + +import net.minecraft.block.DispenserBlock; +import net.minecraft.dispenser.DefaultDispenseItemBehavior; +import net.minecraft.dispenser.IBlockSource; +import net.minecraft.entity.EntityType; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.SpawnReason; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.inventory.EquipmentSlotType; +import net.minecraft.item.BlockItem; +import net.minecraft.item.Food; +import net.minecraft.item.Foods; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.item.ShearsItem; +import net.minecraft.item.SpawnEggItem; +import net.minecraft.potion.EffectInstance; +import net.minecraft.potion.Effects; +import net.minecraft.util.Direction; +import net.minecraft.util.ResourceLocation; +import net.minecraft.world.World; +import net.minecraftforge.event.RegistryEvent; +import net.minecraftforge.registries.IForgeRegistry; +import redd90.betternether.BetterNether; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.shapes.FoodShape; +import redd90.betternether.config.Configs; +import redd90.betternether.items.BNArmor; +import redd90.betternether.items.BNItemAxe; +import redd90.betternether.items.BNItemHoe; +import redd90.betternether.items.BNItemPickaxe; +import redd90.betternether.items.BNItemShovel; +import redd90.betternether.items.BNSword; +import redd90.betternether.items.ItemBlackApple; +import redd90.betternether.items.ItemBowlFood; +import redd90.betternether.items.materials.BNItemMaterials; +import redd90.betternether.tab.CreativeTab; + +public class ItemsRegistry { + private static final List ITEMS = new ArrayList(); + private static final List> MODITEMS = new ArrayList<>(); + + public static final ArrayList MOD_BLOCKS = new ArrayList(); + public static final ArrayList MOD_ITEMS = new ArrayList(); + + private static final int ALPHA = 255 << 24; + + + public static final Item BLACK_APPLE = registerItem("black_apple", new ItemBlackApple()); + + public static final Item STALAGNATE_BOWL = registerItem("stalagnate_bowl", new ItemBowlFood(null, FoodShape.NONE)); + public static final Item STALAGNATE_BOWL_WART = registerItem("stalagnate_bowl_wart", new ItemBowlFood(Foods.COOKED_CHICKEN, FoodShape.WART)); + public static final Item STALAGNATE_BOWL_MUSHROOM = registerItem("stalagnate_bowl_mushroom", new ItemBowlFood(Foods.MUSHROOM_STEW, FoodShape.MUSHROOM)); + public static final Item STALAGNATE_BOWL_APPLE = registerItem("stalagnate_bowl_apple", new ItemBowlFood(Foods.APPLE, FoodShape.APPLE)); + public static final Item HOOK_MUSHROOM = registerFood("hook_mushroom_cooked", 4, 0.4F); + + public static final Item CINCINNASITE = registerItem("cincinnasite", new Item(defaultSettings())); + public static final Item CINCINNASITE_INGOT = registerItem("cincinnasite_ingot", new Item(defaultSettings())); + + public static final Item CINCINNASITE_PICKAXE = registerItem("cincinnasite_pickaxe", new BNItemPickaxe(BNItemMaterials.CINCINNASITE_TOOLS, 512, 1F)); + public static final Item CINCINNASITE_PICKAXE_DIAMOND = registerItem("cincinnasite_pickaxe_diamond", new BNItemPickaxe(BNItemMaterials.CINCINNASITE_DIAMOND_TOOLS, 2048, 1.5F)); + public static final Item CINCINNASITE_AXE = registerItem("cincinnasite_axe", new BNItemAxe(BNItemMaterials.CINCINNASITE_TOOLS, 512, 1F)); + public static final Item CINCINNASITE_AXE_DIAMOND = registerItem("cincinnasite_axe_diamond", new BNItemAxe(BNItemMaterials.CINCINNASITE_DIAMOND_TOOLS, 2048, 1.5F)); + public static final Item CINCINNASITE_SHOVEL = registerItem("cincinnasite_shovel", new BNItemShovel(BNItemMaterials.CINCINNASITE_TOOLS, 512, 1F)); + public static final Item CINCINNASITE_SHOVEL_DIAMOND = registerItem("cincinnasite_shovel_diamond", new BNItemShovel(BNItemMaterials.CINCINNASITE_DIAMOND_TOOLS, 2048, 1.5F)); + public static final Item CINCINNASITE_HOE = registerItem("cincinnasite_hoe", new BNItemHoe(BNItemMaterials.CINCINNASITE_TOOLS, 512, 1F)); + public static final Item CINCINNASITE_HOE_DIAMOND = registerItem("cincinnasite_hoe_diamond", new BNItemHoe(BNItemMaterials.CINCINNASITE_DIAMOND_TOOLS, 2048, 1.5F)); + public static final Item CINCINNASITE_SHEARS = registerItem("cincinnasite_shears", new ShearsItem(defaultSettings().maxDamage(380))); + + public static final Item CINCINNASITE_HELMET = registerItem("cincinnasite_helmet", new BNArmor(BNItemMaterials.CINCINNASITE_ARMOR, EquipmentSlotType.HEAD)); + public static final Item CINCINNASITE_CHESTPLATE = registerItem("cincinnasite_chestplate", new BNArmor(BNItemMaterials.CINCINNASITE_ARMOR, EquipmentSlotType.CHEST)); + public static final Item CINCINNASITE_LEGGINGS = registerItem("cincinnasite_leggings", new BNArmor(BNItemMaterials.CINCINNASITE_ARMOR, EquipmentSlotType.LEGS)); + public static final Item CINCINNASITE_BOOTS = registerItem("cincinnasite_boots", new BNArmor(BNItemMaterials.CINCINNASITE_ARMOR, EquipmentSlotType.FEET)); + public static final Item CINCINNASITE_SWORD = registerItem("cincinnasite_sword", new BNSword(BNItemMaterials.CINCINNASITE_TOOLS, 512, 4, -2.4F)); + public static final Item CINCINNASITE_SWORD_DIAMOND = registerItem("cincinnasite_sword_diamond", new BNSword(BNItemMaterials.CINCINNASITE_DIAMOND_TOOLS, 2048, 5, -2.4F)); + + public static final Item NETHER_RUBY = registerItem("nether_ruby", new Item(defaultSettings())); + public static final Item NETHER_RUBY_PICKAXE = registerItem("nether_ruby_pickaxe", new BNItemPickaxe(BNItemMaterials.NETHER_RUBY_TOOLS, 512, 1F)); + public static final Item NETHER_RUBY_AXE = registerItem("nether_ruby_axe", new BNItemAxe(BNItemMaterials.NETHER_RUBY_TOOLS, 512, 1F)); + public static final Item NETHER_RUBY_SHOVEL = registerItem("nether_ruby_shovel", new BNItemShovel(BNItemMaterials.NETHER_RUBY_TOOLS, 512, 1F)); + public static final Item NETHER_RUBY_HOE = registerItem("nether_ruby_hoe", new BNItemHoe(BNItemMaterials.NETHER_RUBY_TOOLS, 512, 1F)); + public static final Item NETHER_RUBY_SWORD = registerItem("nether_ruby_sword", new BNSword(BNItemMaterials.NETHER_RUBY_TOOLS, 512, 4, -2.4F)); + public static final Item NETHER_RUBY_HELMET = registerItem("nether_ruby_helmet", new BNArmor(BNItemMaterials.NETHER_RUBY_ARMOR, EquipmentSlotType.HEAD)); + public static final Item NETHER_RUBY_CHESTPLATE = registerItem("nether_ruby_chestplate", new BNArmor(BNItemMaterials.NETHER_RUBY_ARMOR, EquipmentSlotType.CHEST)); + public static final Item NETHER_RUBY_LEGGINGS = registerItem("nether_ruby_leggings", new BNArmor(BNItemMaterials.NETHER_RUBY_ARMOR, EquipmentSlotType.LEGS)); + public static final Item NETHER_RUBY_BOOTS = registerItem("nether_ruby_boots", new BNArmor(BNItemMaterials.NETHER_RUBY_ARMOR, EquipmentSlotType.FEET)); + + /* + public static final Item CINCINNASITE_HAMMER = registerItem("cincinnasite_hammer", VanillaHammersIntegration.makeHammer(BNItemMaterials.CINCINNASITE_TOOLS, 4, -2.0F)); + public static final Item CINCINNASITE_HAMMER_DIAMOND = registerItem("cincinnasite_hammer_diamond", VanillaHammersIntegration.makeHammer(BNItemMaterials.CINCINNASITE_DIAMOND_TOOLS, 5, -2.0F)); + public static final Item NETHER_RUBY_HAMMER = registerItem("nether_ruby_hammer", VanillaHammersIntegration.makeHammer(BNItemMaterials.NETHER_RUBY_TOOLS, 5, -2.0F)); + + public static final Item CINCINNASITE_EXCAVATOR = registerItem("cincinnasite_excavator", VanillaExcavatorsIntegration.makeExcavator(BNItemMaterials.CINCINNASITE_TOOLS, 4, -2.0F)); + public static final Item CINCINNASITE_EXCAVATOR_DIAMOND = registerItem("cincinnasite_excavator_diamond", VanillaExcavatorsIntegration.makeExcavator(BNItemMaterials.CINCINNASITE_DIAMOND_TOOLS, 5, -2.0F)); + public static final Item NETHER_RUBY_EXCAVATOR = registerItem("nether_ruby_excavator", VanillaExcavatorsIntegration.makeExcavator(BNItemMaterials.NETHER_RUBY_TOOLS, 5, -2.0F)); + */ + + //public static final Item SPAWN_EGG_FIREFLY = registerItem("spawn_egg_firefly", makeEgg("firefly", EntityRegistry.FIREFLY, color(255, 223, 168), color(233, 182, 95))); + public static final Item SPAWN_EGG_JELLYFISH = registerItem("spawn_egg_hydrogen_jellyfish", makeEgg("hydrogen_jellyfish", EntityRegistry.HYDROGEN_JELLYFISH, color(253, 164, 24), color(88, 21, 4))); + public static final Item SPAWN_NAGA = registerItem("spawn_egg_naga", makeEgg("naga", EntityRegistry.NAGA, MHelper.color(12, 12, 12), MHelper.color(210, 90, 26))); + public static final Item SPAWN_FLYING_PIG = registerItem("spawn_egg_flying_pig", makeEgg("flying_pig", EntityRegistry.FLYING_PIG, MHelper.color(241, 140, 93), MHelper.color(176, 58, 47))); + public static final Item SPAWN_JUNGLE_SKELETON = registerItem("spawn_egg_jungle_skeleton", makeEgg("jungle_skeleton", EntityRegistry.JUNGLE_SKELETON, MHelper.color(134, 162, 149), MHelper.color(6, 111, 79))); + public static final Item SPAWN_SKULL = registerItem("spawn_egg_skull", makeEgg("skull", EntityRegistry.SKULL, MHelper.color(24, 19, 19), MHelper.color(255, 28, 18))); + + public static final Item GLOWSTONE_PILE = registerItem("glowstone_pile", new Item(defaultSettings())); + public static final Item LAPIS_PILE = registerItem("lapis_pile", new Item(defaultSettings())); + + public static final Item AGAVE_LEAF = registerItem("agave_leaf", new Item(defaultSettings())); + public static final Item AGAVE_MEDICINE = registerMedicine("agave_medicine", 40, 2, true); + public static final Item HERBAL_MEDICINE = registerMedicine("herbal_medicine", 10, 5, true); + + + public static void registerAll(RegistryEvent.Register e) { + IForgeRegistry r = e.getRegistry(); + + for (Pair item : MODITEMS) { + r.register(item.getRight().setRegistryName(new ResourceLocation(BetterNether.MOD_ID, item.getLeft()))); + } + } + + public static Item registerItem(String name, Item item) { + MODITEMS.add(Pair.of(name, item)); +// if ((item instanceof BlockItem || Configs.ITEMS.getBoolean("items", name, true)) && item != Items.AIR) { +// DEFERRED.register(name, () -> item); + if (item instanceof BlockItem) + MOD_BLOCKS.add(item); + else + MOD_ITEMS.add(item); +// } + if (!(item instanceof BlockItem)) + ITEMS.add(name); + return item; + } + + public static Item registerFood(String name, int hunger, float saturationMultiplier) { + return registerItem(name, new Item(defaultSettings().food(new Food.Builder().hunger(hunger).saturation(saturationMultiplier).build()))); + } + + public static Item registerMedicine(String name, int ticks, int power, boolean bowl) { + if (bowl) { + Item item = new Item(defaultSettings().food(new Food.Builder().effect(() -> new EffectInstance(Effects.REGENERATION, ticks, power), 1).build())) { + @Override + public ItemStack onItemUseFinish(ItemStack stack, World world, LivingEntity user) { + if (stack.getCount() == 1) { + super.onItemUseFinish(stack, world, user); + return new ItemStack(ItemsRegistry.STALAGNATE_BOWL, stack.getCount()); + } + else { + if (user instanceof PlayerEntity) { + PlayerEntity player = (PlayerEntity) user; + if (!player.isCreative()) + player.addItemStackToInventory(new ItemStack(ItemsRegistry.STALAGNATE_BOWL)); + } + return super.onItemUseFinish(stack, world, user); + } + } + }; + return registerItem(name, item); + } + return registerItem(name, new Item(defaultSettings().food(new Food.Builder().effect(() -> new EffectInstance(Effects.REGENERATION, ticks, power), 1).build()))); + } + + public static Item.Properties defaultSettings() { + return new Item.Properties().group(CreativeTab.BN_TAB); + } + + private static Item makeEgg(String name, EntityType type, int background, int dots) { + if (Configs.MOBS.getBoolean("mobs", name, true)) { + SpawnEggItem item = new SpawnEggItem(type, background, dots, defaultSettings()); + DefaultDispenseItemBehavior behavior = new DefaultDispenseItemBehavior() { + public ItemStack dispenseSilently(IBlockSource pointer, ItemStack stack) { + Direction direction = (Direction) pointer.getBlockState().get(DispenserBlock.FACING); + EntityType entityType = ((SpawnEggItem) stack.getItem()).getType(stack.getTag()); + entityType.spawn(pointer.getWorld(), stack, (PlayerEntity) null, pointer.getBlockPos().offset(direction), SpawnReason.DISPENSER, direction != Direction.UP, false); + stack.shrink(1); + return stack; + } + }; + DispenserBlock.registerDispenseBehavior(item, behavior); + return item; + } + else { + return Items.AIR; + } + } + + private static int color(int r, int g, int b) { + return ALPHA | (r << 16) | (g << 8) | b; + } + + public static List getPossibleItems() { + return ITEMS; + } +} diff --git a/src/main/java/redd90/betternether/registry/NetherBiomesRegistry.java b/src/main/java/redd90/betternether/registry/NetherBiomesRegistry.java new file mode 100644 index 0000000..1a5829f --- /dev/null +++ b/src/main/java/redd90/betternether/registry/NetherBiomesRegistry.java @@ -0,0 +1,225 @@ +package redd90.betternether.registry; + +import java.util.ArrayList; +import java.util.Iterator; +import java.util.Map; +import java.util.Random; + +import com.google.common.collect.Maps; + +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.registry.Registry; +import net.minecraft.world.biome.Biome; +import net.minecraft.world.biome.Biome.Category; +import net.minecraftforge.event.RegistryEvent; +import net.minecraftforge.registries.ForgeRegistries; +import net.minecraftforge.registries.IForgeRegistry; +import net.minecraftforge.registries.RegistryBuilder; +import redd90.betternether.BetterNether; +import redd90.betternether.biomes.*; +import redd90.betternether.config.Config; +import redd90.betternether.config.Configs; + +public class NetherBiomesRegistry { + + public static IForgeRegistry REGISTRY; + public static final ArrayList ALL_BIOMES = new ArrayList<>(); + public static final Map MUTABLE = Maps.newHashMap(); + private static final ArrayList GENERATOR = new ArrayList(); + + public static final NetherBiome BIOME_EMPTY_NETHER = new NetherBiomeWrapper(new ResourceLocation("nether_wastes")); + public static final NetherBiome BIOME_CRIMSON_FOREST = new NetherBiomeWrapper(new ResourceLocation("crimson_forest")); + public static final NetherBiome BIOME_WARPED_FOREST = new NetherBiomeWrapper(new ResourceLocation("warped_forest")); + public static final NetherBiome BIOME_BASALT_DELTAS = new NetherBiomeWrapper(new ResourceLocation("basalt_deltas")); + + public static final NetherBiome BIOME_GRAVEL_DESERT = new NetherGravelDesert("Gravel Desert"); + public static final NetherBiome BIOME_NETHER_JUNGLE = new NetherJungle("Nether Jungle"); + public static final NetherBiome BIOME_WART_FOREST = new NetherWartForest("Wart Forest"); + public static final NetherBiome BIOME_GRASSLANDS = new NetherGrasslands("Nether Grasslands"); + public static final NetherBiome BIOME_MUSHROOM_FOREST = new NetherMushroomForest("Nether Mushroom Forest"); + public static final NetherBiome BIOME_MUSHROOM_FOREST_EDGE = new NetherMushroomForestEdge("Nether Mushroom Forest Edge"); + public static final NetherBiome BIOME_WART_FOREST_EDGE = new NetherWartForestEdge("Wart Forest Edge"); + public static final NetherBiome BIOME_BONE_REEF = new NetherBoneReef("Bone Reef"); + public static final NetherBiome BIOME_SULFURIC_BONE_REEF = new NetherSulfuricBoneReef("Sulfuric Bone Reef"); + public static final NetherBiome BIOME_POOR_GRASSLANDS = new NetherPoorGrasslands("Poor Nether Grasslands"); + public static final NetherBiome NETHER_SWAMPLAND = new NetherSwampland("Nether Swampland"); + public static final NetherBiome NETHER_SWAMPLAND_TERRACES = new NetherSwamplandTerraces("Nether Swampland Terraces"); + public static final NetherBiome MAGMA_LAND = new NetherMagmaLand("Magma Land"); + public static final NetherBiome SOUL_PLAIN = new NetherSoulPlain("Soul Plain"); + public static final NetherBiome CRIMSON_GLOWING_WOODS = new CrimsonGlowingWoods("Crimson Glowing Woods"); + public static final NetherBiome OLD_WARPED_WOODS = new OldWarpedWoods("Old Warped Woods"); + public static final NetherBiome CRIMSON_PINEWOOD = new CrimsonPinewood("Crimson Pinewood"); + public static final NetherBiome OLD_FUNGIWOODS = new OldFungiwoods("Old Fungiwoods"); + public static final NetherBiome FLOODED_DELTAS = new FloodedDeltas("Flooded Deltas"); + public static final NetherBiome UPSIDE_DOWN_FOREST = new UpsideDownForest("Upside Down Forest"); + public static final NetherBiome OLD_SWAMPLAND = new OldSwampland("Old Swampland"); + + private static int maxDefChance = 0; + private static int maxChance = 0; + + public static void init() { + ForgeRegistries.BIOMES.forEach((biome) -> { + if (biome.getCategory() == Category.NETHER) { + ResourceLocation id = ForgeRegistries.BIOMES.getKey(biome); + Configs.GENERATOR.getFloat("biomes." + id.getNamespace() + ".main", id.getPath() + "_chance", 1); + } + }); + + registerNetherBiome(BIOME_GRAVEL_DESERT); + registerNetherBiome(BIOME_NETHER_JUNGLE); + + registerNetherBiome(BIOME_EMPTY_NETHER); + registerNetherBiome(BIOME_CRIMSON_FOREST); + registerNetherBiome(BIOME_WARPED_FOREST); + registerNetherBiome(BIOME_BASALT_DELTAS); + registerNetherBiome(BIOME_WART_FOREST); + registerNetherBiome(BIOME_GRASSLANDS); + registerNetherBiome(BIOME_MUSHROOM_FOREST); + registerEdgeBiome(BIOME_MUSHROOM_FOREST_EDGE, BIOME_MUSHROOM_FOREST, 2); + registerEdgeBiome(BIOME_WART_FOREST_EDGE, BIOME_WART_FOREST, 2); + registerNetherBiome(BIOME_BONE_REEF); + registerSubBiome(BIOME_SULFURIC_BONE_REEF, BIOME_BONE_REEF, 0.3F); + registerSubBiome(BIOME_POOR_GRASSLANDS, BIOME_GRASSLANDS, 0.3F); + registerNetherBiome(NETHER_SWAMPLAND); + registerSubBiome(NETHER_SWAMPLAND_TERRACES, NETHER_SWAMPLAND, 1F); + registerNetherBiome(MAGMA_LAND); + registerSubBiome(SOUL_PLAIN, BIOME_WART_FOREST, 1F); + registerSubBiome(CRIMSON_GLOWING_WOODS, BIOME_CRIMSON_FOREST, 0.3F); + registerSubBiome(OLD_WARPED_WOODS, BIOME_WARPED_FOREST, 1F); + registerSubBiome(CRIMSON_PINEWOOD, BIOME_CRIMSON_FOREST, 0.3F); + registerSubBiome(OLD_FUNGIWOODS, BIOME_MUSHROOM_FOREST, 0.3F); + registerSubBiome(FLOODED_DELTAS, BIOME_BASALT_DELTAS, 1F); + registerNetherBiome(UPSIDE_DOWN_FOREST); + registerSubBiome(OLD_SWAMPLAND, NETHER_SWAMPLAND, 1F); + } + + public static void registerNetherBiomes(RegistryEvent.Register e) { + IForgeRegistry r = e.getRegistry(); + for (NetherBiome nb : ALL_BIOMES) { + if (nb.getRegistryName() == null) { + nb.setRegistryName(nb.getID()); + } + r.register(nb); + } + } + + public static void registerBiomes(RegistryEvent.Register e) { + IForgeRegistry r = e.getRegistry(); + for (NetherBiome nb : ALL_BIOMES) { + if (!ForgeRegistries.BIOMES.containsKey(nb.getID())) { + nb.getBiome().setRegistryName(nb.getID()); + r.register(nb.getBiome()); + } + } + } + + public static void createRegistry(RegistryEvent.NewRegistry e) { + RegistryBuilder r = new RegistryBuilder(); + r.setName(new ResourceLocation(BetterNether.MOD_ID, "nether_biomes")); + r.setType(NetherBiome.class); + REGISTRY = r.create(); + } + + public static void mapBiomes(Registry biomeRegistry) { + GENERATOR.clear(); + GENERATOR.addAll(REGISTRY.getValues()); + + MUTABLE.clear(); + for (NetherBiome netherBiome : NetherBiomesRegistry.getAllBiomes()) { + Biome biome = biomeRegistry.getOrDefault(netherBiome.getID()); + netherBiome.setActualBiome(biome); + MUTABLE.put(biome, netherBiome); + } + + if (maxDefChance == 0) maxDefChance = maxChance; + maxChance = maxDefChance; + + Iterator iterator = biomeRegistry.iterator(); + while (iterator.hasNext()) { + Biome biome = iterator.next(); + if (biome.getCategory() == Category.NETHER && !MUTABLE.containsKey(biome)) { + ResourceLocation id = biomeRegistry.getKey(biome); + NetherBiome netherBiome = new NetherBiomeWrapper(biomeRegistry.getKey(biome), biome); + netherBiome.setActualBiome(biome); + MUTABLE.put(biome, netherBiome); + + float chance = Configs.GENERATOR.getFloat("biomes." + id.getNamespace() + ".main", id.getPath() + "_chance", 1); + if (chance > 0.0F) { + maxChance += chance; + netherBiome.setGenChance(maxChance); + String path = "generator.biome." + netherBiome.getID().getNamespace() + "." + netherBiome.getID().getPath(); + netherBiome.setPlantDensity(Configs.BIOMES.getFloat(path, "plants_and_structures_density", 1)); + netherBiome.build(); + GENERATOR.add(netherBiome); + } + } + } + + Config.save(); + } + + private static void register(NetherBiome biome) { + if (ForgeRegistries.BIOMES.getKeys().contains(biome.getID())) { + biome.getBiome().setRegistryName(biome.getID()); + ForgeRegistries.BIOMES.register(biome.getBiome()); + } + } + + public static void registerNetherBiome(NetherBiome biome) { + float chance = Configs.GENERATOR.getFloat("biomes." + biome.getID().getNamespace() + ".main", biome.getID().getPath() + "_chance", 1); + if (chance > 0.0F) { + maxChance += chance; + String path = "generator.biome." + biome.getID().getNamespace() + "." + biome.getID().getPath(); + biome.setPlantDensity(Configs.BIOMES.getFloat(path, "plants_and_structures_density", 1)); + biome.setGenChance(maxChance); + biome.build(); + biome.setRegistryName(biome.getID()); + ALL_BIOMES.add(biome); + } + } + + public static void registerEdgeBiome(NetherBiome biome, NetherBiome mainBiome, int size) { + String regName = biome.getRawBiomeRegistryName(); + float sizeConf = Configs.GENERATOR.getFloat("biomes.betternether.edge", regName + "_size", size); + if (sizeConf > 0.0F) { + String path = "generator.biome." + biome.getID().getNamespace() + "." + biome.getID().getPath(); + biome.setPlantDensity(Configs.BIOMES.getFloat(path, "plants_and_structures_density", 1)); + mainBiome.setEdge(biome); + mainBiome.setEdgeSize(sizeConf); + biome.build(); + ALL_BIOMES.add(biome); + } + } + + public static void registerSubBiome(NetherBiome biome, NetherBiome mainBiome, float chance) { + String regName = biome.getRawBiomeRegistryName(); + chance = Configs.GENERATOR.getFloat("biomes.betternether.variation", regName + "_chance", chance); + if (chance > 0.0F) { + String path = "generator.biome." + biome.getID().getNamespace() + "." + biome.getID().getPath(); + biome.setPlantDensity(Configs.BIOMES.getFloat(path, "plants_and_structures_density", 1)); + mainBiome.addSubBiome(biome, chance); + biome.build(); + ALL_BIOMES.add(biome); + } + } + + public static NetherBiome getBiome(Random random) { + float chance = random.nextFloat() * maxChance; + for (NetherBiome biome : GENERATOR) + if (biome.canGenerate(chance)) + return biome; + return BIOME_EMPTY_NETHER; + } + + public static NetherBiome getFromBiome(Biome biome) { + return MUTABLE.getOrDefault(biome, BIOME_EMPTY_NETHER); + } + + public static ArrayList getRegisteredBiomes() { + return new ArrayList(REGISTRY.getValues()); + } + + public static ArrayList getAllBiomes() { + return ALL_BIOMES; + } +} diff --git a/src/main/java/redd90/betternether/registry/SoundsRegistry.java b/src/main/java/redd90/betternether/registry/SoundsRegistry.java new file mode 100644 index 0000000..7e98dce --- /dev/null +++ b/src/main/java/redd90/betternether/registry/SoundsRegistry.java @@ -0,0 +1,40 @@ +package redd90.betternether.registry; + +import java.util.ArrayList; +import java.util.List; + +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.SoundEvent; +import net.minecraftforge.event.RegistryEvent; +import net.minecraftforge.registries.IForgeRegistry; +import redd90.betternether.BetterNether; + +public class SoundsRegistry { + private static final List SOUNDS = new ArrayList<>(); + + public static final SoundEvent AMBIENT_MUSHROOM_FOREST = register("betternether.ambient.mushroom_forest"); + public static final SoundEvent AMBIENT_GRAVEL_DESERT = register("betternether.ambient.gravel_desert"); + public static final SoundEvent AMBIENT_NETHER_JUNGLE = register("betternether.ambient.nether_jungle"); + public static final SoundEvent AMBIENT_SWAMPLAND = register("betternether.ambient.swampland"); + + public static final SoundEvent MOB_FIREFLY_FLY = register("betternether.mob.firefly.fly"); + public static final SoundEvent MOB_JELLYFISH = register("betternether.mob.jellyfish"); + public static final SoundEvent MOB_NAGA_IDLE = register("betternether.mob.naga_idle"); + public static final SoundEvent MOB_NAGA_ATTACK = register("betternether.mob.naga_attack"); + public static final SoundEvent MOB_SKULL_FLIGHT = register("betternether.mob.skull_flight"); + + private static SoundEvent register(String id) { + ResourceLocation loc = new ResourceLocation(BetterNether.MOD_ID, id); + SoundEvent sound = new SoundEvent(loc); + sound.setRegistryName(loc); + SOUNDS.add(sound); + return sound; + } + + public static void registerAll(RegistryEvent.Register e) { + IForgeRegistry r = e.getRegistry(); + for (SoundEvent s : SOUNDS) { + r.register(s); + } + } +} diff --git a/src/main/java/redd90/betternether/registry/StructureRegistry.java b/src/main/java/redd90/betternether/registry/StructureRegistry.java new file mode 100644 index 0000000..5601576 --- /dev/null +++ b/src/main/java/redd90/betternether/registry/StructureRegistry.java @@ -0,0 +1,119 @@ +package redd90.betternether.registry; + +import java.util.Map; +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.Maps; + +import net.minecraft.world.gen.FlatGenerationSettings; +import net.minecraft.world.gen.GenerationStage; +import net.minecraft.world.gen.feature.Feature; +import net.minecraft.world.gen.feature.IFeatureConfig; +import net.minecraft.world.gen.feature.NoFeatureConfig; +import net.minecraft.world.gen.feature.structure.Structure; +import net.minecraft.world.gen.settings.DimensionStructuresSettings; +import net.minecraft.world.gen.settings.StructureSeparationSettings; +import net.minecraftforge.fml.RegistryObject; +import net.minecraftforge.registries.DeferredRegister; +import net.minecraftforge.registries.ForgeRegistries; +import redd90.betternether.BetterNether; +import redd90.betternether.config.Configs; +import redd90.betternether.structures.IStructure; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.plants.*; +import redd90.betternether.world.structures.CityFeature; +import redd90.betternether.structures.decorations.*; + +public class StructureRegistry { + private static final Map> REGISTRY; + + private static final int cityDistance = Configs.GENERATOR.getInt("generator.world.cities", "distance", 64); + private static final int citySeparation = cityDistance >> 1; + + public static final DeferredRegister> DEFERRED_STRUCTURES = DeferredRegister.create(ForgeRegistries.STRUCTURE_FEATURES, BetterNether.MOD_ID); + public static final DeferredRegister> DEFERRED_FEATURES = DeferredRegister.create(ForgeRegistries.FEATURES, BetterNether.MOD_ID); + + public static final Structure CITY = registerStructure("nether_city", new CityFeature(), GenerationStage.Decoration.RAW_GENERATION, new StructureSeparationSettings(cityDistance, citySeparation, 1234)); + + public static > S registerStructure(String name, S structure, GenerationStage.Decoration stage, StructureSeparationSettings separation) { + RegistryObject entry = DEFERRED_STRUCTURES.register(name, () -> structure); + S struct = entry.get(); + Structure.NAME_STRUCTURE_BIMAP.put(name, struct); + Structure.STRUCTURE_DECORATION_STAGE_MAP.put(struct, stage); + DimensionStructuresSettings.field_236191_b_ = ImmutableMap., StructureSeparationSettings>builder().putAll(DimensionStructuresSettings.field_236191_b_).put(struct, separation).build(); + FlatGenerationSettings.STRUCTURES.put(structure, structure.withConfiguration(IFeatureConfig.NO_FEATURE_CONFIG)); + return struct; + } + + public static void registerFeature(String name, IStructure structure, StructureType type) { + REGISTRY.get(type).put(name, structure); + } + + public static IStructure getStructure(String name, StructureType type) { + return REGISTRY.get(type).get(name); + } + + static { + REGISTRY = Maps.newHashMap(); + for (StructureType type : StructureType.values()) { + Map list = Maps.newHashMap(); + REGISTRY.put(type, list); + } + + registerFeature("agave", new StructureAgave(), StructureType.FLOOR); + registerFeature("barrel_cactus", new StructureBarrelCactus(), StructureType.FLOOR); + registerFeature("big_warped_tree", new StructureBigWarpedTree(), StructureType.FLOOR); + registerFeature("black_apple", new StructureBlackApple(), StructureType.FLOOR); + registerFeature("black_bush", new StructureBlackBush(), StructureType.FLOOR); + registerFeature("bone_reef", new StructureBoneReef(), StructureType.FLOOR); + registerFeature("bush_rubeus", new StructureRubeusBush(), StructureType.FLOOR); + registerFeature("crimson_fungus", new StructureCrimsonFungus(), StructureType.FLOOR); + registerFeature("crimson_glowing_tree", new StructureCrimsonGlowingTree(), StructureType.FLOOR); + registerFeature("crimson_pinewood", new StructureCrimsonPinewood(), StructureType.FLOOR); + registerFeature("crimson_roots", new StructureCrimsonRoots(), StructureType.FLOOR); + registerFeature("egg_plant", new StructureEggPlant(), StructureType.FLOOR); + registerFeature("geyser", new StructureGeyser(), StructureType.FLOOR); + registerFeature("giant_mold", new StructureGiantMold(), StructureType.FLOOR); + registerFeature("gray_mold", new StructureGrayMold(), StructureType.FLOOR); + registerFeature("ink_bush", new StructureInkBush(), StructureType.FLOOR); + registerFeature("jungle_plant", new StructureJunglePlant(), StructureType.FLOOR); + registerFeature("large_brown_mushroom", new StructureMedBrownMushroom(), StructureType.FLOOR); + registerFeature("large_red_mushroom", new StructureMedRedMushroom(), StructureType.FLOOR); + registerFeature("magma_flower", new StructureMagmaFlower(), StructureType.FLOOR); + registerFeature("mushroom_fir", new StructureMushroomFir(), StructureType.FLOOR); + registerFeature("nether_cactus", new StructureNetherCactus(), StructureType.FLOOR); + registerFeature("nether_grass", new StructureNetherGrass(), StructureType.FLOOR); + registerFeature("swamp_grass", new StructureSwampGrass(), StructureType.FLOOR); + registerFeature("nether_reed", new StructureReeds(), StructureType.FLOOR); + registerFeature("nether_wart", new StructureNetherWart(), StructureType.FLOOR); + registerFeature("obsidian_crystals", new StructureCrystal(), StructureType.FLOOR); + registerFeature("old_brown_mushrooms", new StructureOldBrownMushrooms(), StructureType.FLOOR); + registerFeature("old_red_mushrooms", new StructureOldRedMushrooms(), StructureType.FLOOR); + registerFeature("orange_mushroom", new StructureOrangeMushroom(), StructureType.FLOOR); + registerFeature("red_mold", new StructureRedMold(), StructureType.FLOOR); + registerFeature("rubeus_tree", new StructureRubeus(), StructureType.FLOOR); + registerFeature("smoker", new StructureSmoker(), StructureType.FLOOR); + registerFeature("soul_grass", new StructureSoulGrass(), StructureType.FLOOR); + registerFeature("soul_lily", new StructureSoulLily(), StructureType.FLOOR); + registerFeature("soul_vein", new StructureSoulVein(), StructureType.FLOOR); + registerFeature("stalagnate", new StructureStalagnate(), StructureType.FLOOR); + registerFeature("twisted_vine", new StructureTwistedVines(), StructureType.FLOOR); + registerFeature("vanilla_mushrooms", new StructureVanillaMushroom(), StructureType.FLOOR); + registerFeature("warped_fungus", new StructureWarpedFungus(), StructureType.FLOOR); + registerFeature("warped_roots", new StructureWarpedRoots(), StructureType.FLOOR); + registerFeature("wart_bush", new StructureWartBush(), StructureType.FLOOR); + registerFeature("wart_deadwood", new StructureWartDeadwood(), StructureType.FLOOR); + registerFeature("wart_seed", new StructureWartSeed(), StructureType.FLOOR); + registerFeature("wart_tree", new StructureWartTree(), StructureType.FLOOR); + registerFeature("willow", new StructureWillow(), StructureType.FLOOR); + + registerFeature("black_vine", new StructureBlackVine(), StructureType.CEIL); + registerFeature("eye", new StructureEye(), StructureType.CEIL); + registerFeature("flowered_vine", new StructureBloomingVine(), StructureType.CEIL); + registerFeature("golden_vine", new StructureGoldenVine(), StructureType.CEIL); + + registerFeature("lucis", new StructureLucis(), StructureType.WALL); + registerFeature("wall_brown_mushroom", new StructureWallBrownMushroom(), StructureType.WALL); + registerFeature("wall_moss", new StructureWallMoss(), StructureType.WALL); + registerFeature("wall_red_mushroom", new StructureWallRedMushroom(), StructureType.WALL); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/registry/TileEntitiesRegistry.java b/src/main/java/redd90/betternether/registry/TileEntitiesRegistry.java new file mode 100644 index 0000000..3f4bbdb --- /dev/null +++ b/src/main/java/redd90/betternether/registry/TileEntitiesRegistry.java @@ -0,0 +1,96 @@ +package redd90.betternether.registry; + +import java.util.ArrayList; +import java.util.List; + +import org.apache.commons.lang3.tuple.Pair; + +import net.minecraft.block.Block; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.tileentity.TileEntityType; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.event.RegistryEvent; +import net.minecraftforge.registries.DeferredRegister; +import net.minecraftforge.registries.ForgeRegistries; +import net.minecraftforge.registries.IForgeRegistry; +import redd90.betternether.BetterNether; +import redd90.betternether.blocks.BNBarrel; +import redd90.betternether.blocks.BNChest; +import redd90.betternether.blocks.BNSign; +import redd90.betternether.blocks.BlockNetherFurnace; +import redd90.betternether.tileentities.BNBarrelTileEntity; +import redd90.betternether.tileentities.BNBrewingStandTileEntity; +import redd90.betternether.tileentities.BNChestTileEntity; +import redd90.betternether.tileentities.BNSignTileEntity; +import redd90.betternether.tileentities.TileEntityChestOfDrawers; +import redd90.betternether.tileentities.TileEntityForge; +import redd90.betternether.tileentities.TileEntityFurnace; + +public class TileEntitiesRegistry { + + public static final DeferredRegister> DEFERRED = DeferredRegister.create(ForgeRegistries.TILE_ENTITIES, BetterNether.MOD_ID); + + private static final List>> MODTILES = new ArrayList<>(); + + public static final TileEntityType CINCINNASITE_FORGE = registerTileEntity("forge", TileEntityType.Builder.create(TileEntityForge::new, BlocksRegistry.CINCINNASITE_FORGE).build(null)); + public static final TileEntityType NETHERRACK_FURNACE = registerTileEntity("furnace",TileEntityType.Builder.create(TileEntityFurnace::new, getFurnaces()).build(null)); + public static final TileEntityType CHEST_OF_DRAWERS = registerTileEntity("chest_of_drawers",TileEntityType.Builder.create(TileEntityChestOfDrawers::new, BlocksRegistry.CHEST_OF_DRAWERS).build(null)); + public static final TileEntityType NETHER_BREWING_STAND = registerTileEntity("nether_brewing_stand",TileEntityType.Builder.create(BNBrewingStandTileEntity::new, BlocksRegistry.NETHER_BREWING_STAND).build(null)); + public static final TileEntityType CHEST = registerTileEntity("chest",TileEntityType.Builder.create(BNChestTileEntity::new, getChests()).build(null)); + public static final TileEntityType BARREL = registerTileEntity("barrel",TileEntityType.Builder.create(BNBarrelTileEntity::new, getBarrels()).build(null)); + public static final TileEntityType SIGN = registerTileEntity("sign",TileEntityType.Builder.create(BNSignTileEntity::new, getSigns()).build(null)); + + public static TileEntityType registerTileEntity(String name, TileEntityType type) { + MODTILES.add(Pair.of(name, type)); + return type; + } + + public static void registerAll(RegistryEvent.Register> e) { + IForgeRegistry> r = e.getRegistry(); + + for (Pair> tile : MODTILES) { + r.register(tile.getRight().setRegistryName(new ResourceLocation(BetterNether.MOD_ID, tile.getLeft()))); + } + } + + private static Block[] getChests() { + List result = new ArrayList(); + BlocksRegistry.getPossibleBlocks().forEach((block) -> { + //Block block = ForgeRegistries.BLOCKS.getValue(source.getRegistryName()); + if (block instanceof BNChest) + result.add(block); + }); + return result.toArray(new Block[] {}); + } + + private static Block[] getBarrels() { + List result = new ArrayList(); + BlocksRegistry.getPossibleBlocks().forEach((block) -> { + //Block block = ForgeRegistries.BLOCKS.getValue(source.getRegistryName()); + if (block instanceof BNBarrel) + result.add(block); + }); + return result.toArray(new Block[] {}); + } + + private static Block[] getSigns() { + List result = new ArrayList(); + BlocksRegistry.getPossibleBlocks().forEach((block) -> { + //Block block = ForgeRegistries.BLOCKS.getValue(source.getRegistryName()); + if (block instanceof BNSign) + result.add(block); + }); + return result.toArray(new Block[] {}); + } + + private static Block[] getFurnaces() { + List result = new ArrayList(); + BlocksRegistry.getPossibleBlocks().forEach((block) -> { + //Block block = ForgeRegistries.BLOCKS.getValue(source.getRegistryName()); + if (block instanceof BlockNetherFurnace) + result.add(block); + }); + return result.toArray(new Block[] {}); + } +} + diff --git a/src/main/java/redd90/betternether/registry/TileEntityRenderRegistry.java b/src/main/java/redd90/betternether/registry/TileEntityRenderRegistry.java new file mode 100644 index 0000000..5f96548 --- /dev/null +++ b/src/main/java/redd90/betternether/registry/TileEntityRenderRegistry.java @@ -0,0 +1,12 @@ +package redd90.betternether.registry; + +import net.minecraftforge.fml.client.registry.ClientRegistry; +import redd90.betternether.tileentities.render.BNChestTileEntityRenderer; +import redd90.betternether.tileentities.render.BNSignTileEntityRenderer; + +public class TileEntityRenderRegistry { + public static void register() { + ClientRegistry.bindTileEntityRenderer(TileEntitiesRegistry.CHEST, BNChestTileEntityRenderer::new); + ClientRegistry.bindTileEntityRenderer(TileEntitiesRegistry.SIGN, BNSignTileEntityRenderer::new); + } +} diff --git a/src/main/java/redd90/betternether/structures/IStructure.java b/src/main/java/redd90/betternether/structures/IStructure.java new file mode 100644 index 0000000..86bf435 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/IStructure.java @@ -0,0 +1,10 @@ +package redd90.betternether.structures; + +import java.util.Random; + +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; + +public interface IStructure { + public void generate(IServerWorld world, BlockPos pos, Random random); +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/StructureCaves.java b/src/main/java/redd90/betternether/structures/StructureCaves.java new file mode 100644 index 0000000..2eb435f --- /dev/null +++ b/src/main/java/redd90/betternether/structures/StructureCaves.java @@ -0,0 +1,111 @@ +package redd90.betternether.structures; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.noise.OpenSimplexNoise; + +public class StructureCaves implements IStructure { + private static final boolean[][][] MASK = new boolean[16][24][16]; + private static final Mutable B_POS = new Mutable(); + private static int offset = 12; + private OpenSimplexNoise heightNoise; + private OpenSimplexNoise rigidNoise; + private OpenSimplexNoise distortX; + private OpenSimplexNoise distortY; + + public StructureCaves(long seed) { + Random random = new Random(seed); + heightNoise = new OpenSimplexNoise(random.nextLong()); + rigidNoise = new OpenSimplexNoise(random.nextLong()); + distortX = new OpenSimplexNoise(random.nextLong()); + distortY = new OpenSimplexNoise(random.nextLong()); + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + boolean isVoid = true; + offset = (int) (getHeight(pos.getX() + 8, pos.getZ() + 8) - 12); + + for (int x = 0; x < 16; x++) { + int wx = pos.getX() + x; + for (int z = 0; z < 16; z++) { + int wz = pos.getZ() + z; + + double height = getHeight(wx, wz); + double rigid = getRigid(wx, wz); + + for (int y = 0; y < 24; y++) { + int wy = offset + y; + + double hRigid = Math.abs(wy - height); + double sdf = -opSmoothUnion(-hRigid / 30, -rigid, 0.15); + + if (sdf < 0.15) { + MASK[x][y][z] = true; + isVoid = false; + } + else + MASK[x][y][z] = false; + } + } + } + + if (isVoid) + return; + + for (int x = 0; x < 16; x++) { + int wx = pos.getX() + x; + for (int z = 0; z < 16; z++) { + int wz = pos.getZ() + z; + for (int y = 23; y >= 0; y--) { + int wy = offset + y; + B_POS.setPos(wx, wy, wz); + if (MASK[x][y][z] && BlocksHelper.isNetherGroundMagma(world.getBlockState(B_POS))) { + /* + * if (world.getBlockState(B_POS.up()).getBlock() == + * Blocks.NETHER_WART_BLOCK) + * BlocksHelper.setWithoutUpdate(world, B_POS, + * Blocks.NETHER_WART_BLOCK.getDefaultState()); else + */ + BlocksHelper.setWithoutUpdate(world, B_POS, Blocks.AIR.getDefaultState()); + } + } + } + } + } + + private double getHeight(int x, int z) { + return heightNoise.eval(x * 0.01, z * 0.01) * 32 + 64; + } + + private double getRigid(int x, int z) { + return Math.abs(rigidNoise.eval( + x * 0.02 + distortX.eval(x * 0.05, z * 0.05) * 0.2, + z * 0.02 + distortY.eval(x * 0.05, z * 0.05) * 0.2)) * 0.6; + + // return Math.abs(rigidNoise.eval(x * 0.02, z * 0.02)); + } + + private double mix(double dist1, double dist2, double blend) { + return dist1 * (1 - blend) + dist2 * blend; + } + + private double opSmoothUnion(double dist1, double dist2, double blend) { + double h = 0.5 + 0.5 * (dist2 - dist1) / blend; + h = h > 1 ? 1 : h < 0 ? 0 : h; + return mix(dist2, dist1, h) - blend * h * (1 - h); + } + + public boolean isInCave(int x, int y, int z) { + int y2 = y - offset; + if (y2 >= 0 && y < 24) + return MASK[x][y2][z]; + else + return false; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/StructureFuncScatter.java b/src/main/java/redd90/betternether/structures/StructureFuncScatter.java new file mode 100644 index 0000000..c2aff20 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/StructureFuncScatter.java @@ -0,0 +1,55 @@ +package redd90.betternether.structures; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; + +public abstract class StructureFuncScatter implements IStructure { + protected static final Mutable POS = new Mutable(); + + final int distance; + final int manDist; + + public StructureFuncScatter(int distance) { + this.distance = distance; + this.manDist = (int) Math.ceil(distance * 1.5); + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (isGround(world.getBlockState(pos.down())) && noObjNear(world, pos)) { + grow(world, pos, random); + } + } + + public abstract void grow(IServerWorld world, BlockPos pos, Random random); + + protected abstract boolean isStructure(BlockState state); + + protected abstract boolean isGround(BlockState state); + + private boolean noObjNear(IWorld world, BlockPos pos) { + int x1 = pos.getX() - distance; + int z1 = pos.getZ() - distance; + int x2 = pos.getX() + distance; + int z2 = pos.getZ() + distance; + POS.setY(pos.getY()); + for (int x = x1; x <= x2; x++) { + POS.setX(x); + for (int z = z1; z <= z2; z++) { + POS.setZ(z); + if (isInside(x - pos.getX(), z - pos.getZ()) && isStructure(world.getBlockState(POS))) + return false; + } + } + return true; + } + + private boolean isInside(int x, int z) { + return (Math.abs(x) + Math.abs(z)) <= manDist; + } +} diff --git a/src/main/java/redd90/betternether/structures/StructureNBT.java b/src/main/java/redd90/betternether/structures/StructureNBT.java new file mode 100644 index 0000000..3dd99cf --- /dev/null +++ b/src/main/java/redd90/betternether/structures/StructureNBT.java @@ -0,0 +1,116 @@ +package redd90.betternether.structures; + +import java.io.IOException; +import java.io.InputStream; +import java.util.Random; + +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.nbt.CompressedStreamTools; +import net.minecraft.server.MinecraftServer; +import net.minecraft.util.Mirror; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.MutableBoundingBox; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.gen.feature.template.PlacementSettings; +import net.minecraft.world.gen.feature.template.Template; +import redd90.betternether.BetterNether; + + +public class StructureNBT { + protected ResourceLocation location; + protected Template structure; + protected Mirror mirror = Mirror.NONE; + protected Rotation rotation = Rotation.NONE; + + public StructureNBT(String structure) { + location = new ResourceLocation(BetterNether.MOD_ID, structure); + this.structure = readStructureFromJar(location); + } + + protected StructureNBT(ResourceLocation location, Template structure) { + this.location = location; + this.structure = structure; + } + + public StructureNBT setRotation(Rotation rotation) { + this.rotation = rotation; + return this; + } + + public Mirror getMirror() { + return mirror; + } + + public StructureNBT setMirror(Mirror mirror) { + this.mirror = mirror; + return this; + } + + public void randomRM(Random random) { + rotation = Rotation.values()[random.nextInt(4)]; + mirror = Mirror.values()[random.nextInt(3)]; + } + + public boolean generateCentered(IServerWorld world, BlockPos pos) { + if (structure == null) { + System.out.println("No structure: " + location.toString()); + return false; + } + + Mutable blockpos2 = new Mutable().setPos(structure.getSize()); + if (this.mirror == Mirror.FRONT_BACK) + blockpos2.setX(-blockpos2.getX()); + if (this.mirror == Mirror.LEFT_RIGHT) + blockpos2.setZ(-blockpos2.getZ()); + blockpos2.setPos(blockpos2.rotate(rotation)); + PlacementSettings data = new PlacementSettings().setRotation(this.rotation).setMirror(this.mirror); + structure.func_237144_a_(world, pos.add(-blockpos2.getX() >> 1, 0, -blockpos2.getZ() >> 1), data, world.getRandom()); + return true; + } + + private Template readStructureFromJar(ResourceLocation resource) { + String ns = resource.getNamespace(); + String nm = resource.getPath(); + + try { + InputStream inputstream = MinecraftServer.class.getResourceAsStream("/data/" + ns + "/structures/" + nm + ".nbt"); + return readStructureFromStream(inputstream); + } + catch (IOException e) { + e.printStackTrace(); + } + + return null; + } + + private Template readStructureFromStream(InputStream stream) throws IOException { + CompoundNBT nbttagcompound = CompressedStreamTools.readCompressed(stream); + + Template template = new Template(); + template.read(nbttagcompound); + + return template; + } + + public BlockPos getSize() { + if (rotation == Rotation.NONE || rotation == Rotation.CLOCKWISE_180) + return structure.getSize(); + else { + BlockPos size = structure.getSize(); + int x = size.getX(); + int z = size.getZ(); + return new BlockPos(z, size.getY(), x); + } + } + + public String getName() { + return location.getPath(); + } + + public MutableBoundingBox getBoundingBox(BlockPos pos) { + return structure.getMutableBoundingBox(new PlacementSettings().setRotation(this.rotation).setMirror(mirror), pos); + } +} diff --git a/src/main/java/redd90/betternether/structures/StructureObjScatter.java b/src/main/java/redd90/betternether/structures/StructureObjScatter.java new file mode 100644 index 0000000..0a0702e --- /dev/null +++ b/src/main/java/redd90/betternether/structures/StructureObjScatter.java @@ -0,0 +1,56 @@ +package redd90.betternether.structures; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; + +public abstract class StructureObjScatter implements IStructure { + private static final Mutable POS = new Mutable(); + + final StructureWorld[] structures; + final int distance; + final int manDist; + + public StructureObjScatter(int distance, StructureWorld[] structures) { + this.distance = distance; + this.manDist = (int) Math.ceil(distance * 1.5); + this.structures = structures; + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (isGround(world.getBlockState(pos.down())) && isGround(world.getBlockState(pos.down(2))) && noObjNear(world, pos)) { + StructureWorld tree = structures[random.nextInt(structures.length)]; + tree.generate(world, pos, random); + } + } + + protected abstract boolean isStructure(BlockState state); + + protected abstract boolean isGround(BlockState state); + + private boolean noObjNear(IWorld world, BlockPos pos) { + int x1 = pos.getX() - distance; + int z1 = pos.getZ() - distance; + int x2 = pos.getX() + distance; + int z2 = pos.getZ() + distance; + POS.setY(pos.getY()); + for (int x = x1; x <= x2; x++) { + POS.setX(x); + for (int z = z1; z <= z2; z++) { + POS.setZ(z); + if (isInside(x - pos.getX(), z - pos.getZ()) && isStructure(world.getBlockState(POS))) + return false; + } + } + return true; + } + + private boolean isInside(int x, int z) { + return (Math.abs(x) + Math.abs(z)) <= manDist; + } +} diff --git a/src/main/java/redd90/betternether/structures/StructurePath.java b/src/main/java/redd90/betternether/structures/StructurePath.java new file mode 100644 index 0000000..84712ef --- /dev/null +++ b/src/main/java/redd90/betternether/structures/StructurePath.java @@ -0,0 +1,133 @@ +package redd90.betternether.structures; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.LanternBlock; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.Biome; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.noise.OpenSimplexNoise; +import redd90.betternether.registry.BlocksRegistry; + +public class StructurePath implements IStructure { + private static final Mutable B_POS = new Mutable(); + private OpenSimplexNoise heightNoise; + private OpenSimplexNoise rigidNoise; + private OpenSimplexNoise distortX; + private OpenSimplexNoise distortY; + + public StructurePath(long seed) { + Random random = new Random(seed); + heightNoise = new OpenSimplexNoise(random.nextLong()); + rigidNoise = new OpenSimplexNoise(random.nextLong()); + distortX = new OpenSimplexNoise(random.nextLong()); + distortY = new OpenSimplexNoise(random.nextLong()); + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + for (int x = 0; x < 16; x++) { + int wx = pos.getX() + x; + B_POS.setX(wx); + for (int z = 0; z < 16; z++) { + int wz = pos.getZ() + z; + B_POS.setZ(wz); + double rigid = getRigid(wx, wz) + MHelper.randRange(0, 0.015F, random); + + if (rigid < 0.015) { + int height = getHeight(wx, wz); + B_POS.setY(height); + height -= BlocksHelper.downRay(world, B_POS, height); + B_POS.setY(height); + if (world.isAirBlock(B_POS) && world.getBlockState(B_POS.move(Direction.DOWN)).hasOpaqueCollisionShape(world, B_POS) && isHeightValid(world, B_POS.up())) { + Biome biome = world.getBiome(B_POS); + BlocksHelper.setWithoutUpdate(world, B_POS, getRoadMaterial(world, B_POS, biome)); + if (needsSlab(world, B_POS.up())) + BlocksHelper.setWithoutUpdate(world, B_POS.up(), getSlabMaterial(world, B_POS, biome)); + else if (rigid > 0.01 && ((x & 3) == 0) && ((z & 3) == 0) && random.nextInt(8) == 0) + makeLantern(world, B_POS.up()); + } + } + } + } + } + + private int getHeight(int x, int z) { + return (int) (heightNoise.eval(x * 0.001, z * 0.001) * 32 + 64); + } + + private double getRigid(double x, double z) { + x *= 0.1; + z *= 0.1; + return Math.abs(rigidNoise.eval( + x * 0.02 + distortX.eval(x * 0.05, z * 0.05) * 0.2, + z * 0.02 + distortY.eval(x * 0.05, z * 0.05) * 0.2)); + } + + private boolean isHeightValid(IWorld world, BlockPos pos) { + return Math.abs(BlocksHelper.downRay(world, pos.north(2), 5) - BlocksHelper.downRay(world, pos.south(2), 5)) < 3 && + Math.abs(BlocksHelper.downRay(world, pos.east(2), 5) - BlocksHelper.downRay(world, pos.west(2), 5)) < 3; + } + + private void makeLantern(IWorld world, BlockPos pos) { + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.NETHER_BRICK_WALL.getDefaultState()); + BlocksHelper.setWithoutUpdate(world, pos.up(), Blocks.NETHER_BRICK_FENCE.getDefaultState()); + BlocksHelper.setWithoutUpdate(world, pos.up(2), Blocks.NETHER_BRICK_FENCE.getDefaultState()); + Direction dir = Direction.NORTH; + double d = 1000; + double v = getRigid(pos.getX(), pos.getZ()); + for (Direction face : BlocksHelper.HORIZONTAL) { + BlockPos p = pos.offset(face); + double v2 = getRigid(p.getX(), p.getZ()); + double d2 = v - v2; + if (d2 < d) { + d = d2; + dir = face; + } + } + + BlockPos p = pos.up(3); + BlocksHelper.setWithoutUpdate(world, p, Blocks.NETHER_BRICK_FENCE.getDefaultState()); + world.getChunk(p).markBlockForPostprocessing(new BlockPos(p.getX() & 15, p.getY(), p.getZ() & 15)); + p = p.offset(dir.getOpposite()); + BlocksHelper.setWithoutUpdate(world, p, Blocks.NETHER_BRICK_FENCE.getDefaultState()); + world.getChunk(p).markBlockForPostprocessing(new BlockPos(p.getX() & 15, p.getY(), p.getZ() & 15)); + BlocksHelper.setWithoutUpdate(world, p.down(), Blocks.LANTERN.getDefaultState().with(LanternBlock.HANGING, true)); + } + + private BlockState getRoadMaterial(IServerWorld world, BlockPos pos, Biome biome) { + /* + * if (biome == Biomes.SOUL_SAND_VALLEY || biome instanceof + * NetherWartForest || biome instanceof NetherWartForestEdge) { return + * BlocksRegistry.SOUL_SANDSTONE.getDefaultState(); } + */ + return Blocks.BASALT.getDefaultState(); + } + + private BlockState getSlabMaterial(IServerWorld world, BlockPos pos, Biome biome) { + /* + * if (biome == BuiltInBiomes.SOUL_SAND_VALLEY || biome instanceof + * NetherWartForest || biome instanceof NetherWartForestEdge) { return + * BlocksRegistry.SOUL_SANDSTONE_SLAB.getDefaultState(); } + */ + return BlocksRegistry.BASALT_SLAB.getDefaultState(); + } + + private boolean needsSlab(IServerWorld world, BlockPos pos) { + BlockState state; + for (Direction dir : BlocksHelper.HORIZONTAL) { + if ((BlocksHelper.isNetherGround(state = world.getBlockState(pos.offset(dir))) || + state.getBlock() == Blocks.BASALT || state.getBlock() == BlocksRegistry.SOUL_SANDSTONE) && + !world.getBlockState(pos.down().offset(dir.getOpposite())).isAir()) + return true; + } + return false; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/StructureType.java b/src/main/java/redd90/betternether/structures/StructureType.java new file mode 100644 index 0000000..42ef38e --- /dev/null +++ b/src/main/java/redd90/betternether/structures/StructureType.java @@ -0,0 +1,23 @@ +package redd90.betternether.structures; + +public enum StructureType { + FLOOR, WALL, CEIL, LAVA, UNDER; + + public static StructureType fromString(String a) { + if (a.contains("floor")) + return FLOOR; + else if (a.contains("wall")) + return WALL; + else if (a.contains("ceil")) + return CEIL; + else if (a.contains("lava")) + return LAVA; + else if (a.contains("under")) + return UNDER; + return FLOOR; + } + + public String getName() { + return this.toString().toLowerCase(); + } +} diff --git a/src/main/java/redd90/betternether/structures/StructureWorld.java b/src/main/java/redd90/betternether/structures/StructureWorld.java new file mode 100644 index 0000000..009c580 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/StructureWorld.java @@ -0,0 +1,165 @@ +package redd90.betternether.structures; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; + + +public class StructureWorld extends StructureNBT implements IStructure { + protected static final Mutable POS = new Mutable(); + protected final StructureType type; + protected final int offsetY; + + public StructureWorld(String structure, int offsetY, StructureType type) { + super(structure); + this.offsetY = offsetY; + this.type = type; + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + randomRM(random); + if (canGenerate(world, pos)) { + generateCentered(world, pos.up(offsetY)); + } + } + + private boolean canGenerate(IWorld world, BlockPos pos) { + for (int i = 0; i < this.structure.getSize().getY(); i += 2) { + if (world.getBlockState(pos.up(i)).isIn(Blocks.BEDROCK)) { + return false; + } + } + if (type == StructureType.FLOOR) + return getAirFraction(world, pos) > 0.6 && getAirFractionFoundation(world, pos) < 0.5; + else if (type == StructureType.LAVA) + return getLavaFractionFoundation(world, pos) > 0.9 && getAirFraction(world, pos) > 0.9; + else if (type == StructureType.UNDER) + return getAirFraction(world, pos) < 0.2; + else if (type == StructureType.CEIL) + return getAirFractionBottom(world, pos) > 0.8 && getAirFraction(world, pos) < 0.6; + else + return false; + } + + private float getAirFraction(IWorld world, BlockPos pos) { + int airCount = 0; + + Mutable size = new Mutable().setPos(structure.getSize().rotate(rotation)); + size.setX(Math.abs(size.getX())); + size.setZ(Math.abs(size.getZ())); + + BlockPos start = pos.add(-(size.getX() >> 1), 0, -(size.getZ() >> 1)); + BlockPos end = pos.add(size.getX() >> 1, size.getY() + offsetY, size.getZ() >> 1); + int count = 0; + + for (int x = start.getX(); x <= end.getX(); x++) { + POS.setX(x); + for (int y = start.getY(); y <= end.getY(); y++) { + POS.setY(y); + for (int z = start.getZ(); z <= end.getZ(); z++) { + POS.setZ(z); + if (world.isAirBlock(POS)) + airCount++; + count++; + } + } + } + + return (float) airCount / count; + } + + private float getLavaFractionFoundation(IWorld world, BlockPos pos) { + int lavaCount = 0; + + Mutable size = new Mutable().setPos(structure.getSize().rotate(rotation)); + size.setX(Math.abs(size.getX())); + size.setZ(Math.abs(size.getZ())); + + BlockPos start = pos.add(-(size.getX() >> 1), 0, -(size.getZ() >> 1)); + BlockPos end = pos.add(size.getX() >> 1, 0, size.getZ() >> 1); + int count = 0; + + POS.setY(pos.getY() - 1); + for (int x = start.getX(); x <= end.getX(); x++) { + POS.setX(x); + for (int z = start.getZ(); z <= end.getZ(); z++) { + POS.setZ(z); + if (BlocksHelper.isLava(world.getBlockState(POS))) + lavaCount++; + count++; + } + } + + return (float) lavaCount / count; + } + + private float getAirFractionFoundation(IWorld world, BlockPos pos) { + int airCount = 0; + + Mutable size = new Mutable().setPos(structure.getSize().rotate(rotation)); + size.setX(Math.abs(size.getX())); + size.setZ(Math.abs(size.getZ())); + + BlockPos start = pos.add(-(size.getX() >> 1), -1, -(size.getZ() >> 1)); + BlockPos end = pos.add(size.getX() >> 1, 0, size.getZ() >> 1); + int count = 0; + + for (int x = start.getX(); x <= end.getX(); x++) { + POS.setX(x); + for (int y = start.getY(); y <= end.getY(); y++) { + POS.setY(y); + for (int z = start.getZ(); z <= end.getZ(); z++) { + POS.setZ(z); + if (world.getBlockState(POS).getMaterial().isReplaceable()) + airCount++; + count++; + } + } + } + + return (float) airCount / count; + } + + private float getAirFractionBottom(IWorld world, BlockPos pos) { + int airCount = 0; + + Mutable size = new Mutable().setPos(structure.getSize().rotate(rotation)); + size.setX(Math.abs(size.getX())); + size.setZ(Math.abs(size.getZ())); + + float y1 = Math.min(offsetY, 0); + float y2 = Math.max(offsetY, 0); + BlockPos start = pos.add(-(size.getX() >> 1), y1, -(size.getZ() >> 1)); + BlockPos end = pos.add(size.getX() >> 1, y2, size.getZ() >> 1); + int count = 0; + + for (int x = start.getX(); x <= end.getX(); x++) { + POS.setX(x); + for (int y = start.getY(); y <= end.getY(); y++) { + POS.setY(y); + for (int z = start.getZ(); z <= end.getZ(); z++) { + POS.setZ(z); + if (world.getBlockState(POS).getMaterial().isReplaceable()) + airCount++; + count++; + } + } + } + + return (float) airCount / count; + } + + public boolean loaded() { + return structure != null; + } + + public StructureType getType() { + return type; + } +} diff --git a/src/main/java/redd90/betternether/structures/decorations/StructureCrystal.java b/src/main/java/redd90/betternether/structures/decorations/StructureCrystal.java new file mode 100644 index 0000000..eccd625 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/decorations/StructureCrystal.java @@ -0,0 +1,83 @@ +package redd90.betternether.structures.decorations; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.noise.OpenSimplexNoise; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureCrystal implements IStructure { + private static final Block[] PALETTES = new Block[] { + BlocksRegistry.OBSIDIAN_GLASS, + Blocks.OBSIDIAN, + BlocksRegistry.BLUE_OBSIDIAN_GLASS, + BlocksRegistry.BLUE_OBSIDIAN + }; + private static final double SQRT05 = Math.sqrt(0.5); + private static final Mutable POS = new Mutable(); + private static final float MAX_ANGLE_X = (float) Math.toRadians(45); + private static final float MAX_ANGLE_Y = (float) (Math.PI * 2); + private static final OpenSimplexNoise NOISE = new OpenSimplexNoise(0); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + int index = random.nextInt(PALETTES.length >> 1); + double a = random.nextDouble(); + double radius = 2 + a * a * 5; + int sideXZ = (int) Math.ceil(radius * 2); + int sideY = (int) Math.ceil(radius * 3); + float angleX = random.nextFloat() * MAX_ANGLE_X; + float angleY = random.nextFloat() * MAX_ANGLE_Y; + for (int y = -sideY; y <= sideY; y++) + for (int x = -sideXZ; x <= sideXZ; x++) + for (int z = -sideXZ; z <= sideXZ; z++) { + Vector3d v = new Vector3d(x, y, z).rotatePitch(angleX).rotateYaw(angleY); + if (isInside(v.x, v.y, v.z, radius)) { + POS.setX(pos.getX() + x); + POS.setY(pos.getY() + y); + POS.setZ(pos.getZ() + z); + BlockState state = random.nextInt(40) == 0 && isNotEdge(v.x, v.y, v.z, radius) ? Blocks.GLOWSTONE.getDefaultState() : getState(index, v); + BlocksHelper.setWithoutUpdate(world, POS, state); + } + } + } + + private boolean isInside(double x, double y, double z, double size) { + return dodecahedronSDF(x / size, y / size * 0.3, z / size) <= 0; + } + + private boolean isNotEdge(double x, double y, double z, double size) { + return isInside(x + 1, y, z, size) && + isInside(x - 1, y, z, size) && + isInside(x, y + 1, z, size) && + isInside(x, y - 1, z, size) && + isInside(x, y, z + 1, size) && + isInside(x, y, z - 1, size); + } + + private double dodecahedronSDF(double x, double y, double z) { + x = Math.abs(x); + y = Math.abs(y); + z = Math.abs(z); + return (Math.max(Math.max(x + y, y + z), z + x) - 1) * SQRT05; + } + + private double rigidNoise(Vector3d pos, double scale) { + double val = NOISE.eval(pos.x * scale, pos.y * scale, pos.z * scale); + return Math.abs(val); + } + + private BlockState getState(int index, Vector3d pos) { + int subindex = rigidNoise(pos, 0.2) > 0.2 ? 0 : 1; + int blockIndex = (index << 1) | subindex; + return PALETTES[blockIndex].getDefaultState(); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/decorations/StructureForestLitter.java b/src/main/java/redd90/betternether/structures/decorations/StructureForestLitter.java new file mode 100644 index 0000000..23ae163 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/decorations/StructureForestLitter.java @@ -0,0 +1,32 @@ +package redd90.betternether.structures.decorations; + +import net.minecraft.block.BlockState; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.StructureObjScatter; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.StructureWorld; + +public class StructureForestLitter extends StructureObjScatter { + private static final StructureWorld[] STRUCTURES = new StructureWorld[] { + new StructureWorld("upside_down_forest/tree_fallen", 0, StructureType.FLOOR), + new StructureWorld("upside_down_forest/tree_needle", 0, StructureType.FLOOR), + new StructureWorld("upside_down_forest/tree_root", -2, StructureType.FLOOR), + new StructureWorld("upside_down_forest/tree_stump", -2, StructureType.FLOOR), + new StructureWorld("upside_down_forest/tree_small_branch", 0, StructureType.FLOOR) + }; + + public StructureForestLitter() { + super(8, STRUCTURES); + } + + @Override + protected boolean isStructure(BlockState state) { + return BlocksRegistry.ANCHOR_TREE.isTreeLog(state.getBlock()); + } + + @Override + protected boolean isGround(BlockState state) { + return BlocksHelper.isNetherGround(state); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/decorations/StructureGeyser.java b/src/main/java/redd90/betternether/structures/decorations/StructureGeyser.java new file mode 100644 index 0000000..a753f51 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/decorations/StructureGeyser.java @@ -0,0 +1,17 @@ +package redd90.betternether.structures.decorations; + +import java.util.Random; + +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureGeyser implements IStructure { + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (BlocksHelper.isNetherrack(world.getBlockState(pos.down()))) + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.GEYSER.getDefaultState()); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/decorations/StructureStalactite.java b/src/main/java/redd90/betternether/structures/decorations/StructureStalactite.java new file mode 100644 index 0000000..32668a1 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/decorations/StructureStalactite.java @@ -0,0 +1,88 @@ +package redd90.betternether.structures.decorations; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.BlockStalactite; +import redd90.betternether.structures.IStructure; + + +public class StructureStalactite implements IStructure { + private static final Mutable POS = new Mutable(); + private final Block block; + private final Block upper; + private final Block[] ground; + + public StructureStalactite(Block block, Block upper) { + this.block = block; + ground = null; + this.upper = upper; + } + + public StructureStalactite(Block block, Block upper, Block... ground) { + this.block = block; + this.upper = upper; + this.ground = ground; + } + + private boolean canPlaceAt(IServerWorld world, BlockPos pos) { + return world.isAirBlock(pos) && (ground == null ? BlocksHelper.isNetherrack(world.getBlockState(pos.up())) : groundContains(world.getBlockState(pos.up()).getBlock())); + } + + private boolean groundContains(Block block) { + for (Block b : ground) + if (b == block) + return true; + return false; + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (canPlaceAt(world, pos)) { + for (int i = 0; i < 16; i++) { + int x = pos.getX() + (int) (random.nextGaussian() * 2F); + int z = pos.getZ() + (int) (random.nextGaussian() * 2F); + POS.setPos(x, pos.getY(), z); + int y = pos.getY() + BlocksHelper.upRay(world, POS, 8); + + if (canPlaceAt(world, POS)) { + int dx = x - pos.getX(); + int dz = z - pos.getZ(); + float dist = 4 - (float) Math.sqrt(dx * dx + dz * dz); + if (dist < 1) + dist = 1; + int h = (int) (random.nextInt((int) Math.ceil(dist + 1)) + dist + random.nextInt(2)); + h = h > 8 ? 8 : h; + POS.setY(y); + int h2 = BlocksHelper.downRay(world, POS, h + 2) + 1; + POS.setY(y - h2); + boolean stalagnate = h2 <= h && BlocksHelper.isNetherrack(world.getBlockState(POS)); + if (h2 <= h) + h = h2; + int offset = stalagnate ? (int) (MHelper.randRange(0, 9 - h, random) * 0.7) : 0; + + if (upper != null && h > 2) { + POS.setY(y + 1); + BlocksHelper.setWithoutUpdate(world, POS, upper.getDefaultState()); + if (stalagnate) { + POS.setY(y - h); + BlocksHelper.setWithoutUpdate(world, POS, upper.getDefaultState()); + } + } + for (int n = 0; n < h; n++) { + POS.setY(y - n); + if (!world.isAirBlock(POS)) + break; + int size = stalagnate ? (Math.abs(h / 2 - n) + offset) : (h - n - 1); + BlocksHelper.setWithoutUpdate(world, POS, block.getDefaultState().with(BlockStalactite.SIZE, size)); + } + } + } + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/decorations/StructureStalagmite.java b/src/main/java/redd90/betternether/structures/decorations/StructureStalagmite.java new file mode 100644 index 0000000..fb890cd --- /dev/null +++ b/src/main/java/redd90/betternether/structures/decorations/StructureStalagmite.java @@ -0,0 +1,89 @@ +package redd90.betternether.structures.decorations; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BetterNether; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.BlockStalactite; +import redd90.betternether.structures.IStructure; + + +public class StructureStalagmite implements IStructure { + private static final Mutable POS = new Mutable(); + private final Block block; + private final Block under; + private final Block[] ground; + + public StructureStalagmite(Block block, Block under) { + this.block = block; + ground = null; + this.under = under; + } + + public StructureStalagmite(Block block, Block under, Block... ground) { + this.block = block; + this.under = under; + this.ground = ground; + } + + private boolean canPlaceAt(IServerWorld world, BlockPos pos) { + return world.isAirBlock(pos) && (ground == null ? BlocksHelper.isNetherGround(world.getBlockState(pos.down())) : groundContains(world.getBlockState(pos.down()).getBlock())); + } + + private boolean groundContains(Block block) { + for (Block b : ground) + if (b == block) + return true; + return false; + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (canPlaceAt(world, pos)) { + for (int i = 0; i < 16; i++) { + int x = pos.getX() + (int) (random.nextGaussian() * 2F); + int z = pos.getZ() + (int) (random.nextGaussian() * 2F); + POS.setPos(x, pos.getY(), z); + int y = pos.getY() - BlocksHelper.downRay(world, POS, 8); + + if (canPlaceAt(world, POS)) { + int dx = x - pos.getX(); + int dz = z - pos.getZ(); + float dist = 4 - (float) Math.sqrt(dx * dx + dz * dz); + if (dist < 1) + dist = 1; + int h = (int) (random.nextInt((int) Math.ceil(dist + 1)) + dist + random.nextInt(2)); + h = h > 8 ? 8 : h; + POS.setY(y); + int h2 = BlocksHelper.upRay(world, POS, h + 2) + 1; + POS.setY(y + h2); + boolean stalagnate = h2 <= h && BlocksHelper.isNetherrack(world.getBlockState(POS)); + if (h2 <= h) + h = h2; + int offset = stalagnate ? (h < 8 ? MHelper.randRange(0, 8 - h, random) : 0) : 0; + + if (under != null && h > 2) { + POS.setY(y - 1); + BlocksHelper.setWithoutUpdate(world, POS, under.getDefaultState()); + if (stalagnate) { + POS.setY(y + h); + BlocksHelper.setWithoutUpdate(world, POS, under.getDefaultState()); + } + } + for (int n = 0; n < h; n++) { + POS.setY(y + n); + if (!world.isAirBlock(POS)) + break; + int size = stalagnate ? (Math.abs(h / 2 - n) + offset) : (h - n - 1); + BlocksHelper.setWithoutUpdate(world, POS, block.getDefaultState().with(BlockStalactite.SIZE, size)); + } + } + } + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureAgave.java b/src/main/java/redd90/betternether/structures/plants/StructureAgave.java new file mode 100644 index 0000000..7fd95df --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureAgave.java @@ -0,0 +1,10 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.blocks.BlockCommonPlant; +import redd90.betternether.registry.BlocksRegistry; + +public class StructureAgave extends StructureScatter { + public StructureAgave() { + super(BlocksRegistry.AGAVE, BlockCommonPlant.AGE, 4); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureAnchorTree.java b/src/main/java/redd90/betternether/structures/plants/StructureAnchorTree.java new file mode 100644 index 0000000..1100831 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureAnchorTree.java @@ -0,0 +1,243 @@ +package redd90.betternether.structures.plants; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Random; +import java.util.Set; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.HugeMushroomBlock; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.MathHelper; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.BlockPlantWall; +import redd90.betternether.noise.OpenSimplexNoise; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureAnchorTree implements IStructure { + protected static final OpenSimplexNoise NOISE = new OpenSimplexNoise(2145); + private static final Set BLOCKS = new HashSet(2048); + private Block[] wallPlants; + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (canGenerate(pos)) grow(world, pos, pos.down(BlocksHelper.downRay(world, pos, 255)), random); + } + + private boolean canGenerate(BlockPos pos) { + return (pos.getX() & 15) == 7 && (pos.getZ() & 15) == 7; + } + + private void grow(IServerWorld world, BlockPos up, BlockPos down, Random random) { + if (up.getY() - down.getY() < 30) return; + int pd = BlocksHelper.downRay(world, down, 128) + 1; + for (int i = 0; i < 5; i++) { + Block block = world.getBlockState(down.down(pd + i)).getBlock(); + if (block == Blocks.NETHER_BRICKS || block == BlocksRegistry.NETHER_BRICK_TILE_LARGE || block == BlocksRegistry.NETHER_BRICK_TILE_SMALL) + return; + } + + BlockPos trunkTop = lerp(down, up, 0.6); + BlockPos trunkBottom = lerp(down, up, 0.3); + + int count = (trunkTop.getY() - trunkBottom.getY()) / 7; + if (count < 2) count = 2; + List blocks = line(trunkBottom, trunkTop, count, random, 2.5); + + BLOCKS.clear(); + + if (wallPlants == null) { + wallPlants = new Block[] { BlocksRegistry.JUNGLE_MOSS, BlocksRegistry.JUNGLE_MOSS, BlocksRegistry.WALL_MUSHROOM_BROWN, BlocksRegistry.WALL_MUSHROOM_RED }; + } + + buildLine(blocks, 4); + + count = (up.getY() - down.getY()) / 10 - 1; + if (count < 3) count = 3; + buildBigCircle(trunkTop, 15, count, 2, random.nextDouble() * Math.PI * 2, 3.5, random); + buildBigCircle(trunkBottom, -15, count, 2, random.nextDouble() * Math.PI * 2, 3.5, random); + + BlockState state; + int offset = random.nextInt(4); + for (BlockPos bpos : BLOCKS) { + if (bpos.getY() < 1 || bpos.getY() > 126) continue; + if (!BlocksHelper.isNetherGround(state = world.getBlockState(bpos)) && !state.getMaterial().isReplaceable()) continue; + boolean blockUp = true; + if ((blockUp = BLOCKS.contains(bpos.up())) && BLOCKS.contains(bpos.down())) + BlocksHelper.setWithUpdate(world, bpos, BlocksRegistry.ANCHOR_TREE.log.getDefaultState()); + else + BlocksHelper.setWithUpdate(world, bpos, BlocksRegistry.ANCHOR_TREE.bark.getDefaultState()); + + if (bpos.getY() > 45 && bpos.getY() < 90 && (bpos.getY() & 3) == offset && NOISE.eval(bpos.getX() * 0.1, bpos.getY() * 0.1, bpos.getZ() * 0.1) > 0) { + if (random.nextInt(32) == 0 && !BLOCKS.contains(bpos.north())) + makeMushroom(world, bpos.north(), random.nextDouble() * 3 + 1.5); + if (random.nextInt(32) == 0 && !BLOCKS.contains(bpos.south())) + makeMushroom(world, bpos.south(), random.nextDouble() * 3 + 1.5); + if (random.nextInt(32) == 0 && !BLOCKS.contains(bpos.east())) + makeMushroom(world, bpos.east(), random.nextDouble() * 3 + 1.5); + if (random.nextInt(32) == 0 && !BLOCKS.contains(bpos.west())) + makeMushroom(world, bpos.west(), random.nextDouble() * 3 + 1.5); + } + + if (bpos.getY() > 64) { + if (!blockUp && world.getBlockState(bpos.up()).getMaterial().isReplaceable()) { + BlocksHelper.setWithUpdate(world, bpos.up(), BlocksRegistry.MOSS_COVER.getDefaultState()); + } + + if (NOISE.eval(bpos.getX() * 0.05, bpos.getY() * 0.05, bpos.getZ() * 0.05) > 0) { + state = wallPlants[random.nextInt(wallPlants.length)].getDefaultState(); + if (random.nextInt(8) == 0 && !BLOCKS.contains(bpos.north()) && world.isAirBlock(bpos.north())) + BlocksHelper.setWithUpdate(world, bpos.north(), state.with(BlockPlantWall.FACING, Direction.NORTH)); + if (random.nextInt(8) == 0 && !BLOCKS.contains(bpos.south()) && world.isAirBlock(bpos.south())) + BlocksHelper.setWithUpdate(world, bpos.south(), state.with(BlockPlantWall.FACING, Direction.SOUTH)); + if (random.nextInt(8) == 0 && !BLOCKS.contains(bpos.east()) && world.isAirBlock(bpos.east())) + BlocksHelper.setWithUpdate(world, bpos.east(), state.with(BlockPlantWall.FACING, Direction.EAST)); + if (random.nextInt(8) == 0 && !BLOCKS.contains(bpos.west()) && world.isAirBlock(bpos.west())) + BlocksHelper.setWithUpdate(world, bpos.west(), state.with(BlockPlantWall.FACING, Direction.WEST)); + } + } + } + } + + private void buildBigCircle(BlockPos pos, int length, int count, int iteration, double angle, double size, Random random) { + if (iteration < 0) return; + List> lines = circleLinesEnds(pos, angle, count, length, Math.abs(length) * 0.7, random); + double sizeSmall = size * 0.8; + length *= 0.8; + angle += Math.PI * 4 / count; + angle += random.nextDouble() * angle * 0.75; + for (List line : lines) { + buildLine(line, size); + buildBigCircle(line.get(1), length, count, iteration - 1, angle, sizeSmall, random); + } + } + + private void buildLine(List blocks, double radius) { + for (int i = 0; i < blocks.size() - 1; i++) { + BlockPos a = blocks.get(i); + BlockPos b = blocks.get(i + 1); + if (b.getY() < a.getY()) { + BlockPos c = b; + b = a; + a = c; + } + double max = b.getY() - a.getY(); + if (max < 1) max = 1; + for (int y = a.getY(); y <= b.getY(); y++) + cylinder(lerpCos(a, b, y, (y - a.getY()) / max), radius); + } + } + + private BlockPos lerp(BlockPos start, BlockPos end, double mix) { + double x = MathHelper.lerp(mix, start.getX(), end.getX()); + double y = MathHelper.lerp(mix, start.getY(), end.getY()); + double z = MathHelper.lerp(mix, start.getZ(), end.getZ()); + return new BlockPos(x, y, z); + } + + private BlockPos lerpCos(BlockPos start, BlockPos end, int y, double mix) { + double v = lcos(mix); + double x = MathHelper.lerp(v, start.getX(), end.getX()); + double z = MathHelper.lerp(v, start.getZ(), end.getZ()); + return new BlockPos(x, y, z); + } + + private double lcos(double mix) { + return MathHelper.clamp(0.5 - Math.cos(mix * Math.PI) * 0.5, 0, 1); + } + + private List line(BlockPos start, BlockPos end, int count, Random random, double range) { + List result = new ArrayList(count); + int max = count - 1; + result.add(start); + for (int i = 1; i < max; i++) { + double delta = (double) i / max; + double x = MathHelper.lerp(delta, start.getX(), end.getX()) + random.nextGaussian() * range; + double y = MathHelper.lerp(delta, start.getY(), end.getY()); + double z = MathHelper.lerp(delta, start.getZ(), end.getZ()) + random.nextGaussian() * range; + result.add(new BlockPos(x, y, z)); + } + result.add(end); + return result; + } + + private void cylinder(BlockPos pos, double radius) { + int x1 = MHelper.floor(pos.getX() - radius); + int z1 = MHelper.floor(pos.getZ() - radius); + int x2 = MHelper.floor(pos.getX() + radius + 1); + int z2 = MHelper.floor(pos.getZ() + radius + 1); + radius *= radius; + + for (int x = x1; x <= x2; x++) { + int px2 = x - pos.getX(); + px2 *= px2; + for (int z = z1; z <= z2; z++) { + int pz2 = z - pos.getZ(); + pz2 *= pz2; + if (px2 + pz2 <= radius * (NOISE.eval(x * 0.5, pos.getY() * 0.5, z * 0.5) * 0.25 + 0.75)) BLOCKS.add(new BlockPos(x, pos.getY(), z)); + } + } + } + + private List> circleLinesEnds(BlockPos pos, double startAngle, int count, int height, double radius, Random random) { + List> result = new ArrayList>(count); + double angle = Math.PI * 2 / count; + for (int i = 0; i < count; i++) { + double x = pos.getX() + Math.sin(startAngle) * radius; + double z = pos.getZ() + Math.cos(startAngle) * radius; + BlockPos end = new BlockPos(x, pos.getY() + height + height * random.nextDouble() * 0.5, z); + List elem = new ArrayList<>(2); + elem.add(pos); + elem.add(end); + result.add(elem); + startAngle += angle; + } + return result; + } + + protected static void makeMushroom(IServerWorld world, BlockPos pos, double radius) { + if (!world.getBlockState(pos).getMaterial().isReplaceable()) return; + + int x1 = MHelper.floor(pos.getX() - radius); + int z1 = MHelper.floor(pos.getZ() - radius); + int x2 = MHelper.floor(pos.getX() + radius + 1); + int z2 = MHelper.floor(pos.getZ() + radius + 1); + radius *= radius; + + List placed = new ArrayList((int) (radius * 4)); + for (int x = x1; x <= x2; x++) { + int px2 = x - pos.getX(); + px2 *= px2; + for (int z = z1; z <= z2; z++) { + int pz2 = z - pos.getZ(); + pz2 *= pz2; + if (px2 + pz2 <= radius) { + BlockPos p = new BlockPos(x, pos.getY(), z); + if (world.getBlockState(p).getMaterial().isReplaceable()) { + placed.add(p); + } + } + } + } + + for (BlockPos p : placed) { + boolean north = world.getBlockState(p.north()).getBlock() != BlocksRegistry.GIANT_LUCIS; + boolean south = world.getBlockState(p.south()).getBlock() != BlocksRegistry.GIANT_LUCIS; + boolean east = world.getBlockState(p.east()).getBlock() != BlocksRegistry.GIANT_LUCIS; + boolean west = world.getBlockState(p.west()).getBlock() != BlocksRegistry.GIANT_LUCIS; + BlockState state = BlocksRegistry.GIANT_LUCIS.getDefaultState(); + BlocksHelper.setWithUpdate(world, p, state + .with(HugeMushroomBlock.NORTH, north) + .with(HugeMushroomBlock.SOUTH, south) + .with(HugeMushroomBlock.EAST, east) + .with(HugeMushroomBlock.WEST, west)); + } + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureAnchorTreeBranch.java b/src/main/java/redd90/betternether/structures/plants/StructureAnchorTreeBranch.java new file mode 100644 index 0000000..87e9813 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureAnchorTreeBranch.java @@ -0,0 +1,207 @@ +package redd90.betternether.structures.plants; + +import java.util.HashSet; +import java.util.Iterator; +import java.util.Random; +import java.util.Set; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.BlockAnchorTreeVine; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureAnchorTreeBranch implements IStructure { + private static final float[] CURVE_X = new float[] { 9F, 7F, 1.5F, 0.5F, 3F, 7F }; + private static final float[] CURVE_Y = new float[] { -20F, -17F, -12F, -4F, 0F, 2F }; + private static final int MIDDLE_Y = 10; + private static final Set POINTS = new HashSet(); + private static final Set MIDDLE = new HashSet(); + private static final Set TOP = new HashSet(); + private static final Mutable POS = new Mutable(); + + public StructureAnchorTreeBranch() {} + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (pos.getY() < 96) return; + grow(world, pos, random, true); + } + + public void grow(IServerWorld world, BlockPos pos, Random random, boolean natural) { + world.setBlockState(pos, Blocks.AIR.getDefaultState(), 0); + float scale = MHelper.randRange(0.5F, 1F, random); + int minCount = scale < 0.75 ? 3 : 4; + int maxCount = scale < 0.75 ? 5 : 7; + int count = MHelper.randRange(minCount, maxCount, random); + for (int n = 0; n < count; n++) { + float branchSize = MHelper.randRange(0.5F, 0.8F, random) * scale; + float angle = n * MHelper.PI2 / count; + float radius = CURVE_X[0] * branchSize; + int x1 = Math.round(pos.getX() + radius * (float) Math.cos(angle) + MHelper.randRange(-2F, 2F, random) * branchSize); + int y1 = Math.round(pos.getY() + CURVE_Y[0] * branchSize + MHelper.randRange(-2F, 2F, random) * branchSize); + int z1 = Math.round(pos.getZ() + radius * (float) Math.sin(angle) + MHelper.randRange(-2F, 2F, random) * branchSize); + float crownR = 9 * branchSize; + if (crownR < 1.5F) + crownR = 1.5F; + crown(world, new BlockPos(x1, y1 + 1, z1), crownR, random); + + int middle = Math.round(pos.getY() + (MIDDLE_Y + MHelper.randRange(-2, 2, random)) * branchSize); + boolean generate = true; + for (int i = 1; i < CURVE_X.length && generate; i++) { + radius = CURVE_X[i] * branchSize; + int x2 = Math.round(pos.getX() + radius * (float) Math.cos(angle) + MHelper.randRange(-2F, 2F, random) * branchSize); + int y2 = Math.round(pos.getY() + CURVE_Y[i] * branchSize + (CURVE_Y[i] > 0 ? MHelper.randRange(-2F, 2F, random) * branchSize : 0)); + int z2 = Math.round(pos.getZ() + radius * (float) Math.sin(angle) + MHelper.randRange(-2F, 2F, random) * branchSize); + + if (CURVE_Y[i] >= 0) { + if (canReplace(world.getBlockState(POS.setPos(x2, y2, z2)))) { + boolean noGround = true; + for (int d = 1; d < 3; d++) { + if (!canReplace(world.getBlockState(POS.setPos(x2, y2 - d, z2)))) { + y2 -= d; + noGround = false; + break; + } + } + if (noGround) { + x2 = pos.getX(); + y2 = pos.getY(); + generate = false; + } + } + } + + line(world, x1, y1, z1, x2, y2, z2, middle); + x1 = x2; + y1 = y2; + z1 = z2; + } + } + + BlockState state; + Iterator iterator = TOP.iterator(); + while (iterator.hasNext()) { + BlockPos bpos = iterator.next(); + if (bpos != null) { + if (POINTS.contains(bpos.up()) && !TOP.contains(bpos.up())) + iterator.remove(); + } + } + + iterator = MIDDLE.iterator(); + while (iterator.hasNext()) { + BlockPos bpos = iterator.next(); + if (bpos != null) { + BlockPos up = bpos.up(); + if (MIDDLE.contains(up) || (!TOP.contains(up) && POINTS.contains(up))) + iterator.remove(); + } + else + iterator.remove(); + } + + for (BlockPos bpos : POINTS) { + if (POINTS.contains(bpos.up()) && POINTS.contains(bpos.down())) + state = BlocksRegistry.ANCHOR_TREE.log.getDefaultState(); + else + state = BlocksRegistry.ANCHOR_TREE.bark.getDefaultState(); + BlocksHelper.setWithUpdate(world, bpos, state); + } + + POINTS.clear(); + MIDDLE.clear(); + TOP.clear(); + } + + private void line(IWorld world, int x1, int y1, int z1, int x2, int y2, int z2, int middleY) { + int dx = x2 - x1; + int dy = y2 - y1; + int dz = z2 - z1; + int mx = Math.max(Math.max(Math.abs(dx), Math.abs(dy)), Math.abs(dz)); + float fdx = (float) dx / mx; + float fdy = (float) dy / mx; + float fdz = (float) dz / mx; + float px = x1; + float py = y1; + float pz = z1; + + BlockPos pos = POS.setPos(x1, y1, z1).toImmutable(); + POINTS.add(pos); + if (pos.getY() == middleY) + MIDDLE.add(pos); + else if (pos.getY() > middleY) + TOP.add(pos); + + pos = POS.setPos(x2, y2, z2).toImmutable(); + POINTS.add(pos); + if (pos.getY() == middleY) + MIDDLE.add(pos); + else if (pos.getY() > middleY) + TOP.add(pos); + + for (int i = 0; i < mx; i++) { + px += fdx; + py += fdy; + pz += fdz; + + POS.setPos(Math.round(px), Math.round(py), Math.round(pz)); + pos = POS.toImmutable(); + POINTS.add(pos); + if (POS.getY() == middleY) + MIDDLE.add(pos); + else if (POS.getY() > middleY) + TOP.add(pos); + } + } + + private void crown(IWorld world, BlockPos pos, float radius, Random random) { + BlockState leaves = BlocksRegistry.ANCHOR_TREE_LEAVES.getDefaultState(); + BlockState vine = BlocksRegistry.ANCHOR_TREE_VINE.getDefaultState(); + float halfR = radius * 0.5F; + float r2 = radius * radius; + int start = (int) Math.floor(-radius); + for (int cy = start; cy <= radius; cy++) { + int cy2_out = cy * cy; + float cy2_in = cy + halfR; + cy2_in *= cy2_in; + POS.setY((int) (pos.getY() + cy - halfR)); + for (int cx = start; cx <= radius; cx++) { + int cx2 = cx * cx; + POS.setX(pos.getX() + cx); + for (int cz = start; cz <= radius; cz++) { + int cz2 = cz * cz; + if (cx2 + cy2_out + cz2 < r2 && cx2 + cy2_in + cz2 > r2) { + POS.setZ(pos.getZ() + cz); + if (world.getBlockState(POS).getMaterial().isReplaceable()) { + int length = BlocksHelper.downRay(world, POS, 17); + if (length < 5) { + BlocksHelper.setWithUpdate(world, POS, leaves); + continue; + } ; + if (length > 15) length = MHelper.randRange(12, 15, random); + else if (length > 12) length = MHelper.randRange(12, length, random); + for (int i = 1; i < length - 2; i++) { + BlocksHelper.setWithUpdate(world, POS.down(i), vine); + } + BlocksHelper.setWithUpdate(world, POS.down(length - 2), vine.with(BlockAnchorTreeVine.SHAPE, TripleShape.MIDDLE)); + BlocksHelper.setWithUpdate(world, POS.down(length - 1), vine.with(BlockAnchorTreeVine.SHAPE, TripleShape.BOTTOM)); + BlocksHelper.setWithUpdate(world, POS, leaves); + } + } + } + } + } + } + + private boolean canReplace(BlockState state) { + return BlocksHelper.isNetherGround(state) || state.getMaterial().isReplaceable(); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureAnchorTreeRoot.java b/src/main/java/redd90/betternether/structures/plants/StructureAnchorTreeRoot.java new file mode 100644 index 0000000..dd7d047 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureAnchorTreeRoot.java @@ -0,0 +1,195 @@ +package redd90.betternether.structures.plants; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Random; +import java.util.Set; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.MathHelper; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.BlockAnchorTreeVine; +import redd90.betternether.blocks.BlockPlantWall; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureAnchorTreeRoot implements IStructure { + private static final Set BLOCKS = new HashSet(2048); + private static final Mutable POS = new Mutable(); + private Block[] wallPlants; + private static final StructureLucis LUCIS = new StructureLucis(); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (pos.getY() < 96) return; + + double angle = random.nextDouble() * Math.PI * 2; + double dx = Math.sin(angle); + double dz = Math.cos(angle); + double size = MHelper.randRange(10, 25, random) * 0.5; + int count = MHelper.floor(size * 2); + if (count < 3) count = 3; + if ((count & 1) == 0) count++; + POS.setPos(pos.getX() - dx * size, pos.getY() + 10, pos.getZ() - dz * size); + BlockPos start = POS.up(BlocksHelper.upRay(world, POS, 64)); + if (start.getY() < pos.getY()) start = POS.setPos(start).add(0, 10, 0).toImmutable(); + POS.setPos(pos.getX() + dx * size, pos.getY() + 10, pos.getZ() + dz * size); + BlockPos end = POS.up(BlocksHelper.upRay(world, POS, 64)); + if (end.getY() < pos.getY()) end = POS.setPos(end).add(0, 10, 0).toImmutable(); + List blocks = lineParable(start, end, count, random, 0.2); + + BLOCKS.clear(); + buildLine(blocks, 1.3 + random.nextDouble()); + + BlockState state; + if (wallPlants == null) { + wallPlants = new Block[] { BlocksRegistry.JUNGLE_MOSS, BlocksRegistry.JUNGLE_MOSS, BlocksRegistry.WALL_MUSHROOM_BROWN, BlocksRegistry.WALL_MUSHROOM_RED }; + } + BlockState vine = BlocksRegistry.ANCHOR_TREE_VINE.getDefaultState(); + for (BlockPos bpos : BLOCKS) { + if (bpos.getY() < 1 || bpos.getY() > 126) continue; + if (!BlocksHelper.isNetherGround(state = world.getBlockState(bpos)) && !canReplace(state)) continue; + boolean blockUp = true; + boolean blockDown = true; + if ((blockUp = BLOCKS.contains(bpos.up())) && (blockDown = BLOCKS.contains(bpos.down()))) + BlocksHelper.setWithoutUpdate(world, bpos, BlocksRegistry.ANCHOR_TREE.log.getDefaultState()); + else + BlocksHelper.setWithoutUpdate(world, bpos, BlocksRegistry.ANCHOR_TREE.bark.getDefaultState()); + + if (!blockUp && world.getBlockState(bpos.up()).getMaterial().isReplaceable()) { + BlocksHelper.setWithoutUpdate(world, bpos.up(), BlocksRegistry.MOSS_COVER.getDefaultState()); + } + + if ((bpos.getY() & 3) == 0 && StructureAnchorTree.NOISE.eval(bpos.getX() * 0.1, bpos.getY() * 0.1, bpos.getZ() * 0.1) > 0) { + if (random.nextInt(32) == 0 && !BLOCKS.contains(bpos.north())) + if (random.nextBoolean()) + StructureAnchorTree.makeMushroom(world, bpos.north(), random.nextDouble() + 1.5); + else + LUCIS.generate(world, bpos, random); + if (random.nextInt(32) == 0 && !BLOCKS.contains(bpos.south())) + if (random.nextBoolean()) + StructureAnchorTree.makeMushroom(world, bpos.south(), random.nextDouble() + 1.5); + else + LUCIS.generate(world, bpos, random); + if (random.nextInt(32) == 0 && !BLOCKS.contains(bpos.east())) + if (random.nextBoolean()) + StructureAnchorTree.makeMushroom(world, bpos.east(), random.nextDouble() + 1.5); + else + LUCIS.generate(world, bpos, random); + if (random.nextInt(32) == 0 && !BLOCKS.contains(bpos.west())) + if (random.nextBoolean()) + StructureAnchorTree.makeMushroom(world, bpos.west(), random.nextDouble() + 1.5); + else + LUCIS.generate(world, bpos, random); + } + + state = wallPlants[random.nextInt(wallPlants.length)].getDefaultState(); + if (random.nextInt(8) == 0 && !BLOCKS.contains(bpos.north()) && world.isAirBlock(bpos.north())) + BlocksHelper.setWithoutUpdate(world, bpos.north(), state.with(BlockPlantWall.FACING, Direction.NORTH)); + if (random.nextInt(8) == 0 && !BLOCKS.contains(bpos.south()) && world.isAirBlock(bpos.south())) + BlocksHelper.setWithoutUpdate(world, bpos.south(), state.with(BlockPlantWall.FACING, Direction.SOUTH)); + if (random.nextInt(8) == 0 && !BLOCKS.contains(bpos.east()) && world.isAirBlock(bpos.east())) + BlocksHelper.setWithoutUpdate(world, bpos.east(), state.with(BlockPlantWall.FACING, Direction.EAST)); + if (random.nextInt(8) == 0 && !BLOCKS.contains(bpos.west()) && world.isAirBlock(bpos.west())) + BlocksHelper.setWithoutUpdate(world, bpos.west(), state.with(BlockPlantWall.FACING, Direction.WEST)); + + if (blockUp && !blockDown && random.nextInt(16) == 0) { + bpos = bpos.down(); + int length = BlocksHelper.downRay(world, bpos, 17); + if (length > 4) { + length = MHelper.randRange(3, length, random); + for (int i = 0; i < length - 2; i++) { + BlocksHelper.setWithoutUpdate(world, bpos.down(i), vine); + } + BlocksHelper.setWithoutUpdate(world, bpos.down(length - 2), vine.with(BlockAnchorTreeVine.SHAPE, TripleShape.MIDDLE)); + BlocksHelper.setWithoutUpdate(world, bpos.down(length - 1), vine.with(BlockAnchorTreeVine.SHAPE, TripleShape.BOTTOM)); + } + } + } + } + + private boolean canReplace(BlockState state) { + return state.getMaterial().isReplaceable() + || state.getBlock() == BlocksRegistry.GIANT_LUCIS + || state.getBlock() == BlocksRegistry.LUCIS_MUSHROOM + || state.getBlock() instanceof BlockPlantWall; + } + + private void buildLine(List blocks, double radius) { + for (int i = 0; i < blocks.size() - 1; i++) { + BlockPos a = blocks.get(i); + BlockPos b = blocks.get(i + 1); + if (b.getY() < a.getY()) { + BlockPos c = b; + b = a; + a = c; + } + int count = (int) Math.ceil(Math.sqrt(b.distanceSq(a))); + for (int j = 0; j < count; j++) + sphere(lerpCos(a, b, (double) j / count), radius); + } + } + + private BlockPos lerpCos(BlockPos start, BlockPos end, double mix) { + double v = lcos(mix); + double x = MathHelper.lerp(v, start.getX(), end.getX()); + double y = MathHelper.lerp(v, start.getY(), end.getY()); + double z = MathHelper.lerp(v, start.getZ(), end.getZ()); + return new BlockPos(x, y, z); + } + + private double lcos(double mix) { + return MathHelper.clamp(0.5 - Math.cos(mix * Math.PI) * 0.5, 0, 1); + } + + private List lineParable(BlockPos start, BlockPos end, int count, Random random, double range) { + List result = new ArrayList(count); + int max = count - 1; + int middle = count / 2; + result.add(start); + double size = Math.sqrt(start.distanceSq(end)) * 0.8; + for (int i = 1; i < max; i++) { + double offset = (double) (i - middle) / middle; + offset = 1 - offset * offset; + double delta = (double) i / max; + double x = MathHelper.lerp(delta, start.getX(), end.getX()) + random.nextGaussian() * range; + double y = MathHelper.lerp(delta, start.getY(), end.getY()) - offset * size; + double z = MathHelper.lerp(delta, start.getZ(), end.getZ()) + random.nextGaussian() * range; + result.add(new BlockPos(x, y, z)); + } + result.add(end); + return result; + } + + private void sphere(BlockPos pos, double radius) { + int x1 = MHelper.floor(pos.getX() - radius); + int y1 = MHelper.floor(pos.getY() - radius); + int z1 = MHelper.floor(pos.getZ() - radius); + int x2 = MHelper.floor(pos.getX() + radius + 1); + int y2 = MHelper.floor(pos.getY() + radius + 1); + int z2 = MHelper.floor(pos.getZ() + radius + 1); + radius *= radius; + + for (int x = x1; x <= x2; x++) { + int px2 = x - pos.getX(); + px2 *= px2; + for (int z = z1; z <= z2; z++) { + int pz2 = z - pos.getZ(); + pz2 *= pz2; + for (int y = y1; y <= y2; y++) { + int py2 = y - pos.getY(); + py2 *= py2; + if (px2 + pz2 + py2 <= radius) BLOCKS.add(new BlockPos(x, y, z)); + } + } + } + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureBarrelCactus.java b/src/main/java/redd90/betternether/structures/plants/StructureBarrelCactus.java new file mode 100644 index 0000000..bd4e5f3 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureBarrelCactus.java @@ -0,0 +1,10 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.blocks.BlockCommonPlant; +import redd90.betternether.registry.BlocksRegistry; + +public class StructureBarrelCactus extends StructureScatter { + public StructureBarrelCactus() { + super(BlocksRegistry.BARREL_CACTUS, BlockCommonPlant.AGE, 4); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureBigWarpedTree.java b/src/main/java/redd90/betternether/structures/plants/StructureBigWarpedTree.java new file mode 100644 index 0000000..7d32b93 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureBigWarpedTree.java @@ -0,0 +1,32 @@ +package redd90.betternether.structures.plants; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.StructureObjScatter; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.StructureWorld; + +public class StructureBigWarpedTree extends StructureObjScatter { + private static final StructureWorld[] TREES = new StructureWorld[] { + new StructureWorld("trees/warped_tree_01", -2, StructureType.FLOOR), + new StructureWorld("trees/warped_tree_02", -2, StructureType.FLOOR), + new StructureWorld("trees/warped_tree_03", -2, StructureType.FLOOR), + new StructureWorld("trees/warped_tree_04", -2, StructureType.FLOOR), + new StructureWorld("trees/warped_tree_05", -4, StructureType.FLOOR) + }; + + public StructureBigWarpedTree() { + super(10, TREES); + } + + protected boolean isGround(BlockState state) { + return BlocksHelper.isNetherGround(state); + } + + protected boolean isStructure(BlockState state) { + return state.getBlock() == Blocks.WARPED_STEM || + state.getBlock() == Blocks.WARPED_WART_BLOCK || + state.getBlock() == Blocks.SHROOMLIGHT; + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureBlackApple.java b/src/main/java/redd90/betternether/structures/plants/StructureBlackApple.java new file mode 100644 index 0000000..d670400 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureBlackApple.java @@ -0,0 +1,10 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.blocks.BlockCommonPlant; +import redd90.betternether.registry.BlocksRegistry; + +public class StructureBlackApple extends StructureScatter { + public StructureBlackApple() { + super(BlocksRegistry.BLACK_APPLE, BlockCommonPlant.AGE, 4); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureBlackBush.java b/src/main/java/redd90/betternether/structures/plants/StructureBlackBush.java new file mode 100644 index 0000000..3edbe26 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureBlackBush.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureBlackBush extends StructureScatter { + public StructureBlackBush() { + super(BlocksRegistry.BLACK_BUSH); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureBlackVine.java b/src/main/java/redd90/betternether/structures/plants/StructureBlackVine.java new file mode 100644 index 0000000..423a6ab --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureBlackVine.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureBlackVine extends StructureVine { + public StructureBlackVine() { + super(BlocksRegistry.BLACK_VINE); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureBloomingVine.java b/src/main/java/redd90/betternether/structures/plants/StructureBloomingVine.java new file mode 100644 index 0000000..aecfb51 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureBloomingVine.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureBloomingVine extends StructureVine { + public StructureBloomingVine() { + super(BlocksRegistry.BLOOMING_VINE); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureBoneGrass.java b/src/main/java/redd90/betternether/structures/plants/StructureBoneGrass.java new file mode 100644 index 0000000..a45c465 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureBoneGrass.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureBoneGrass extends StructureScatter { + public StructureBoneGrass() { + super(BlocksRegistry.BONE_GRASS); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureBoneReef.java b/src/main/java/redd90/betternether/structures/plants/StructureBoneReef.java new file mode 100644 index 0000000..d58b8d1 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureBoneReef.java @@ -0,0 +1,26 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.IStructure; +import redd90.betternether.structures.StructureNBT; + +public class StructureBoneReef implements IStructure { + private static final StructureNBT[] BONES = new StructureNBT[] { + new StructureNBT("bone_01"), + new StructureNBT("bone_02"), + new StructureNBT("bone_03") + }; + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (BlocksHelper.isNetherGround(world.getBlockState(pos.down())) && world.isAirBlock(pos.up(2)) && world.isAirBlock(pos.up(4))) { + StructureNBT bone = BONES[random.nextInt(BONES.length)]; + bone.randomRM(random); + bone.generateCentered(world, pos.down(random.nextInt(4))); + } + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureCeilingMushrooms.java b/src/main/java/redd90/betternether/structures/plants/StructureCeilingMushrooms.java new file mode 100644 index 0000000..e8737cc --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureCeilingMushrooms.java @@ -0,0 +1,26 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureCeilingMushrooms implements IStructure { + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (pos.getY() < 90) return; + pos = pos.up(); + if (canPlace(world, pos)) BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.CEILING_MUSHROOMS.getDefaultState()); + if (canPlace(world, pos.north())) BlocksHelper.setWithUpdate(world, pos.north(), BlocksRegistry.CEILING_MUSHROOMS.getDefaultState()); + if (canPlace(world, pos.south())) BlocksHelper.setWithUpdate(world, pos.south(), BlocksRegistry.CEILING_MUSHROOMS.getDefaultState()); + if (canPlace(world, pos.east())) BlocksHelper.setWithUpdate(world, pos.east(), BlocksRegistry.CEILING_MUSHROOMS.getDefaultState()); + if (canPlace(world, pos.west())) BlocksHelper.setWithUpdate(world, pos.west(), BlocksRegistry.CEILING_MUSHROOMS.getDefaultState()); + } + + private boolean canPlace(IServerWorld world, BlockPos pos) { + return BlocksHelper.isNetherrack(world.getBlockState(pos)) && world.getBlockState(pos.down()).getMaterial().isReplaceable(); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureCrimsonFungus.java b/src/main/java/redd90/betternether/structures/plants/StructureCrimsonFungus.java new file mode 100644 index 0000000..83419c6 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureCrimsonFungus.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import net.minecraft.block.Blocks; + +public class StructureCrimsonFungus extends StructureScatter { + public StructureCrimsonFungus() { + super(Blocks.CRIMSON_FUNGUS); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureCrimsonGlowingTree.java b/src/main/java/redd90/betternether/structures/plants/StructureCrimsonGlowingTree.java new file mode 100644 index 0000000..649616b --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureCrimsonGlowingTree.java @@ -0,0 +1,29 @@ +package redd90.betternether.structures.plants; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.StructureObjScatter; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.StructureWorld; + +public class StructureCrimsonGlowingTree extends StructureObjScatter { + private static final StructureWorld[] TREES = new StructureWorld[] { + new StructureWorld("trees/crimson_glow_tree_01", -1, StructureType.FLOOR), + new StructureWorld("trees/crimson_glow_tree_02", -1, StructureType.FLOOR), + new StructureWorld("trees/crimson_glow_tree_03", -1, StructureType.FLOOR), + new StructureWorld("trees/crimson_glow_tree_04", -1, StructureType.FLOOR) + }; + + public StructureCrimsonGlowingTree() { + super(7, TREES); + } + + protected boolean isGround(BlockState state) { + return BlocksHelper.isNetherGround(state); + } + + protected boolean isStructure(BlockState state) { + return state.getBlock() == Blocks.CRIMSON_STEM; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureCrimsonPinewood.java b/src/main/java/redd90/betternether/structures/plants/StructureCrimsonPinewood.java new file mode 100644 index 0000000..762dada --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureCrimsonPinewood.java @@ -0,0 +1,30 @@ +package redd90.betternether.structures.plants; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.StructureObjScatter; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.StructureWorld; + +public class StructureCrimsonPinewood extends StructureObjScatter { + private static final StructureWorld[] TREES = new StructureWorld[] { + new StructureWorld("trees/crimson_pine_01", -2, StructureType.FLOOR), + new StructureWorld("trees/crimson_pine_02", -2, StructureType.FLOOR), + new StructureWorld("trees/crimson_pine_03", -2, StructureType.FLOOR), + new StructureWorld("trees/crimson_pine_04", -1, StructureType.FLOOR), + new StructureWorld("trees/crimson_pine_05", -1, StructureType.FLOOR) + }; + + public StructureCrimsonPinewood() { + super(7, TREES); + } + + protected boolean isGround(BlockState state) { + return BlocksHelper.isNetherGround(state); + } + + protected boolean isStructure(BlockState state) { + return state.getBlock() == Blocks.CRIMSON_STEM; + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureCrimsonRoots.java b/src/main/java/redd90/betternether/structures/plants/StructureCrimsonRoots.java new file mode 100644 index 0000000..8dd99a1 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureCrimsonRoots.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import net.minecraft.block.Blocks; + +public class StructureCrimsonRoots extends StructureScatter { + public StructureCrimsonRoots() { + super(Blocks.CRIMSON_ROOTS); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureEggPlant.java b/src/main/java/redd90/betternether/structures/plants/StructureEggPlant.java new file mode 100644 index 0000000..2595b6b --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureEggPlant.java @@ -0,0 +1,10 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.blocks.BlockCommonPlant; +import redd90.betternether.registry.BlocksRegistry; + +public class StructureEggPlant extends StructureScatter { + public StructureEggPlant() { + super(BlocksRegistry.EGG_PLANT, BlockCommonPlant.AGE, 4); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureEye.java b/src/main/java/redd90/betternether/structures/plants/StructureEye.java new file mode 100644 index 0000000..22c2ae9 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureEye.java @@ -0,0 +1,31 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureEye implements IStructure { + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + int h = random.nextInt(19) + 5; + int h2 = BlocksHelper.downRay(world, pos, h); + + if (h2 < 5) + return; + + h2 -= 1; + + BlockState vineState = BlocksRegistry.EYE_VINE.getDefaultState(); + BlockState eyeState = random.nextBoolean() ? BlocksRegistry.EYEBALL.getDefaultState() : BlocksRegistry.EYEBALL_SMALL.getDefaultState(); + + for (int y = 0; y < h2; y++) + BlocksHelper.setWithUpdate(world, pos.down(y), vineState); + + BlocksHelper.setWithUpdate(world, pos.down(h2), eyeState); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureFeatherFern.java b/src/main/java/redd90/betternether/structures/plants/StructureFeatherFern.java new file mode 100644 index 0000000..c7564b9 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureFeatherFern.java @@ -0,0 +1,11 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.blocks.BlockCommonPlant; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureFeatherFern extends StructureScatter implements IStructure { + public StructureFeatherFern() { + super(BlocksRegistry.FEATHER_FERN, BlockCommonPlant.AGE, 4); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureGiantMold.java b/src/main/java/redd90/betternether/structures/plants/StructureGiantMold.java new file mode 100644 index 0000000..5fd4e75 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureGiantMold.java @@ -0,0 +1,54 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockRedLargeMushroom; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureGiantMold implements IStructure { + Mutable npos = new Mutable(); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + Block under; + if (world.getBlockState(pos.down()).getBlock() == BlocksRegistry.NETHER_MYCELIUM) { + for (int i = 0; i < 10; i++) { + int x = pos.getX() + (int) (random.nextGaussian() * 2); + int z = pos.getZ() + (int) (random.nextGaussian() * 2); + int y = pos.getY() + random.nextInt(6); + for (int j = 0; j < 16; j++) { + npos.setPos(x, y - j, z); + under = world.getBlockState(npos.down()).getBlock(); + if (under == BlocksRegistry.NETHER_MYCELIUM) { + grow(world, npos, random); + } + } + } + } + } + + public void grow(IServerWorld world, BlockPos pos, Random random) { + int size = 2 + random.nextInt(6); + for (int y = 1; y <= size; y++) + if (!world.isAirBlock(pos.up(y))) { + if (y == 1) + return; + size = y - 1; + break; + } + BlockState middle = BlocksRegistry.GIANT_MOLD.getDefaultState().with(BlockRedLargeMushroom.SHAPE, TripleShape.MIDDLE); + for (int y = 1; y < size; y++) + BlocksHelper.setWithUpdate(world, pos.up(y), middle); + BlocksHelper.setWithUpdate(world, pos.up(size), BlocksRegistry.GIANT_MOLD.getDefaultState().with(BlockRedLargeMushroom.SHAPE, TripleShape.TOP)); + BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.GIANT_MOLD.getDefaultState().with(BlockRedLargeMushroom.SHAPE, TripleShape.BOTTOM)); + } +} + diff --git a/src/main/java/redd90/betternether/structures/plants/StructureGoldenLumabusVine.java b/src/main/java/redd90/betternether/structures/plants/StructureGoldenLumabusVine.java new file mode 100644 index 0000000..223e484 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureGoldenLumabusVine.java @@ -0,0 +1,33 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockLumabusVine; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureGoldenLumabusVine implements IStructure { + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + int h = random.nextInt(19) + 5; + int h2 = BlocksHelper.downRay(world, pos, h); + h2 -= 2; + + if (h2 < 3) + return; + + BlockState vineState = BlocksRegistry.GOLDEN_LUMABUS_VINE.getDefaultState().with(BlockLumabusVine.SHAPE, TripleShape.MIDDLE); + + BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.GOLDEN_LUMABUS_VINE.getDefaultState()); + + for (int y = 1; y < h2; y++) + BlocksHelper.setWithUpdate(world, pos.down(y), vineState); + + BlocksHelper.setWithUpdate(world, pos.down(h2), BlocksRegistry.GOLDEN_LUMABUS_VINE.getDefaultState().with(BlockLumabusVine.SHAPE, TripleShape.BOTTOM)); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureGoldenVine.java b/src/main/java/redd90/betternether/structures/plants/StructureGoldenVine.java new file mode 100644 index 0000000..edd7e19 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureGoldenVine.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureGoldenVine extends StructureVine { + public StructureGoldenVine() { + super(BlocksRegistry.GOLDEN_VINE); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureGrayMold.java b/src/main/java/redd90/betternether/structures/plants/StructureGrayMold.java new file mode 100644 index 0000000..841fa2d --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureGrayMold.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureGrayMold extends StructureScatter { + public StructureGrayMold() { + super(BlocksRegistry.GRAY_MOLD); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureHookMushroom.java b/src/main/java/redd90/betternether/structures/plants/StructureHookMushroom.java new file mode 100644 index 0000000..7630206 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureHookMushroom.java @@ -0,0 +1,17 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureHookMushroom implements IStructure { + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (pos.getY() < 90 || !BlocksHelper.isNetherrack(world.getBlockState(pos.up()))) return; + BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.HOOK_MUSHROOM.getDefaultState()); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureInkBush.java b/src/main/java/redd90/betternether/structures/plants/StructureInkBush.java new file mode 100644 index 0000000..8aaedbe --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureInkBush.java @@ -0,0 +1,10 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.blocks.BlockCommonPlant; +import redd90.betternether.registry.BlocksRegistry; + +public class StructureInkBush extends StructureScatter { + public StructureInkBush() { + super(BlocksRegistry.INK_BUSH, BlockCommonPlant.AGE, 4); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureJellyfishMushroom.java b/src/main/java/redd90/betternether/structures/plants/StructureJellyfishMushroom.java new file mode 100644 index 0000000..d1d9a16 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureJellyfishMushroom.java @@ -0,0 +1,62 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.tags.BlockTags; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockJellyfishMushroom; +import redd90.betternether.blocks.BlockJellyfishMushroom.JellyShape; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureJellyfishMushroom implements IStructure { + Mutable npos = new Mutable(); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + Block under; + if (world.getBlockState(pos.down()).getBlock().isIn(BlockTags.NYLIUM)) { + for (int i = 0; i < 10; i++) { + int x = pos.getX() + (int) (random.nextGaussian() * 2); + int z = pos.getZ() + (int) (random.nextGaussian() * 2); + int y = pos.getY() + random.nextInt(6); + for (int j = 0; j < 6; j++) { + npos.setPos(x, y - j, z); + if (npos.getY() > 31) { + under = world.getBlockState(npos.down()).getBlock(); + if (under.isIn(BlockTags.NYLIUM) && world.isAirBlock(npos)) { + grow(world, npos, random); + } + } + else + break; + } + } + } + } + + public void grow(IServerWorld world, BlockPos pos, Random random) { + if (random.nextBoolean() && world.isAirBlock(pos.up())) + growMedium(world, pos); + else + growSmall(world, pos); + } + + public void growSmall(IServerWorld world, BlockPos pos) { + Block down = world.getBlockState(pos.down()).getBlock(); + JellyShape visual = down == BlocksRegistry.MUSHROOM_GRASS ? JellyShape.NORMAL : down == BlocksRegistry.SEPIA_MUSHROOM_GRASS ? JellyShape.SEPIA : JellyShape.POOR; + BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.JELLYFISH_MUSHROOM.getDefaultState().with(BlockJellyfishMushroom.SHAPE, TripleShape.BOTTOM).with(BlockJellyfishMushroom.VISUAL, visual)); + } + + public void growMedium(IServerWorld world, BlockPos pos) { + Block down = world.getBlockState(pos.down()).getBlock(); + JellyShape visual = down == BlocksRegistry.MUSHROOM_GRASS ? JellyShape.NORMAL : down == BlocksRegistry.SEPIA_MUSHROOM_GRASS ? JellyShape.SEPIA : JellyShape.POOR; + BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.JELLYFISH_MUSHROOM.getDefaultState().with(BlockJellyfishMushroom.SHAPE, TripleShape.MIDDLE).with(BlockJellyfishMushroom.VISUAL, visual)); + BlocksHelper.setWithUpdate(world, pos.up(), BlocksRegistry.JELLYFISH_MUSHROOM.getDefaultState().with(BlockJellyfishMushroom.SHAPE, TripleShape.TOP).with(BlockJellyfishMushroom.VISUAL, visual)); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureJungleMoss.java b/src/main/java/redd90/betternether/structures/plants/StructureJungleMoss.java new file mode 100644 index 0000000..903e482 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureJungleMoss.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureJungleMoss extends StructureWall { + public StructureJungleMoss() { + super(BlocksRegistry.JUNGLE_MOSS); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureJunglePlant.java b/src/main/java/redd90/betternether/structures/plants/StructureJunglePlant.java new file mode 100644 index 0000000..e0aed21 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureJunglePlant.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureJunglePlant extends StructureScatter { + public StructureJunglePlant() { + super(BlocksRegistry.JUNGLE_PLANT); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureLucis.java b/src/main/java/redd90/betternether/structures/plants/StructureLucis.java new file mode 100644 index 0000000..62900f6 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureLucis.java @@ -0,0 +1,79 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.block.HorizontalBlock; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockLucisMushroom; +import redd90.betternether.blocks.BlockLucisSpore; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureLucis implements IStructure { + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (canGenerate(world, pos)) { + BlockState center = BlocksRegistry.LUCIS_MUSHROOM.getDefaultState().with(BlockLucisMushroom.SHAPE, BlockLucisMushroom.EnumShape.CENTER); + BlockState side = BlocksRegistry.LUCIS_MUSHROOM.getDefaultState().with(BlockLucisMushroom.SHAPE, BlockLucisMushroom.EnumShape.SIDE); + BlockState corner = BlocksRegistry.LUCIS_MUSHROOM.getDefaultState().with(BlockLucisMushroom.SHAPE, BlockLucisMushroom.EnumShape.CORNER); + + if (random.nextInt(3) == 0) { + if (canReplace(world.getBlockState(pos))) + BlocksHelper.setWithUpdate(world, pos, center); + if (canReplace(world.getBlockState(pos.north()))) + BlocksHelper.setWithUpdate(world, pos.north(), side.with(BlockLucisMushroom.FACING, Direction.NORTH)); + if (canReplace(world.getBlockState(pos.south()))) + BlocksHelper.setWithUpdate(world, pos.south(), side.with(BlockLucisMushroom.FACING, Direction.SOUTH)); + if (canReplace(world.getBlockState(pos.east()))) + BlocksHelper.setWithUpdate(world, pos.east(), side.with(BlockLucisMushroom.FACING, Direction.EAST)); + if (canReplace(world.getBlockState(pos.west()))) + BlocksHelper.setWithUpdate(world, pos.west(), side.with(BlockLucisMushroom.FACING, Direction.WEST)); + + if (canReplace(world.getBlockState(pos.north().east()))) + BlocksHelper.setWithUpdate(world, pos.north().east(), corner.with(BlockLucisMushroom.FACING, Direction.SOUTH)); + if (canReplace(world.getBlockState(pos.north().west()))) + BlocksHelper.setWithUpdate(world, pos.north().west(), corner.with(BlockLucisMushroom.FACING, Direction.EAST)); + if (canReplace(world.getBlockState(pos.south().east()))) + BlocksHelper.setWithUpdate(world, pos.south().east(), corner.with(BlockLucisMushroom.FACING, Direction.WEST)); + if (canReplace(world.getBlockState(pos.south().west()))) + BlocksHelper.setWithUpdate(world, pos.south().west(), corner.with(BlockLucisMushroom.FACING, Direction.NORTH)); + } + else { + BlockState state = world.getBlockState(pos); + if (state.getBlock() == BlocksRegistry.LUCIS_SPORE) { + if (state.get(BlockLucisSpore.FACING) == Direction.SOUTH) pos = pos.north(); + else if (state.get(BlockLucisSpore.FACING) == Direction.WEST) pos = pos.east(); + } + else { + if (!world.getBlockState(pos.north()).isAir()) { + pos = pos.north(); + } + else if (!world.getBlockState(pos.east()).isAir()) { + pos = pos.east(); + } + } + + if (canReplace(world.getBlockState(pos))) BlocksHelper.setWithUpdate(world, pos, corner.with(BlockLucisMushroom.FACING, Direction.SOUTH)); + if (canReplace(world.getBlockState(pos.west()))) BlocksHelper.setWithUpdate(world, pos.west(), corner.with(BlockLucisMushroom.FACING, Direction.EAST)); + if (canReplace(world.getBlockState(pos.south()))) BlocksHelper.setWithUpdate(world, pos.south(), corner.with(BlockLucisMushroom.FACING, Direction.WEST)); + if (canReplace(world.getBlockState(pos.south().west()))) BlocksHelper.setWithUpdate(world, pos.south().west(), corner.with(BlockLucisMushroom.FACING, Direction.NORTH)); + } + } + } + + private boolean canReplace(BlockState state) { + return state.getBlock() == BlocksRegistry.LUCIS_SPORE || state.getMaterial().isReplaceable(); + } + + private boolean canGenerate(IServerWorld world, BlockPos pos) { + BlockState state; + for (Direction dir : HorizontalBlock.HORIZONTAL_FACING.getAllowedValues()) + if (BlocksHelper.isNetherrack(state = world.getBlockState(pos.offset(dir))) || BlocksRegistry.ANCHOR_TREE.isTreeLog(state.getBlock())) + return true; + return false; + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureLumabusVine.java b/src/main/java/redd90/betternether/structures/plants/StructureLumabusVine.java new file mode 100644 index 0000000..d4cb4b4 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureLumabusVine.java @@ -0,0 +1,33 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockLumabusVine; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureLumabusVine implements IStructure { + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + int h = random.nextInt(19) + 5; + int h2 = BlocksHelper.downRay(world, pos, h); + h2 -= 2; + + if (h2 < 3) + return; + + BlockState vineState = BlocksRegistry.LUMABUS_VINE.getDefaultState().with(BlockLumabusVine.SHAPE, TripleShape.MIDDLE); + + BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.LUMABUS_VINE.getDefaultState()); + + for (int y = 1; y < h2; y++) + BlocksHelper.setWithUpdate(world, pos.down(y), vineState); + + BlocksHelper.setWithUpdate(world, pos.down(h2), BlocksRegistry.LUMABUS_VINE.getDefaultState().with(BlockLumabusVine.SHAPE, TripleShape.BOTTOM)); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureMagmaFlower.java b/src/main/java/redd90/betternether/structures/plants/StructureMagmaFlower.java new file mode 100644 index 0000000..e418a64 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureMagmaFlower.java @@ -0,0 +1,10 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.blocks.BlockCommonPlant; +import redd90.betternether.registry.BlocksRegistry; + +public class StructureMagmaFlower extends StructureScatter { + public StructureMagmaFlower() { + super(BlocksRegistry.MAGMA_FLOWER, BlockCommonPlant.AGE, 4); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureMedBrownMushroom.java b/src/main/java/redd90/betternether/structures/plants/StructureMedBrownMushroom.java new file mode 100644 index 0000000..2499189 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureMedBrownMushroom.java @@ -0,0 +1,99 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockBrownLargeMushroom; +import redd90.betternether.blocks.BlockBrownLargeMushroom.BrownMushroomShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureMedBrownMushroom implements IStructure { + private static final Mutable POS = new Mutable(); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + Block under; + if (world.getBlockState(pos.down()).getBlock() == BlocksRegistry.NETHER_MYCELIUM) { + for (int i = 0; i < 10; i++) { + int x = pos.getX() + (int) (random.nextGaussian() * 2); + int z = pos.getZ() + (int) (random.nextGaussian() * 2); + if (((x + z + 1) & 1) == 0) { + if (random.nextBoolean()) { + x += random.nextBoolean() ? 1 : -1; + } + else { + z += random.nextBoolean() ? 1 : -1; + } + } + int y = pos.getY() + random.nextInt(6); + for (int j = 0; j < 12; j++) { + POS.setPos(x, y - j, z); + under = world.getBlockState(POS.down()).getBlock(); + if (under == BlocksRegistry.NETHER_MYCELIUM) { + grow(world, POS, random); + } + } + } + } + } + + public void grow(IServerWorld world, BlockPos pos, Random random) { + int size = 2 + random.nextInt(3); + for (int y = 1; y <= size; y++) + if (!world.isAirBlock(pos.up(y))) { + if (y < 3) + return; + size = y - 1; + break; + } + boolean hasAir = true; + for (int x = -1; x < 2; x++) + for (int z = -1; z < 2; z++) + hasAir = hasAir && world.isAirBlock(pos.up(size).add(x, 0, z)); + if (hasAir) { + BlockState middle = BlocksRegistry.BROWN_LARGE_MUSHROOM + .getDefaultState() + .with(BlockBrownLargeMushroom.SHAPE, BrownMushroomShape.MIDDLE); + BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.BROWN_LARGE_MUSHROOM + .getDefaultState() + .with(BlockBrownLargeMushroom.SHAPE, BrownMushroomShape.BOTTOM)); + for (int y = 1; y < size; y++) + BlocksHelper.setWithUpdate(world, pos.up(y), middle); + pos = pos.up(size); + BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.BROWN_LARGE_MUSHROOM + .getDefaultState() + .with(BlockBrownLargeMushroom.SHAPE, BrownMushroomShape.TOP)); + BlocksHelper.setWithUpdate(world, pos.north(), BlocksRegistry.BROWN_LARGE_MUSHROOM + .getDefaultState() + .with(BlockBrownLargeMushroom.SHAPE, BrownMushroomShape.SIDE_N)); + BlocksHelper.setWithUpdate(world, pos.south(), BlocksRegistry.BROWN_LARGE_MUSHROOM + .getDefaultState() + .with(BlockBrownLargeMushroom.SHAPE, BrownMushroomShape.SIDE_S)); + BlocksHelper.setWithUpdate(world, pos.east(), BlocksRegistry.BROWN_LARGE_MUSHROOM + .getDefaultState() + .with(BlockBrownLargeMushroom.SHAPE, BrownMushroomShape.SIDE_E)); + BlocksHelper.setWithUpdate(world, pos.west(), BlocksRegistry.BROWN_LARGE_MUSHROOM + .getDefaultState() + .with(BlockBrownLargeMushroom.SHAPE, BrownMushroomShape.SIDE_W)); + BlocksHelper.setWithUpdate(world, pos.north().east(), BlocksRegistry.BROWN_LARGE_MUSHROOM + .getDefaultState() + .with(BlockBrownLargeMushroom.SHAPE, BrownMushroomShape.CORNER_N)); + BlocksHelper.setWithUpdate(world, pos.north().west(), BlocksRegistry.BROWN_LARGE_MUSHROOM + .getDefaultState() + .with(BlockBrownLargeMushroom.SHAPE, BrownMushroomShape.CORNER_W)); + BlocksHelper.setWithUpdate(world, pos.south().east(), BlocksRegistry.BROWN_LARGE_MUSHROOM + .getDefaultState() + .with(BlockBrownLargeMushroom.SHAPE, BrownMushroomShape.CORNER_E)); + BlocksHelper.setWithUpdate(world, pos.south().west(), BlocksRegistry.BROWN_LARGE_MUSHROOM + .getDefaultState() + .with(BlockBrownLargeMushroom.SHAPE, BrownMushroomShape.CORNER_S)); + } + } +} + diff --git a/src/main/java/redd90/betternether/structures/plants/StructureMedRedMushroom.java b/src/main/java/redd90/betternether/structures/plants/StructureMedRedMushroom.java new file mode 100644 index 0000000..f481294 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureMedRedMushroom.java @@ -0,0 +1,62 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockRedLargeMushroom; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureMedRedMushroom implements IStructure { + private static final Mutable POS = new Mutable(); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + Block under; + if (world.getBlockState(pos.down()).getBlock() == BlocksRegistry.NETHER_MYCELIUM) { + for (int i = 0; i < 10; i++) { + int x = pos.getX() + (int) (random.nextGaussian() * 2); + int z = pos.getZ() + (int) (random.nextGaussian() * 2); + if (((x + z) & 1) == 0) { + if (random.nextBoolean()) { + x += random.nextBoolean() ? 1 : -1; + } + else { + z += random.nextBoolean() ? 1 : -1; + } + } + int y = pos.getY() + random.nextInt(6); + for (int j = 0; j < 12; j++) { + POS.setPos(x, y - j, z); + under = world.getBlockState(POS.down()).getBlock(); + if (under == BlocksRegistry.NETHER_MYCELIUM) { + grow(world, POS, random); + } + } + } + } + } + + public void grow(IServerWorld world, BlockPos pos, Random random) { + int size = 1 + random.nextInt(4); + for (int y = 1; y <= size; y++) + if (!world.isAirBlock(pos.up(y))) { + if (y == 1) + return; + size = y - 1; + break; + } + BlockState middle = BlocksRegistry.RED_LARGE_MUSHROOM.getDefaultState().with(BlockRedLargeMushroom.SHAPE, TripleShape.MIDDLE); + for (int y = 1; y < size; y++) + BlocksHelper.setWithUpdate(world, pos.up(y), middle); + BlocksHelper.setWithUpdate(world, pos.up(size), BlocksRegistry.RED_LARGE_MUSHROOM.getDefaultState().with(BlockRedLargeMushroom.SHAPE, TripleShape.TOP)); + BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.RED_LARGE_MUSHROOM.getDefaultState().with(BlockRedLargeMushroom.SHAPE, TripleShape.BOTTOM)); + } +} + diff --git a/src/main/java/redd90/betternether/structures/plants/StructureMossCover.java b/src/main/java/redd90/betternether/structures/plants/StructureMossCover.java new file mode 100644 index 0000000..f283b7c --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureMossCover.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureMossCover extends StructureScatter { + public StructureMossCover() { + super(BlocksRegistry.MOSS_COVER); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureMushroomFir.java b/src/main/java/redd90/betternether/structures/plants/StructureMushroomFir.java new file mode 100644 index 0000000..9cf9896 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureMushroomFir.java @@ -0,0 +1,128 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockMushroomFir; +import redd90.betternether.blocks.BlockMushroomFir.MushroomFirShape; +import redd90.betternether.blocks.BlockNetherMycelium; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureMushroomFir implements IStructure { + Mutable npos = new Mutable(); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (world.getBlockState(pos.down()).getBlock() == BlocksRegistry.NETHER_MYCELIUM) { + int h = 3 + random.nextInt(5); + for (int y = 1; y < h; y++) + if (!world.isAirBlock(pos.up(y))) { + h = y; + break; + } + if (h < 3) + return; + + BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.MUSHROOM_FIR + .getDefaultState() + .with(BlockMushroomFir.SHAPE, MushroomFirShape.BOTTOM)); + int h2 = (h + 1) >> 1; + h += pos.getY(); + h2 += pos.getY(); + npos.setPos(pos); + for (int y = pos.getY() + 1; y < h2; y++) { + npos.setY(y); + BlocksHelper.setWithUpdate(world, npos, BlocksRegistry.MUSHROOM_FIR + .getDefaultState() + .with(BlockMushroomFir.SHAPE, MushroomFirShape.MIDDLE)); + } + for (int y = h2; y < h; y++) { + npos.setY(y); + BlocksHelper.setWithUpdate(world, npos, BlocksRegistry.MUSHROOM_FIR + .getDefaultState() + .with(BlockMushroomFir.SHAPE, MushroomFirShape.TOP)); + } + int h3 = (h2 + h) >> 1; + for (int y = h2 - 1; y < h3; y++) { + npos.setY(y); + BlockPos branch; + if (random.nextBoolean()) { + branch = npos.north(); + if (world.isAirBlock(branch)) + BlocksHelper.setWithUpdate(world, branch, BlocksRegistry.MUSHROOM_FIR + .getDefaultState() + .with(BlockMushroomFir.SHAPE, MushroomFirShape.SIDE_BIG_S)); + } + if (random.nextBoolean()) { + branch = npos.south(); + if (world.isAirBlock(branch)) + BlocksHelper.setWithUpdate(world, branch, BlocksRegistry.MUSHROOM_FIR + .getDefaultState() + .with(BlockMushroomFir.SHAPE, MushroomFirShape.SIDE_BIG_N)); + } + if (random.nextBoolean()) { + branch = npos.east(); + if (world.isAirBlock(branch)) + BlocksHelper.setWithUpdate(world, branch, BlocksRegistry.MUSHROOM_FIR + .getDefaultState() + .with(BlockMushroomFir.SHAPE, MushroomFirShape.SIDE_BIG_W)); + } + if (random.nextBoolean()) { + branch = npos.west(); + if (world.isAirBlock(branch)) + BlocksHelper.setWithUpdate(world, branch, BlocksRegistry.MUSHROOM_FIR + .getDefaultState() + .with(BlockMushroomFir.SHAPE, MushroomFirShape.SIDE_BIG_E)); + } + } + for (int y = h3; y < h; y++) { + npos.setY(y); + BlockPos branch; + if (random.nextBoolean()) { + branch = npos.north(); + if (world.isAirBlock(branch)) + BlocksHelper.setWithUpdate(world, branch, BlocksRegistry.MUSHROOM_FIR + .getDefaultState() + .with(BlockMushroomFir.SHAPE, MushroomFirShape.SIDE_SMALL_S)); + } + if (random.nextBoolean()) { + branch = npos.south(); + if (world.isAirBlock(branch)) + BlocksHelper.setWithUpdate(world, branch, BlocksRegistry.MUSHROOM_FIR + .getDefaultState() + .with(BlockMushroomFir.SHAPE, MushroomFirShape.SIDE_SMALL_N)); + } + if (random.nextBoolean()) { + branch = npos.east(); + if (world.isAirBlock(branch)) + BlocksHelper.setWithUpdate(world, branch, BlocksRegistry.MUSHROOM_FIR + .getDefaultState() + .with(BlockMushroomFir.SHAPE, MushroomFirShape.SIDE_SMALL_W)); + } + if (random.nextBoolean()) { + branch = npos.west(); + if (world.isAirBlock(branch)) + BlocksHelper.setWithUpdate(world, branch, BlocksRegistry.MUSHROOM_FIR + .getDefaultState() + .with(BlockMushroomFir.SHAPE, MushroomFirShape.SIDE_SMALL_E)); + } + } + npos.setY(h); + if (world.isAirBlock(npos)) + BlocksHelper.setWithUpdate(world, npos, BlocksRegistry.MUSHROOM_FIR + .getDefaultState() + .with(BlockMushroomFir.SHAPE, MushroomFirShape.END)); + + BlocksHelper.cover(world, + pos.down(), + BlocksRegistry.NETHER_MYCELIUM, + BlocksRegistry.NETHER_MYCELIUM.getDefaultState().with(BlockNetherMycelium.IS_BLUE, true), + 5, + random); + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureNeonEquisetum.java b/src/main/java/redd90/betternether/structures/plants/StructureNeonEquisetum.java new file mode 100644 index 0000000..1c67e8d --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureNeonEquisetum.java @@ -0,0 +1,42 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.BlockNeonEquisetum; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureNeonEquisetum implements IStructure { + private Mutable blockPos = new Mutable(); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (pos.getY() < 90 || !BlocksHelper.isNetherrack(world.getBlockState(pos.up()))) return; + + int h = BlocksHelper.downRay(world, pos, 10); + if (h < 3) + return; + h = MHelper.randRange(3, h, random); + + BlockState bottom = BlocksRegistry.NEON_EQUISETUM.getDefaultState().with(BlockNeonEquisetum.SHAPE, TripleShape.BOTTOM); + BlockState middle = BlocksRegistry.NEON_EQUISETUM.getDefaultState().with(BlockNeonEquisetum.SHAPE, TripleShape.MIDDLE); + BlockState top = BlocksRegistry.NEON_EQUISETUM.getDefaultState().with(BlockNeonEquisetum.SHAPE, TripleShape.TOP); + + blockPos.setPos(pos); + for (int y = 0; y < h - 2; y++) { + blockPos.setY(pos.getY() - y); + BlocksHelper.setWithUpdate(world, blockPos, top); + } + blockPos.setY(blockPos.getY() - 1); + BlocksHelper.setWithUpdate(world, blockPos, middle); + blockPos.setY(blockPos.getY() - 1); + BlocksHelper.setWithUpdate(world, blockPos, bottom); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureNetherCactus.java b/src/main/java/redd90/betternether/structures/plants/StructureNetherCactus.java new file mode 100644 index 0000000..c82814c --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureNetherCactus.java @@ -0,0 +1,53 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockNetherCactus; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureNetherCactus implements IStructure { + private Mutable npos = new Mutable(); + + private boolean canPlaceAt(IWorld world, BlockPos pos) { + return world.getBlockState(pos.down()).getBlock() == Blocks.GRAVEL; + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (canPlaceAt(world, pos)) { + BlockState top = BlocksRegistry.NETHER_CACTUS.getDefaultState(); + BlockState bottom = BlocksRegistry.NETHER_CACTUS.getDefaultState().with(BlockNetherCactus.TOP, false); + for (int i = 0; i < 16; i++) { + int x = pos.getX() + (int) (random.nextGaussian() * 4); + int z = pos.getZ() + (int) (random.nextGaussian() * 4); + if (((x + z + pos.getY()) & 1) == 0) { + if (random.nextBoolean()) { + x += random.nextBoolean() ? 1 : -1; + } + else { + z += random.nextBoolean() ? 1 : -1; + } + } + int y = pos.getY() + random.nextInt(8); + for (int j = 0; j < 8; j++) { + npos.setPos(x, y - j, z); + if (world.isAirBlock(npos) && canPlaceAt(world, npos)) { + int h = random.nextInt(3); + for (int n = 0; n < h; n++) + BlocksHelper.setWithUpdate(world, npos.up(n), bottom); + BlocksHelper.setWithUpdate(world, npos.up(h), top); + break; + } + } + } + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureNetherGrass.java b/src/main/java/redd90/betternether/structures/plants/StructureNetherGrass.java new file mode 100644 index 0000000..ac9e7e2 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureNetherGrass.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureNetherGrass extends StructureScatter { + public StructureNetherGrass() { + super(BlocksRegistry.NETHER_GRASS); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureNetherSakura.java b/src/main/java/redd90/betternether/structures/plants/StructureNetherSakura.java new file mode 100644 index 0000000..6e17e25 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureNetherSakura.java @@ -0,0 +1,107 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureNetherSakura implements IStructure { + private static final Mutable POS = new Mutable(); + private static final Mutable POS2 = new Mutable(); + + public StructureNetherSakura() {} + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (pos.getY() < 96) return; + grow(world, pos, random, true); + } + + public void grow(IServerWorld world, BlockPos pos, Random random, boolean natural) { + int l = MHelper.randRange(15, 24, random); + double height = MHelper.randRange(10, 15, random); + double radius = height * (0.2 + random.nextDouble() * 0.1); + + if ((l + height) - BlocksHelper.downRay(world, pos, (int) (l + height)) > 10) return; + + l = BlocksHelper.downRay(world, pos, l + 1); + int l2 = l * 2 / 3; + for (int x = -3; x <= 3; x++) { + int x2 = x * x; + POS.setX(pos.getX() + x); + for (int z = -3; z <= 3; z++) { + int z2 = z * z; + double d = x2 + z2 + 1.4; + if (d < 10) { + if (d < 2.8 || random.nextBoolean()) { + POS.setZ(pos.getZ() + z); + double length = MHelper.randRange(l2, l, random) / (d > 2 ? d : 1); + if (length < 1) length = 1; + int start = MHelper.randRange(-2, 0, random); + for (int y = start; y < length; y++) { + POS.setY(pos.getY() - y); + if (canReplace(world.getBlockState(POS))) BlocksHelper.setWithUpdate(world, POS, BlocksRegistry.NETHER_SAKURA.log.getDefaultState()); + } + if (BlocksRegistry.NETHER_SAKURA.isTreeLog(world.getBlockState(POS).getBlock())) BlocksHelper.setWithUpdate(world, POS, BlocksRegistry.NETHER_SAKURA.bark.getDefaultState()); + } + + if (d < 2) { + crown(world, POS, radius, height, random); + } + } + } + } + } + + private void crown(IWorld world, BlockPos pos, double radius, double height, Random random) { + BlockState leaves = BlocksRegistry.NETHER_SAKURA_LEAVES.getDefaultState(); + double r2 = radius * radius; + int start = (int) Math.floor(-radius); + for (int cy = 0; cy <= radius; cy++) { + int cy2 = cy * cy; + POS2.setY((int) (pos.getY() + cy)); + for (int cx = start; cx <= radius; cx++) { + int cx2 = cx * cx; + POS2.setX(pos.getX() + cx); + for (int cz = start; cz <= radius; cz++) { + int cz2 = cz * cz; + if (cx2 + cy2 + cz2 < r2) { + POS2.setZ(pos.getZ() + cz); + if (world.getBlockState(POS2).getMaterial().isReplaceable()) BlocksHelper.setWithUpdate(world, POS2, leaves); + } + } + } + } + BlockState state; + for (int cy = 0; cy <= height; cy++) { + r2 = radius * (1 - (double) cy / height); + r2 *= r2; + POS2.setX(pos.getX()); + POS2.setZ(pos.getZ()); + POS2.setY(pos.getY() - cy); + if (!(state = world.getBlockState(POS2)).getMaterial().isReplaceable() && !BlocksRegistry.NETHER_SAKURA.isTreeLog(state.getBlock())) return; + for (int cx = start; cx <= radius; cx++) { + int cx2 = cx * cx; + POS2.setX(pos.getX() + cx); + for (int cz = start; cz <= radius; cz++) { + int cz2 = cz * cz; + if (cx2 + cz2 < r2) { + POS2.setZ(pos.getZ() + cz); + if (world.getBlockState(POS2).getMaterial().isReplaceable()) BlocksHelper.setWithUpdate(world, POS2, leaves); + } + } + } + } + } + + private boolean canReplace(BlockState state) { + return BlocksHelper.isNetherGround(state) || state.getMaterial().isReplaceable(); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureNetherSakuraBush.java b/src/main/java/redd90/betternether/structures/plants/StructureNetherSakuraBush.java new file mode 100644 index 0000000..868d707 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureNetherSakuraBush.java @@ -0,0 +1,64 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureNetherSakuraBush implements IStructure { + private static final Mutable POS = new Mutable(); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (!world.isAirBlock(pos) || !world.isAirBlock(pos.up()) || !world.isAirBlock(pos.up(15))) + return; + + float r = random.nextFloat() * 1.5F + 0.5F; + int count = (int) r; + + for (int i = 0; i < count; i++) { + float fr = r - i; + int ir = (int) Math.ceil(fr); + float r2 = fr * fr; + + int x1 = pos.getX() - ir; + int x2 = pos.getX() + ir; + int z1 = pos.getZ() - ir; + int z2 = pos.getZ() + ir; + + POS.setY(pos.getY() + i); + + for (int x = x1; x < x2; x++) { + POS.setX(x); + int sqx = x - pos.getX(); + sqx *= sqx; + for (int z = z1; z < z2; z++) { + int sqz = z - pos.getZ(); + sqz *= sqz; + POS.setZ(z); + if (sqx + sqz < r2 + random.nextFloat() * r) { + setIfAir(world, POS, BlocksRegistry.NETHER_SAKURA_LEAVES.getDefaultState()); + } + } + } + } + + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.NETHER_SAKURA.bark.getDefaultState()); + setIfAir(world, pos.up(), BlocksRegistry.NETHER_SAKURA_LEAVES.getDefaultState()); + setIfAir(world, pos.north(), BlocksRegistry.NETHER_SAKURA_LEAVES.getDefaultState()); + setIfAir(world, pos.south(), BlocksRegistry.NETHER_SAKURA_LEAVES.getDefaultState()); + setIfAir(world, pos.east(), BlocksRegistry.NETHER_SAKURA_LEAVES.getDefaultState()); + setIfAir(world, pos.west(), BlocksRegistry.NETHER_SAKURA_LEAVES.getDefaultState()); + } + + private void setIfAir(IWorld world, BlockPos pos, BlockState state) { + if (world.getBlockState(pos).getMaterial().isReplaceable()) + BlocksHelper.setWithoutUpdate(world, pos, state); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureNetherWart.java b/src/main/java/redd90/betternether/structures/plants/StructureNetherWart.java new file mode 100644 index 0000000..fdbcdf5 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureNetherWart.java @@ -0,0 +1,10 @@ +package redd90.betternether.structures.plants; + +import net.minecraft.block.Blocks; +import net.minecraft.block.NetherWartBlock; + +public class StructureNetherWart extends StructureScatter { + public StructureNetherWart() { + super(Blocks.NETHER_WART, NetherWartBlock.AGE, 4); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureOldBrownMushrooms.java b/src/main/java/redd90/betternether/structures/plants/StructureOldBrownMushrooms.java new file mode 100644 index 0000000..eaf0e59 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureOldBrownMushrooms.java @@ -0,0 +1,32 @@ +package redd90.betternether.structures.plants; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.StructureObjScatter; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.StructureWorld; + +public class StructureOldBrownMushrooms extends StructureObjScatter { + private static final StructureWorld[] TREES = new StructureWorld[] { + new StructureWorld("trees/brown_mushroom_01", -4, StructureType.FLOOR), + new StructureWorld("trees/brown_mushroom_02", -3, StructureType.FLOOR), + new StructureWorld("trees/brown_mushroom_03", -3, StructureType.FLOOR), + new StructureWorld("trees/brown_mushroom_04", -2, StructureType.FLOOR) + }; + + public StructureOldBrownMushrooms() { + super(9, TREES); + } + + protected boolean isGround(BlockState state) { + return state.getBlock() == BlocksRegistry.NETHER_MYCELIUM || BlocksHelper.isNetherGround(state); + } + + protected boolean isStructure(BlockState state) { + return state.getBlock() == Blocks.MUSHROOM_STEM || + state.getBlock() == Blocks.BROWN_MUSHROOM_BLOCK || + state.getBlock() == Blocks.RED_MUSHROOM_BLOCK; + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureOldRedMushrooms.java b/src/main/java/redd90/betternether/structures/plants/StructureOldRedMushrooms.java new file mode 100644 index 0000000..7a0c674 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureOldRedMushrooms.java @@ -0,0 +1,35 @@ +package redd90.betternether.structures.plants; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.StructureObjScatter; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.StructureWorld; + +public class StructureOldRedMushrooms extends StructureObjScatter { + private static final StructureWorld[] TREES = new StructureWorld[] { + new StructureWorld("trees/red_mushroom_01", -2, StructureType.FLOOR), + new StructureWorld("trees/red_mushroom_02", -1, StructureType.FLOOR), + new StructureWorld("trees/red_mushroom_03", -1, StructureType.FLOOR), + new StructureWorld("trees/red_mushroom_04", -4, StructureType.FLOOR), + new StructureWorld("trees/red_mushroom_05", -4, StructureType.FLOOR), + new StructureWorld("trees/red_mushroom_06", -1, StructureType.FLOOR), + new StructureWorld("trees/red_mushroom_07", -4, StructureType.FLOOR) + }; + + public StructureOldRedMushrooms() { + super(9, TREES); + } + + protected boolean isGround(BlockState state) { + return state.getBlock() == BlocksRegistry.NETHER_MYCELIUM || BlocksHelper.isNetherGround(state); + } + + protected boolean isStructure(BlockState state) { + return state.getBlock() == Blocks.MUSHROOM_STEM || + state.getBlock() == Blocks.BROWN_MUSHROOM_BLOCK || + state.getBlock() == Blocks.RED_MUSHROOM_BLOCK; + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureOldWillow.java b/src/main/java/redd90/betternether/structures/plants/StructureOldWillow.java new file mode 100644 index 0000000..8eca4bf --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureOldWillow.java @@ -0,0 +1,228 @@ +package redd90.betternether.structures.plants; + +import java.util.HashSet; +import java.util.Random; +import java.util.Set; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.MathHelper; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.BlockPlantWall; +import redd90.betternether.blocks.BlockWillowBranch; +import redd90.betternether.blocks.BlockWillowBranch.WillowBranchShape; +import redd90.betternether.blocks.BlockWillowLeaves; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.StructureFuncScatter; + +public class StructureOldWillow extends StructureFuncScatter { + private static final float[] CURVE_X = new float[] { 9F, 7F, 1.5F, 0.5F, 3F, 7F }; + private static final float[] CURVE_Y = new float[] { 20F, 17F, 12F, 4F, 0F, -2F }; + private static final Set BLOCKS = new HashSet(); + private Block[] wallPlants; + + public StructureOldWillow() { + super(13); + } + + @Override + public void grow(IServerWorld world, BlockPos pos, Random random) { + grow(world, pos, random, true); + } + + public void grow(IServerWorld world, BlockPos pos, Random random, boolean natural) { + world.setBlockState(pos, Blocks.AIR.getDefaultState(), 0); + float scale = MHelper.randRange(0.7F, 1.3F, random); + int minCount = scale < 1 ? 3 : 4; + int maxCount = scale < 1 ? 5 : 7; + int count = MHelper.randRange(minCount, maxCount, random); + for (int n = 0; n < count; n++) { + float branchSize = MHelper.randRange(0.5F, 1F, random) * scale; + float angle = n * MHelper.PI2 / count; + float radius = CURVE_X[0] * branchSize; + int x1 = Math.round(pos.getX() + radius * (float) Math.cos(angle) + MHelper.randRange(-2F, 2F, random) * branchSize); + int y1 = Math.round(pos.getY() + CURVE_Y[0] * branchSize + MHelper.randRange(-2F, 2F, random) * branchSize); + int z1 = Math.round(pos.getZ() + radius * (float) Math.sin(angle) + MHelper.randRange(-2F, 2F, random) * branchSize); + float crownR = 10 * branchSize; + if (crownR < 1.5F) crownR = 1.5F; + crown(world, new BlockPos(x1, y1 + 1, z1), crownR, random); + + boolean generate = true; + for (int i = 1; i < CURVE_X.length && generate; i++) { + radius = CURVE_X[i] * branchSize; + int x2 = Math.round(pos.getX() + radius * (float) Math.cos(angle) + MHelper.randRange(-2F, 2F, random) * branchSize); + int y2 = Math.round(pos.getY() + CURVE_Y[i] * branchSize + (CURVE_Y[i] > 0 ? MHelper.randRange(-2F, 2F, random) * branchSize : 0)); + int z2 = Math.round(pos.getZ() + radius * (float) Math.sin(angle) + MHelper.randRange(-2F, 2F, random) * branchSize); + + if (CURVE_Y[i] <= 0) { + if (!isGround(world.getBlockState(POS.setPos(x2, y2, z2)))) { + boolean noGround = true; + for (int d = 1; d < 3; d++) { + if (isGround(world.getBlockState(POS.setPos(x2, y2 - d, z2)))) { + y2 -= d; + noGround = false; + break; + } + } + if (noGround) { + x2 = pos.getX(); + y2 = pos.getY(); + generate = false; + } + } + } + + line(world, x1, y1, z1, x2, y2, z2, pos.getY()); + x1 = x2; + y1 = y2; + z1 = z2; + } + } + + if (wallPlants == null) { + wallPlants = new Block[] { BlocksRegistry.WALL_MOSS, BlocksRegistry.WALL_MOSS, BlocksRegistry.WALL_MUSHROOM_BROWN, BlocksRegistry.WALL_MUSHROOM_RED }; + } + + BlockState state; + for (BlockPos bpos : BLOCKS) { + if (BlocksHelper.isNetherGround(state = world.getBlockState(bpos)) || state.getMaterial().isReplaceable()) { + if (!BLOCKS.contains(bpos.up()) || !BLOCKS.contains(bpos.down())) + BlocksHelper.setWithUpdate(world, bpos, BlocksRegistry.WILLOW_BARK.getDefaultState()); + else + BlocksHelper.setWithUpdate(world, bpos, BlocksRegistry.WILLOW_LOG.getDefaultState()); + + if (random.nextInt(8) == 0) { + state = wallPlants[random.nextInt(wallPlants.length)].getDefaultState(); + if (random.nextInt(8) == 0 && !BLOCKS.contains(bpos.north()) && world.isAirBlock(bpos.north())) + BlocksHelper.setWithUpdate(world, bpos.north(), state.with(BlockPlantWall.FACING, Direction.NORTH)); + if (random.nextInt(8) == 0 && !BLOCKS.contains(bpos.south()) && world.isAirBlock(bpos.south())) + BlocksHelper.setWithUpdate(world, bpos.south(), state.with(BlockPlantWall.FACING, Direction.SOUTH)); + if (random.nextInt(8) == 0 && !BLOCKS.contains(bpos.east()) && world.isAirBlock(bpos.east())) + BlocksHelper.setWithUpdate(world, bpos.east(), state.with(BlockPlantWall.FACING, Direction.EAST)); + if (random.nextInt(8) == 0 && !BLOCKS.contains(bpos.west()) && world.isAirBlock(bpos.west())) + BlocksHelper.setWithUpdate(world, bpos.west(), state.with(BlockPlantWall.FACING, Direction.WEST)); + } + } + } + + BLOCKS.clear(); + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + int length = BlocksHelper.upRay(world, pos, StructureStalagnate.MAX_LENGTH + 2); + if (length >= StructureStalagnate.MAX_LENGTH) + super.generate(world, pos, random); + } + + @Override + protected boolean isStructure(BlockState state) { + return state.getBlock() == BlocksRegistry.RUBEUS_LOG; + } + + @Override + protected boolean isGround(BlockState state) { + return BlocksHelper.isNetherGround(state); + } + + private void line(IWorld world, int x1, int y1, int z1, int x2, int y2, int z2, int startY) { + int dx = x2 - x1; + int dy = y2 - y1; + int dz = z2 - z1; + int mx = Math.max(Math.max(Math.abs(dx), Math.abs(dy)), Math.abs(dz)); + float fdx = (float) dx / mx; + float fdy = (float) dy / mx; + float fdz = (float) dz / mx; + float px = x1; + float py = y1; + float pz = z1; + + BlockPos pos = POS.setPos(x1, y1, z1).toImmutable(); + BLOCKS.add(pos); + + pos = POS.setPos(x2, y2, z2).toImmutable(); + BLOCKS.add(pos); + + for (int i = 0; i < mx; i++) { + px += fdx; + py += fdy; + pz += fdz; + + POS.setPos(Math.round(px), Math.round(py), Math.round(pz)); + double delta = POS.getY() - startY; + sphere(POS, MathHelper.clamp(2.3 - Math.abs(delta) * (delta > 0 ? 0.1 : 0.3), 0.5, 2.3)); + } + } + + private void sphere(BlockPos pos, double radius) { + int x1 = MHelper.floor(pos.getX() - radius); + int y1 = MHelper.floor(pos.getY() - radius); + int z1 = MHelper.floor(pos.getZ() - radius); + int x2 = MHelper.floor(pos.getX() + radius + 1); + int y2 = MHelper.floor(pos.getY() + radius + 1); + int z2 = MHelper.floor(pos.getZ() + radius + 1); + radius *= radius; + + for (int x = x1; x <= x2; x++) { + int px2 = x - pos.getX(); + px2 *= px2; + for (int z = z1; z <= z2; z++) { + int pz2 = z - pos.getZ(); + pz2 *= pz2; + for (int y = y1; y <= y2; y++) { + int py2 = y - pos.getY(); + py2 *= py2; + if (px2 + pz2 + py2 <= radius) BLOCKS.add(new BlockPos(x, y, z)); + } + } + } + } + + private void crown(IWorld world, BlockPos pos, float radius, Random random) { + BlockState leaves = BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.NATURAL, false); + BlockState vine = BlocksRegistry.WILLOW_BRANCH.getDefaultState(); + float halfR = radius * 0.5F; + float r2 = radius * radius; + int start = (int) Math.floor(-radius); + for (int cy = start; cy <= radius; cy++) { + int cy2_out = cy * cy; + float cy2_in = cy + halfR; + cy2_in *= cy2_in; + POS.setY((int) (pos.getY() + cy - halfR)); + for (int cx = start; cx <= radius; cx++) { + int cx2 = cx * cx * 2; + POS.setX(pos.getX() + cx); + for (int cz = start; cz <= radius; cz++) { + int cz2 = cz * cz * 2; + if (cx2 + cy2_out + cz2 < r2 && cx2 + cy2_in + cz2 > r2) { + POS.setZ(pos.getZ() + cz); + if (world.getBlockState(POS).getMaterial().isReplaceable()) { + if (random.nextBoolean()) { + int length = BlocksHelper.downRay(world, POS, 12); + if (length < 3) { + BlocksHelper.setWithUpdate(world, POS, leaves); + continue; + } ; + length = MHelper.randRange(3, length, random); + for (int i = 1; i < length - 1; i++) { + BlocksHelper.setWithUpdate(world, POS.down(i), vine); + } + BlocksHelper.setWithUpdate(world, POS.down(length - 1), vine.with(BlockWillowBranch.SHAPE, WillowBranchShape.END)); + } + else if (random.nextBoolean() && world.getBlockState(POS.down()).getMaterial().isReplaceable()) { + BlocksHelper.setWithUpdate(world, POS.down(), leaves); + } + BlocksHelper.setWithUpdate(world, POS, leaves); + } + } + } + } + } + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureOrangeMushroom.java b/src/main/java/redd90/betternether/structures/plants/StructureOrangeMushroom.java new file mode 100644 index 0000000..3c26dbf --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureOrangeMushroom.java @@ -0,0 +1,10 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.blocks.BlockCommonPlant; +import redd90.betternether.registry.BlocksRegistry; + +public class StructureOrangeMushroom extends StructureScatter { + public StructureOrangeMushroom() { + super(BlocksRegistry.ORANGE_MUSHROOM, BlockCommonPlant.AGE, 4); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureRedMold.java b/src/main/java/redd90/betternether/structures/plants/StructureRedMold.java new file mode 100644 index 0000000..1da572c --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureRedMold.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureRedMold extends StructureScatter { + public StructureRedMold() { + super(BlocksRegistry.RED_MOLD); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureReeds.java b/src/main/java/redd90/betternether/structures/plants/StructureReeds.java new file mode 100644 index 0000000..bc86941 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureReeds.java @@ -0,0 +1,33 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockNetherReed; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureReeds implements IStructure { + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (world.isAirBlock(pos) && BlocksRegistry.NETHER_REED.isValidPosition(world.getBlockState(pos), world, pos)) { + BlockState med = BlocksRegistry.NETHER_REED.getDefaultState().with(BlockNetherReed.TOP, false); + int h = random.nextInt(3); + for (int i = 0; i < h; i++) { + BlockPos posN = pos.up(i); + BlockPos up = posN.up(); + if (world.isAirBlock(posN)) { + if (world.isAirBlock(up)) + BlocksHelper.setWithUpdate(world, posN, med); + else { + BlocksHelper.setWithUpdate(world, posN, BlocksRegistry.NETHER_REED.getDefaultState()); + return; + } + } + } + BlocksHelper.setWithUpdate(world, pos.up(h), BlocksRegistry.NETHER_REED.getDefaultState()); + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureRubeus.java b/src/main/java/redd90/betternether/structures/plants/StructureRubeus.java new file mode 100644 index 0000000..db67631 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureRubeus.java @@ -0,0 +1,253 @@ +package redd90.betternether.structures.plants; + +import java.util.HashSet; +import java.util.Iterator; +import java.util.Random; +import java.util.Set; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.BlockPlantWall; +import redd90.betternether.blocks.RubeusLog; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.StructureFuncScatter; + +public class StructureRubeus extends StructureFuncScatter { + private static final float[] CURVE_X = new float[] { 9F, 7F, 1.5F, 0.5F, 3F, 7F }; + private static final float[] CURVE_Y = new float[] { 20F, 17F, 12F, 4F, 0F, -2F }; + private static final int MIDDLE_Y = 10; + private static final Set POINTS = new HashSet(); + private static final Set MIDDLE = new HashSet(); + private static final Set TOP = new HashSet(); + + public StructureRubeus() { + super(7); + } + + @Override + public void grow(IServerWorld world, BlockPos pos, Random random) { + grow(world, pos, random, true); + } + + public void grow(IServerWorld world, BlockPos pos, Random random, boolean natural) { + world.setBlockState(pos, Blocks.AIR.getDefaultState(), 0); + float scale = MHelper.randRange(0.5F, 1F, random); + int minCount = scale < 0.75 ? 3 : 4; + int maxCount = scale < 0.75 ? 5 : 7; + int count = MHelper.randRange(minCount, maxCount, random); + for (int n = 0; n < count; n++) { + float branchSize = MHelper.randRange(0.5F, 0.8F, random) * scale; + float angle = n * MHelper.PI2 / count; + float radius = CURVE_X[0] * branchSize; + int x1 = Math.round(pos.getX() + radius * (float) Math.cos(angle) + MHelper.randRange(-2F, 2F, random) * branchSize); + int y1 = Math.round(pos.getY() + CURVE_Y[0] * branchSize + MHelper.randRange(-2F, 2F, random) * branchSize); + int z1 = Math.round(pos.getZ() + radius * (float) Math.sin(angle) + MHelper.randRange(-2F, 2F, random) * branchSize); + float crownR = 5 * branchSize; + if (crownR < 1.5F) + crownR = 1.5F; + crown(world, x1, y1 + 1, z1, crownR, random); + + int middle = Math.round(pos.getY() + (MIDDLE_Y + MHelper.randRange(-2, 2, random)) * branchSize); + boolean generate = true; + for (int i = 1; i < CURVE_X.length && generate; i++) { + radius = CURVE_X[i] * branchSize; + int x2 = Math.round(pos.getX() + radius * (float) Math.cos(angle) + MHelper.randRange(-2F, 2F, random) * branchSize); + int y2 = Math.round(pos.getY() + CURVE_Y[i] * branchSize + (CURVE_Y[i] > 0 ? MHelper.randRange(-2F, 2F, random) * branchSize : 0)); + int z2 = Math.round(pos.getZ() + radius * (float) Math.sin(angle) + MHelper.randRange(-2F, 2F, random) * branchSize); + + if (CURVE_Y[i] <= 0) { + if (!isGround(world.getBlockState(POS.setPos(x2, y2, z2)))) { + boolean noGround = true; + for (int d = 1; d < 3; d++) { + if (isGround(world.getBlockState(POS.setPos(x2, y2 - d, z2)))) { + y2 -= d; + noGround = false; + break; + } + } + if (noGround) { + x2 = pos.getX(); + y2 = pos.getY(); + generate = false; + } + } + } + + line(world, x1, y1, z1, x2, y2, z2, middle); + x1 = x2; + y1 = y2; + z1 = z2; + } + } + + BlockState state; + Iterator iterator = TOP.iterator(); + while (iterator.hasNext()) { + BlockPos bpos = iterator.next(); + if (bpos != null) { + if (POINTS.contains(bpos.up()) && !TOP.contains(bpos.up())) + iterator.remove(); + } + } + + iterator = MIDDLE.iterator(); + while (iterator.hasNext()) { + BlockPos bpos = iterator.next(); + if (bpos != null) { + BlockPos up = bpos.up(); + if (MIDDLE.contains(up) || (!TOP.contains(up) && POINTS.contains(up))) + iterator.remove(); + } + else + iterator.remove(); + } + + for (BlockPos bpos : POINTS) { + if (POINTS.contains(bpos.up()) && POINTS.contains(bpos.down())) { + state = BlocksRegistry.RUBEUS_LOG.getDefaultState(); + if (MIDDLE.contains(bpos)) + setCondition(world, bpos, pos.getY(), state.with(RubeusLog.SHAPE, TripleShape.MIDDLE), false, random); + else if (TOP.contains(bpos)) + setCondition(world, bpos, pos.getY(), state.with(RubeusLog.SHAPE, TripleShape.TOP), false, random); + else + setCondition(world, bpos, pos.getY(), state.with(RubeusLog.SHAPE, TripleShape.BOTTOM), natural, random); + } + else { + state = BlocksRegistry.RUBEUS_BARK.getDefaultState(); + if (MIDDLE.contains(bpos)) + setCondition(world, bpos, pos.getY(), state.with(RubeusLog.SHAPE, TripleShape.MIDDLE), false, random); + else if (TOP.contains(bpos)) + setCondition(world, bpos, pos.getY(), state.with(RubeusLog.SHAPE, TripleShape.TOP), false, random); + else + setCondition(world, bpos, pos.getY(), state.with(RubeusLog.SHAPE, TripleShape.BOTTOM), natural, random); + } + } + + POINTS.clear(); + MIDDLE.clear(); + TOP.clear(); + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + int length = BlocksHelper.upRay(world, pos, StructureStalagnate.MAX_LENGTH + 2); + if (length >= StructureStalagnate.MAX_LENGTH) + super.generate(world, pos, random); + } + + @Override + protected boolean isStructure(BlockState state) { + return state.getBlock() == BlocksRegistry.RUBEUS_LOG; + } + + @Override + protected boolean isGround(BlockState state) { + return BlocksHelper.isNetherGround(state); + } + + private void line(IWorld world, int x1, int y1, int z1, int x2, int y2, int z2, int middleY) { + int dx = x2 - x1; + int dy = y2 - y1; + int dz = z2 - z1; + int mx = Math.max(Math.max(Math.abs(dx), Math.abs(dy)), Math.abs(dz)); + float fdx = (float) dx / mx; + float fdy = (float) dy / mx; + float fdz = (float) dz / mx; + float px = x1; + float py = y1; + float pz = z1; + + BlockPos pos = POS.setPos(x1, y1, z1).toImmutable(); + POINTS.add(pos); + if (pos.getY() == middleY) + MIDDLE.add(pos); + else if (pos.getY() > middleY) + TOP.add(pos); + + pos = POS.setPos(x2, y2, z2).toImmutable(); + POINTS.add(pos); + if (pos.getY() == middleY) + MIDDLE.add(pos); + else if (pos.getY() > middleY) + TOP.add(pos); + + for (int i = 0; i < mx; i++) { + px += fdx; + py += fdy; + pz += fdz; + + POS.setPos(Math.round(px), Math.round(py), Math.round(pz)); + pos = POS.toImmutable(); + POINTS.add(pos); + if (POS.getY() == middleY) + MIDDLE.add(pos); + else if (POS.getY() > middleY) + TOP.add(pos); + } + } + + private void crown(IWorld world, int x, int y, int z, float radius, Random random) { + BlockState leaves = BlocksRegistry.RUBEUS_LEAVES.getDefaultState(); + BlockState cone = BlocksRegistry.RUBEUS_CONE.getDefaultState(); + float halfR = radius * 0.5F; + float r2 = radius * radius; + int start = (int) Math.floor(-radius); + for (int cy = start; cy <= radius; cy++) { + int cy2_out = cy * cy; + float cy2_in = cy + halfR; + cy2_in *= cy2_in; + POS.setY((int) (y + cy - halfR)); + for (int cx = start; cx <= radius; cx++) { + int cx2 = cx * cx; + POS.setX(x + cx); + for (int cz = start; cz <= radius; cz++) { + int cz2 = cz * cz; + if (cx2 + cy2_out + cz2 < r2 && cx2 + cy2_in + cz2 > r2) { + POS.setZ(z + cz); + setIfAirLeaves(world, POS, leaves); + if (((POS.getX() + POS.getZ()) & 1) == 0 && random.nextInt(6) == 0) + setIfAir(world, POS.down(), cone); + } + } + } + } + } + + private void setCondition(IWorld world, BlockPos pos, int y, BlockState state, boolean moss, Random random) { + if (pos.getY() > y) + setIfAir(world, pos, state); + else + setIfGroundOrAir(world, pos, state); + if (moss && Math.abs(pos.getY() - y) < 4) { + for (Direction dir : BlocksHelper.HORIZONTAL) { + if (random.nextInt(3) > 0) + setIfAir(world, pos.offset(dir), BlocksRegistry.JUNGLE_MOSS.getDefaultState().with(BlockPlantWall.FACING, dir)); + } + } + } + + private void setIfAir(IWorld world, BlockPos pos, BlockState state) { + BlockState bState = world.getBlockState(pos); + if (world.isAirBlock(pos) || bState.getMaterial().isReplaceable() || bState.getBlock() == BlocksRegistry.RUBEUS_LEAVES || bState.getBlock() == BlocksRegistry.RUBEUS_CONE) + BlocksHelper.setWithoutUpdate(world, pos, state); + } + + private void setIfGroundOrAir(IWorld world, BlockPos pos, BlockState state) { + BlockState bState = world.getBlockState(pos); + if (bState.isAir() || bState.getBlock() == BlocksRegistry.RUBEUS_LEAVES || bState.getMaterial().isReplaceable() || BlocksHelper.isNetherGround(bState)) + BlocksHelper.setWithoutUpdate(world, pos, state); + } + + private void setIfAirLeaves(IWorld world, BlockPos pos, BlockState state) { + BlockState bState = world.getBlockState(pos); + if (world.isAirBlock(pos) || bState.getMaterial().isReplaceable()) + BlocksHelper.setWithoutUpdate(world, pos, state); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureRubeusBush.java b/src/main/java/redd90/betternether/structures/plants/StructureRubeusBush.java new file mode 100644 index 0000000..694a18d --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureRubeusBush.java @@ -0,0 +1,66 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.RubeusLog; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureRubeusBush implements IStructure { + private static final Mutable POS = new Mutable(); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (!world.isAirBlock(pos) || !world.isAirBlock(pos.up()) || !world.isAirBlock(pos.up(15))) + return; + + float r = random.nextFloat() * 3 + 1; + int count = (int) r; + + for (int i = 0; i < count; i++) { + float fr = r - i; + int ir = (int) Math.ceil(fr); + float r2 = fr * fr; + + int x1 = pos.getX() - ir; + int x2 = pos.getX() + ir; + int z1 = pos.getZ() - ir; + int z2 = pos.getZ() + ir; + + POS.setY(pos.getY() + i); + + for (int x = x1; x < x2; x++) { + POS.setX(x); + int sqx = x - pos.getX(); + sqx *= sqx; + for (int z = z1; z < z2; z++) { + int sqz = z - pos.getZ(); + sqz *= sqz; + POS.setZ(z); + if (sqx + sqz < r2 + random.nextFloat() * r) { + setIfAir(world, POS, BlocksRegistry.RUBEUS_LEAVES.getDefaultState()); + } + } + } + } + + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.RUBEUS_BARK.getDefaultState().with(RubeusLog.SHAPE, TripleShape.MIDDLE)); + setIfAir(world, pos.up(), BlocksRegistry.RUBEUS_LEAVES.getDefaultState()); + setIfAir(world, pos.north(), BlocksRegistry.RUBEUS_LEAVES.getDefaultState()); + setIfAir(world, pos.south(), BlocksRegistry.RUBEUS_LEAVES.getDefaultState()); + setIfAir(world, pos.east(), BlocksRegistry.RUBEUS_LEAVES.getDefaultState()); + setIfAir(world, pos.west(), BlocksRegistry.RUBEUS_LEAVES.getDefaultState()); + } + + private void setIfAir(IWorld world, BlockPos pos, BlockState state) { + if (world.isAirBlock(pos)) + BlocksHelper.setWithoutUpdate(world, pos, state); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureScatter.java b/src/main/java/redd90/betternether/structures/plants/StructureScatter.java new file mode 100644 index 0000000..8058860 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureScatter.java @@ -0,0 +1,68 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.state.Property; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.IStructure; + + +public class StructureScatter implements IStructure { + private Mutable npos = new Mutable(); + private final Block plantBlock; + private final Property ageProp; + private final int maxAge; + + public StructureScatter(Block plantBlock, Property ageProperty, int maxAge) { + this.plantBlock = plantBlock; + this.ageProp = ageProperty; + this.maxAge = maxAge; + } + + public StructureScatter(Block plantBlock) { + this.plantBlock = plantBlock; + this.ageProp = null; + this.maxAge = 0; + } + + private boolean canPlaceAt(IServerWorld world, BlockPos pos) { + return plantBlock.isValidPosition(plantBlock.getDefaultState(), world, pos); + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (world.isAirBlock(pos) && canPlaceAt(world, pos)) { + BlockState state = plantBlock.getDefaultState(); + int rndState = random.nextInt(2); + for (int i = 0; i < 20; i++) { + int x = pos.getX() + (int) (random.nextGaussian() * 4); + int z = pos.getZ() + (int) (random.nextGaussian() * 4); + if (((x + z + rndState) & 1) == 0) { + if (random.nextBoolean()) { + x += random.nextBoolean() ? 1 : -1; + } + else { + z += random.nextBoolean() ? 1 : -1; + } + } + int y = pos.getY() + random.nextInt(8); + for (int j = 0; j < 8; j++) { + npos.setPos(x, y - j, z); + if (world.isAirBlock(npos) && canPlaceAt(world, npos)) { + if (ageProp != null) + BlocksHelper.setWithoutUpdate(world, npos, state.with(ageProp, random.nextInt(maxAge))); + else + BlocksHelper.setWithoutUpdate(world, npos, state); + break; + } + } + } + } + } +} + diff --git a/src/main/java/redd90/betternether/structures/plants/StructureSepiaBoneGrass.java b/src/main/java/redd90/betternether/structures/plants/StructureSepiaBoneGrass.java new file mode 100644 index 0000000..11eb609 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureSepiaBoneGrass.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureSepiaBoneGrass extends StructureScatter { + public StructureSepiaBoneGrass() { + super(BlocksRegistry.SEPIA_BONE_GRASS); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureSmoker.java b/src/main/java/redd90/betternether/structures/plants/StructureSmoker.java new file mode 100644 index 0000000..6da5c69 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureSmoker.java @@ -0,0 +1,53 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockSmoker; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureSmoker implements IStructure { + private Mutable npos = new Mutable(); + + private boolean canPlaceAt(IServerWorld world, BlockPos pos) { + return BlocksHelper.isNetherGround(world.getBlockState(pos.down())); + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (canPlaceAt(world, pos)) { + BlockState top = BlocksRegistry.SMOKER.getDefaultState(); + BlockState middle = BlocksRegistry.SMOKER.getDefaultState().with(BlockSmoker.SHAPE, TripleShape.MIDDLE); + BlockState bottom = BlocksRegistry.SMOKER.getDefaultState().with(BlockSmoker.SHAPE, TripleShape.BOTTOM); + for (int i = 0; i < 8; i++) { + int x = pos.getX() + (int) (random.nextGaussian() * 2); + int z = pos.getZ() + (int) (random.nextGaussian() * 2); + int y = pos.getY() + random.nextInt(6); + for (int j = 0; j < 6; j++) { + npos.setPos(x, y - j, z); + if (world.isAirBlock(npos) && canPlaceAt(world, npos)) { + int h = random.nextInt(5); + BlocksHelper.setWithoutUpdate(world, npos, bottom); + for (int n = 1; n < h; n++) { + BlockPos up = npos.up(n); + if (world.isAirBlock(up.up())) + BlocksHelper.setWithoutUpdate(world, up, middle); + else { + BlocksHelper.setWithoutUpdate(world, up, top); + return; + } + } + BlocksHelper.setWithoutUpdate(world, npos.up(h), top); + break; + } + } + } + } + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureSoulGrass.java b/src/main/java/redd90/betternether/structures/plants/StructureSoulGrass.java new file mode 100644 index 0000000..95eee26 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureSoulGrass.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureSoulGrass extends StructureScatter { + public StructureSoulGrass() { + super(BlocksRegistry.SOUL_GRASS); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureSoulLily.java b/src/main/java/redd90/betternether/structures/plants/StructureSoulLily.java new file mode 100644 index 0000000..c01bda1 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureSoulLily.java @@ -0,0 +1,105 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.Blocks; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockSoulLily; +import redd90.betternether.blocks.BlockSoulLily.SoulLilyShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureSoulLily implements IStructure { + Mutable npos = new Mutable(); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + Block under; + if (world.getBlockState(pos.down()).getBlock() == Blocks.SOUL_SAND) { + for (int i = 0; i < 10; i++) { + int x = pos.getX() + (int) (random.nextGaussian() * 2); + int z = pos.getZ() + (int) (random.nextGaussian() * 2); + int y = pos.getY() + random.nextInt(6); + for (int j = 0; j < 6; j++) { + npos.setPos(x, y - j, z); + if (npos.getY() > 31) { + under = world.getBlockState(npos.down()).getBlock(); + if (under == Blocks.SOUL_SAND && world.isAirBlock(npos)) { + growTree(world, npos, random); + } + } + else + break; + } + } + } + } + + private void growTree(IServerWorld world, BlockPos pos, Random random) { + if (world.getBlockState(pos.down()).getBlock() == Blocks.SOUL_SAND) { + if (world.isAirBlock(pos.up())) { + if (world.isAirBlock(pos.up(2)) && isAirSides(world, pos.up(2))) { + growBig(world, pos); + } + else + growMedium(world, pos); + } + else + growSmall(world, pos); + } + } + + public void growSmall(IWorld world, BlockPos pos) { + BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.SOUL_LILY.getDefaultState()); + } + + public void growMedium(IWorld world, BlockPos pos) { + BlocksHelper.setWithUpdate(world, pos, + BlocksRegistry.SOUL_LILY + .getDefaultState() + .with(BlockSoulLily.SHAPE, SoulLilyShape.MEDIUM_BOTTOM)); + BlocksHelper.setWithUpdate(world, pos.up(), + BlocksRegistry.SOUL_LILY + .getDefaultState() + .with(BlockSoulLily.SHAPE, SoulLilyShape.MEDIUM_TOP)); + } + + public void growBig(IWorld world, BlockPos pos) { + BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.SOUL_LILY + .getDefaultState() + .with(BlockSoulLily.SHAPE, SoulLilyShape.BIG_BOTTOM)); + BlocksHelper.setWithUpdate(world, pos.up(), + BlocksRegistry.SOUL_LILY + .getDefaultState() + .with(BlockSoulLily.SHAPE, SoulLilyShape.BIG_MIDDLE)); + BlockPos up = pos.up(2); + BlocksHelper.setWithUpdate(world, up, + BlocksRegistry.SOUL_LILY + .getDefaultState() + .with(BlockSoulLily.SHAPE, SoulLilyShape.BIG_TOP_CENTER)); + BlocksHelper.setWithUpdate(world, up.north(), BlocksRegistry.SOUL_LILY + .getDefaultState() + .with(BlockSoulLily.SHAPE, SoulLilyShape.BIG_TOP_SIDE_S)); + BlocksHelper.setWithUpdate(world, up.south(), + BlocksRegistry.SOUL_LILY + .getDefaultState() + .with(BlockSoulLily.SHAPE, SoulLilyShape.BIG_TOP_SIDE_N)); + BlocksHelper.setWithUpdate(world, up.east(), + BlocksRegistry.SOUL_LILY + .getDefaultState() + .with(BlockSoulLily.SHAPE, SoulLilyShape.BIG_TOP_SIDE_W)); + BlocksHelper.setWithUpdate(world, up.west(), + BlocksRegistry.SOUL_LILY + .getDefaultState() + .with(BlockSoulLily.SHAPE, SoulLilyShape.BIG_TOP_SIDE_E)); + } + + private boolean isAirSides(IWorld world, BlockPos pos) { + return world.isAirBlock(pos.north()) && world.isAirBlock(pos.south()) && world.isAirBlock(pos.east()) && world.isAirBlock(pos.west()); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureSoulVein.java b/src/main/java/redd90/betternether/structures/plants/StructureSoulVein.java new file mode 100644 index 0000000..eb747c8 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureSoulVein.java @@ -0,0 +1,43 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureSoulVein implements IStructure { + private Mutable npos = new Mutable(); + + private boolean canPlaceAt(IWorld world, BlockPos pos) { + return BlocksRegistry.SOUL_VEIN.isValidPosition(BlocksRegistry.SOUL_VEIN.getDefaultState(), world, pos); + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (world.isAirBlock(pos) && canPlaceAt(world, pos)) { + BlockState state = BlocksRegistry.SOUL_VEIN.getDefaultState(); + BlockState sand = BlocksRegistry.VEINED_SAND.getDefaultState(); + int x1 = pos.getX() - 1; + int x2 = pos.getX() + 1; + int z1 = pos.getZ() - 1; + int z2 = pos.getZ() + 1; + for (int x = x1; x <= x2; x++) + for (int z = z1; z <= z2; z++) { + int y = pos.getY() + 2; + for (int j = 0; j < 4; j++) { + npos.setPos(x, y - j, z); + if (world.isAirBlock(npos) && canPlaceAt(world, npos)) { + BlocksHelper.setWithoutUpdate(world, npos, state); + BlocksHelper.setWithoutUpdate(world, npos.down(), sand); + } + } + } + } + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureStalagnate.java b/src/main/java/redd90/betternether/structures/plants/StructureStalagnate.java new file mode 100644 index 0000000..ecfabd3 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureStalagnate.java @@ -0,0 +1,47 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockStalagnate; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + + +public class StructureStalagnate implements IStructure { + public static final int MAX_LENGTH = 25; // 27 + public static final int MIN_LENGTH = 3; // 5 + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + int length = BlocksHelper.upRay(world, pos, MAX_LENGTH); + if (length > MIN_LENGTH && BlocksHelper.isNetherrack(world.getBlockState(pos.up(length + 1)))) { + BlockState bottom = BlocksRegistry.STALAGNATE.getDefaultState().with(BlockStalagnate.SHAPE, TripleShape.BOTTOM); + BlockState middle = BlocksRegistry.STALAGNATE.getDefaultState(); + BlockState top = BlocksRegistry.STALAGNATE.getDefaultState().with(BlockStalagnate.SHAPE, TripleShape.TOP); + + BlocksHelper.setWithUpdate(world, pos, bottom); + BlocksHelper.setWithUpdate(world, pos.up(length), top); + for (int y = 1; y < length; y++) + BlocksHelper.setWithUpdate(world, pos.up(y), middle); + } + } + + public void generateDown(IServerWorld world, BlockPos pos, Random random) { + int length = BlocksHelper.downRay(world, pos, MAX_LENGTH); + if (length > MIN_LENGTH && BlocksHelper.isNetherrack(world.getBlockState(pos.down(length + 1)))) { + BlockState bottom = BlocksRegistry.STALAGNATE.getDefaultState().with(BlockStalagnate.SHAPE, TripleShape.BOTTOM); + BlockState middle = BlocksRegistry.STALAGNATE.getDefaultState(); + BlockState top = BlocksRegistry.STALAGNATE.getDefaultState().with(BlockStalagnate.SHAPE, TripleShape.TOP); + + BlocksHelper.setWithUpdate(world, pos.down(length), bottom); + BlocksHelper.setWithUpdate(world, pos, top); + for (int y = 1; y < length; y++) + BlocksHelper.setWithUpdate(world, pos.down(y), middle); + } + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureSwampGrass.java b/src/main/java/redd90/betternether/structures/plants/StructureSwampGrass.java new file mode 100644 index 0000000..5d89ad6 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureSwampGrass.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureSwampGrass extends StructureScatter { + public StructureSwampGrass() { + super(BlocksRegistry.SWAMP_GRASS); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureTwistedVines.java b/src/main/java/redd90/betternether/structures/plants/StructureTwistedVines.java new file mode 100644 index 0000000..7eb9807 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureTwistedVines.java @@ -0,0 +1,49 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.Blocks; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.IStructure; + +public class StructureTwistedVines implements IStructure { + private Mutable npos = new Mutable(); + + private boolean canPlaceAt(IWorld world, BlockPos pos) { + Block block = world.getBlockState(pos.down()).getBlock(); + return block == Blocks.WARPED_NYLIUM || block == Blocks.TWISTING_VINES; + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (canPlaceAt(world, pos)) { + for (int i = 0; i < 10; i++) { + int x = pos.getX() + (int) (random.nextGaussian() * 2); + int z = pos.getZ() + (int) (random.nextGaussian() * 2); + int y = pos.getY() + random.nextInt(6); + for (int j = 0; j < 6; j++) { + npos.setPos(x, y - j, z); + if (world.isAirBlock(npos) && canPlaceAt(world, npos)) { + int h = random.nextInt(20) + 1; + int sy = npos.getY(); + for (int n = 0; n < h; n++) { + npos.setY(sy + n); + if (!world.isAirBlock(npos.up())) { + BlocksHelper.setWithoutUpdate(world, npos, Blocks.TWISTING_VINES.getDefaultState()); + break; + } + BlocksHelper.setWithoutUpdate(world, npos, Blocks.TWISTING_VINES_PLANT.getDefaultState()); + } + BlocksHelper.setWithoutUpdate(world, npos, Blocks.TWISTING_VINES.getDefaultState()); + break; + } + } + } + } + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureVanillaMushroom.java b/src/main/java/redd90/betternether/structures/plants/StructureVanillaMushroom.java new file mode 100644 index 0000000..e76af36 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureVanillaMushroom.java @@ -0,0 +1,39 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureVanillaMushroom implements IStructure { + private Mutable npos = new Mutable(); + + private boolean canPlaceAt(IWorld world, BlockPos pos) { + return world.getBlockState(pos.down()).getBlock() == BlocksRegistry.NETHER_MYCELIUM; + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (canPlaceAt(world, pos)) { + BlockState state = random.nextBoolean() ? Blocks.RED_MUSHROOM.getDefaultState() : Blocks.BROWN_MUSHROOM.getDefaultState(); + for (int i = 0; i < 16; i++) { + int x = pos.getX() + (int) (random.nextGaussian() * 4); + int z = pos.getZ() + (int) (random.nextGaussian() * 4); + int y = pos.getY() + random.nextInt(8); + for (int j = 0; j < 8; j++) { + npos.setPos(x, y - j, z); + if (world.isAirBlock(npos) && canPlaceAt(world, npos)) { + BlocksHelper.setWithoutUpdate(world, npos, state); + } + } + } + } + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureVine.java b/src/main/java/redd90/betternether/structures/plants/StructureVine.java new file mode 100644 index 0000000..b310088 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureVine.java @@ -0,0 +1,46 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockBlackVine; +import redd90.betternether.structures.IStructure; + + +public class StructureVine implements IStructure { + private Mutable blockPos = new Mutable(); + + private final Block block; + + public StructureVine(Block block) { + this.block = block; + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + int h = BlocksHelper.downRay(world, pos, 25); + if (h < 2) + return; + h = random.nextInt(h) + 1; + + BlockState bottom = block.getDefaultState().with(BlockBlackVine.BOTTOM, true); + BlockState middle = block.getDefaultState().with(BlockBlackVine.BOTTOM, false); + + blockPos.setPos(pos); + for (int y = 0; y < h; y++) { + blockPos.setY(pos.getY() - y); + if (world.isAirBlock(blockPos.down())) + BlocksHelper.setWithoutUpdate(world, blockPos, middle); + else { + BlocksHelper.setWithoutUpdate(world, blockPos, bottom); + return; + } + } + BlocksHelper.setWithoutUpdate(world, blockPos.down(), bottom); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWall.java b/src/main/java/redd90/betternether/structures/plants/StructureWall.java new file mode 100644 index 0000000..aed6d26 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWall.java @@ -0,0 +1,56 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.HorizontalBlock; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.IStructure; + +public class StructureWall implements IStructure { + private static final Direction[] DIRECTIONS = HorizontalBlock.HORIZONTAL_FACING.getAllowedValues().toArray(new Direction[] {}); + private static final Direction[] SHUFFLED = new Direction[DIRECTIONS.length]; + private final Block plantBlock; + + public StructureWall(Block plantBlock) { + this.plantBlock = plantBlock; + } + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (world.isAirBlock(pos)) { + BlockState state = getPlacementState(world, pos, random); + if (state != null) + BlocksHelper.setWithoutUpdate(world, pos, state); + } + } + + private BlockState getPlacementState(IServerWorld world, BlockPos pos, Random random) { + BlockState blockState = plantBlock.getDefaultState(); + shuffle(random); + for (int i = 0; i < 4; i++) { + Direction direction = SHUFFLED[i]; + Direction direction2 = direction.getOpposite(); + blockState = blockState.with(HorizontalBlock.HORIZONTAL_FACING, direction2); + if (blockState.isValidPosition(world, pos)) { + return blockState; + } + } + return null; + } + + private void shuffle(Random random) { + for (int i = 0; i < 4; i++) + SHUFFLED[i] = DIRECTIONS[i]; + for (int i = 0; i < 4; i++) { + int i2 = random.nextInt(4); + Direction d = SHUFFLED[i2]; + SHUFFLED[i2] = SHUFFLED[i]; + SHUFFLED[i] = d; + } + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWallBrownMushroom.java b/src/main/java/redd90/betternether/structures/plants/StructureWallBrownMushroom.java new file mode 100644 index 0000000..70c2255 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWallBrownMushroom.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureWallBrownMushroom extends StructureWall { + public StructureWallBrownMushroom() { + super(BlocksRegistry.WALL_MUSHROOM_BROWN); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWallMoss.java b/src/main/java/redd90/betternether/structures/plants/StructureWallMoss.java new file mode 100644 index 0000000..8f0d4d5 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWallMoss.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureWallMoss extends StructureWall { + public StructureWallMoss() { + super(BlocksRegistry.WALL_MOSS); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWallRedMushroom.java b/src/main/java/redd90/betternether/structures/plants/StructureWallRedMushroom.java new file mode 100644 index 0000000..a208799 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWallRedMushroom.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureWallRedMushroom extends StructureWall { + public StructureWallRedMushroom() { + super(BlocksRegistry.WALL_MUSHROOM_RED); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWarpedFungus.java b/src/main/java/redd90/betternether/structures/plants/StructureWarpedFungus.java new file mode 100644 index 0000000..402564d --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWarpedFungus.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import net.minecraft.block.Blocks; + +public class StructureWarpedFungus extends StructureScatter { + public StructureWarpedFungus() { + super(Blocks.WARPED_FUNGUS); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWarpedRoots.java b/src/main/java/redd90/betternether/structures/plants/StructureWarpedRoots.java new file mode 100644 index 0000000..52b3004 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWarpedRoots.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import net.minecraft.block.Blocks; + +public class StructureWarpedRoots extends StructureScatter { + public StructureWarpedRoots() { + super(Blocks.WARPED_ROOTS); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWartBush.java b/src/main/java/redd90/betternether/structures/plants/StructureWartBush.java new file mode 100644 index 0000000..4513383 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWartBush.java @@ -0,0 +1,31 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.Blocks; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockWartSeed; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureWartBush implements IStructure { + private static final Direction[] DIRS = new Direction[] { Direction.UP, Direction.NORTH, Direction.SOUTH, Direction.EAST, Direction.WEST }; + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (world.isAirBlock(pos)) { + BlocksHelper.setWithoutUpdate(world, pos, Blocks.NETHER_WART_BLOCK.getDefaultState()); + for (Direction dir : DIRS) + setSeed(world, pos, dir); + } + } + + private void setSeed(IServerWorld world, BlockPos pos, Direction dir) { + BlockPos p = pos.offset(dir); + if (world.isAirBlock(p)) + BlocksHelper.setWithoutUpdate(world, p, BlocksRegistry.WART_SEED.getDefaultState().with(BlockWartSeed.FACING, dir)); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWartCap.java b/src/main/java/redd90/betternether/structures/plants/StructureWartCap.java new file mode 100644 index 0000000..6b6a1f6 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWartCap.java @@ -0,0 +1,91 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.HorizontalBlock; +import net.minecraft.block.HugeMushroomBlock; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.IStructure; + +public class StructureWartCap implements IStructure { + private static final BlockState INSIDE = Blocks.RED_MUSHROOM_BLOCK + .getDefaultState() + .with(HugeMushroomBlock.NORTH, false) + .with(HugeMushroomBlock.SOUTH, false) + .with(HugeMushroomBlock.EAST, false) + .with(HugeMushroomBlock.WEST, false) + .with(HugeMushroomBlock.UP, false) + .with(HugeMushroomBlock.DOWN, false); + private static final BlockState SKIN = Blocks.NETHER_WART_BLOCK + .getDefaultState(); + private static final Mutable POS = new Mutable(); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (!isWall(world, pos) || pos.getY() > 57 || pos.getY() < 34 || world.isAirBlock(pos.down(3))) + return; + + int radius = 3 + random.nextInt(3); + int r2 = radius * radius; + int side = radius * 2 + 1; + int y1 = radius >> 1; + BlockState[][][] shape = new BlockState[side][y1 + 1][side]; + + for (int y = 0; y <= y1; y++) { + POS.setY(pos.getY() + y); + for (int x = -radius; x <= radius; x++) { + POS.setX(pos.getX() + x); + int sx = x + radius; + for (int z = -radius; z <= radius; z++) { + POS.setZ(pos.getZ() + z); + int sz = z + radius; + int d = x * x + y * y * 6 + z * z; + if (d <= r2) { + if ((y == y1) || (x == -radius) || (x == radius) || (z == -radius) || (z == radius)) + shape[sx][y][sz] = SKIN; + else + shape[sx][y][sz] = INSIDE; + } + } + } + } + + for (int y = 0; y < y1; y++) { + for (int x = 1; x < side - 1; x++) { + for (int z = 1; z < side - 1; z++) { + if (shape[x][y][z] != null) { + if (shape[x - 1][y][z] == null || shape[x + 1][y][z] == null || shape[x][y][z - 1] == null || shape[x][y][z + 1] == null || shape[x][y + 1][z] == null) { + shape[x][y][z] = SKIN; + } + } + } + } + } + + for (int y = 0; y <= y1; y++) { + POS.setY(pos.getY() + y); + for (int x = 0; x < side; x++) { + POS.setX(pos.getX() + x - radius); + for (int z = 0; z < side; z++) { + POS.setZ(pos.getZ() + z - radius); + if (shape[x][y][z] != null && world.isAirBlock(POS)) + BlocksHelper.setWithoutUpdate(world, POS, shape[x][y][z]); + } + } + } + } + + private boolean isWall(IServerWorld world, BlockPos pos) { + for (Direction dir : HorizontalBlock.HORIZONTAL_FACING.getAllowedValues()) + if (world.getBlockState(pos.offset(dir)).getBlock() == Blocks.NETHER_BRICKS) + return true; + return false; + } +} + diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWartDeadwood.java b/src/main/java/redd90/betternether/structures/plants/StructureWartDeadwood.java new file mode 100644 index 0000000..1a68ed5 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWartDeadwood.java @@ -0,0 +1,32 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.structures.IStructure; +import redd90.betternether.structures.StructureType; +import redd90.betternether.structures.StructureWorld; + +public class StructureWartDeadwood implements IStructure { + private static final StructureWorld[] TREES = new StructureWorld[] { + new StructureWorld("trees/wart_root_01", 0, StructureType.FLOOR), + new StructureWorld("trees/wart_root_02", 0, StructureType.FLOOR), + new StructureWorld("trees/wart_root_03", -2, StructureType.FLOOR), + new StructureWorld("trees/wart_fallen_log", 0, StructureType.FLOOR) + }; + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (isGround(world.getBlockState(pos.down())) && isGround(world.getBlockState(pos.down(2)))) { + StructureWorld tree = TREES[random.nextInt(TREES.length)]; + tree.generate(world, pos, random); + } + } + + private boolean isGround(BlockState state) { + return BlocksHelper.isNetherGround(state); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWartSeed.java b/src/main/java/redd90/betternether/structures/plants/StructureWartSeed.java new file mode 100644 index 0000000..918defe --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWartSeed.java @@ -0,0 +1,9 @@ +package redd90.betternether.structures.plants; + +import redd90.betternether.registry.BlocksRegistry; + +public class StructureWartSeed extends StructureScatter { + public StructureWartSeed() { + super(BlocksRegistry.WART_SEED); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWartTree.java b/src/main/java/redd90/betternether/structures/plants/StructureWartTree.java new file mode 100644 index 0000000..ac66290 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWartTree.java @@ -0,0 +1,150 @@ +package redd90.betternether.structures.plants; + +import java.util.ArrayList; +import java.util.List; +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.HorizontalBlock; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockWartSeed; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.StructureFuncScatter; + +public class StructureWartTree extends StructureFuncScatter { + private static final BlockState WART_BLOCK = Blocks.NETHER_WART_BLOCK.getDefaultState(); + private static final Direction[] HORIZONTAL = HorizontalBlock.HORIZONTAL_FACING.getAllowedValues().toArray(new Direction[] {}); + + public StructureWartTree() { + super(7); + } + + @Override + public void grow(IServerWorld world, BlockPos pos, Random random) { + if (world.isAirBlock(pos.up(1)) && world.isAirBlock(pos.up(2))) { + if (world.isAirBlock(pos.up(2).north()) && world.isAirBlock(pos.up(2).south()) && world.isAirBlock(pos.up(2).east()) && world.isAirBlock(pos.up(2).west())) + if (world.isAirBlock(pos.up(3).north(2)) && world.isAirBlock(pos.up(3).south(2)) && world.isAirBlock(pos.up(3).east(2)) && world.isAirBlock(pos.up(3).west(2))) { + int height = 5 + random.nextInt(5); + int h2 = height - 1; + int width = (height >>> 2) + 1; + int offset = width >>> 1; + List seedBlocks = new ArrayList(); + for (int x = 0; x < width; x++) { + int px = x + pos.getX() - offset; + for (int z = 0; z < width; z++) { + int pz = z + pos.getZ() - offset; + for (int y = 0; y < height; y++) { + int py = y + pos.getY(); + POS.setPos(px, py, pz); + if (isReplaceable(world.getBlockState(POS))) { + if (y == 0 && !isReplaceable(world.getBlockState(POS.down()))) + BlocksHelper.setWithUpdate(world, POS, BlocksRegistry.WART_ROOTS.getDefaultState()); + else if (y < h2) + BlocksHelper.setWithUpdate(world, POS, BlocksRegistry.WART_LOG.getDefaultState()); + else + BlocksHelper.setWithUpdate(world, POS, WART_BLOCK); + if (random.nextInt(8) == 0) { + Direction dir = HORIZONTAL[random.nextInt(HORIZONTAL.length)]; + seedBlocks.add(new BlockPos(POS).offset(dir)); + } + } + } + } + } + + for (int x = 0; x < width; x++) { + int px = x + pos.getX() - offset; + for (int z = 0; z < width; z++) { + int pz = z + pos.getZ() - offset; + for (int y = 1; y < height >> 1; y++) { + int py = pos.getY() - y; + POS.setPos(px, py, pz); + if (isReplaceable(world.getBlockState(POS))) { + if (isReplaceable(world.getBlockState(POS.down()))) + BlocksHelper.setWithUpdate(world, POS, BlocksRegistry.WART_LOG.getDefaultState()); + else { + BlocksHelper.setWithUpdate(world, POS, BlocksRegistry.WART_ROOTS.getDefaultState()); + break; + } + } + } + } + } + + int headWidth = width + 2; + offset++; + height = height - width - 1 + pos.getY(); + for (int x = 0; x < headWidth; x++) { + int px = x + pos.getX() - offset; + for (int z = 0; z < headWidth; z++) { + if (x != z && x != (headWidth - z - 1)) { + int pz = z + pos.getZ() - offset; + for (int y = 0; y < width; y++) { + int py = y + height; + POS.setPos(px, py, pz); + if (world.isAirBlock(POS)) { + BlocksHelper.setWithUpdate(world, POS, WART_BLOCK); + for (int i = 0; i < 4; i++) + seedBlocks.add(new BlockPos(POS).offset(Direction.values()[random.nextInt(6)])); + } + } + } + } + } + for (BlockPos pos2 : seedBlocks) + PlaceRandomSeed(world, pos2); + } + } + } + + private void PlaceRandomSeed(IWorld world, BlockPos pos) { + BlockState seed = BlocksRegistry.WART_SEED.getDefaultState(); + if (isReplaceable(world.getBlockState(pos))) { + if (isWart(world.getBlockState(pos.up()))) + seed = seed.with(BlockWartSeed.FACING, Direction.DOWN); + else if (isWart(world.getBlockState(pos.down()))) + seed = seed.with(BlockWartSeed.FACING, Direction.UP); + else if (isWart(world.getBlockState(pos.north()))) + seed = seed.with(BlockWartSeed.FACING, Direction.SOUTH); + else if (isWart(world.getBlockState(pos.south()))) + seed = seed.with(BlockWartSeed.FACING, Direction.NORTH); + else if (isWart(world.getBlockState(pos.east()))) + seed = seed.with(BlockWartSeed.FACING, Direction.WEST); + else if (isWart(world.getBlockState(pos.west()))) + seed = seed.with(BlockWartSeed.FACING, Direction.EAST); + BlocksHelper.setWithUpdate(world, pos, seed); + } + } + + private boolean isReplaceable(BlockState state) { + Block block = state.getBlock(); + return state.getMaterial().isReplaceable() || + block == Blocks.AIR || + block == BlocksRegistry.WART_SEED || + block == BlocksRegistry.BLACK_BUSH || + block == BlocksRegistry.SOUL_VEIN || + block == BlocksRegistry.SOUL_LILY || + block == BlocksRegistry.SOUL_LILY_SAPLING || + block == Blocks.NETHER_WART; + } + + private boolean isWart(BlockState state) { + return state == WART_BLOCK || state.getBlock() == BlocksRegistry.WART_LOG; + } + + @Override + protected boolean isStructure(BlockState state) { + return isWart(state); + } + + @Override + protected boolean isGround(BlockState state) { + return BlocksHelper.isSoulSand(state); + } +} diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWhisperingGourd.java b/src/main/java/redd90/betternether/structures/plants/StructureWhisperingGourd.java new file mode 100644 index 0000000..6b8bc41 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWhisperingGourd.java @@ -0,0 +1,39 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.blocks.BlockWhisperingGourdVine; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureWhisperingGourd implements IStructure { + private Mutable blockPos = new Mutable(); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (pos.getY() < 90 || !BlocksHelper.isNetherrack(world.getBlockState(pos.up()))) return; + + int h = BlocksHelper.downRay(world, pos, 4); + if (h < 1) + return; + h = MHelper.randRange(1, h, random); + + BlockState bottom = BlocksRegistry.WHISPERING_GOURD_VINE.getDefaultState().with(BlockWhisperingGourdVine.SHAPE, TripleShape.BOTTOM); + BlockState middle = BlocksRegistry.WHISPERING_GOURD_VINE.getDefaultState().with(BlockWhisperingGourdVine.SHAPE, TripleShape.MIDDLE); + BlockState top = BlocksRegistry.WHISPERING_GOURD_VINE.getDefaultState().with(BlockWhisperingGourdVine.SHAPE, TripleShape.TOP); + + blockPos.setPos(pos); + for (int y = 0; y < h - 1; y++) { + blockPos.setY(pos.getY() - y); + BlocksHelper.setWithUpdate(world, blockPos, random.nextBoolean() ? top : middle); + } + BlocksHelper.setWithUpdate(world, blockPos.down(), bottom); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWillow.java b/src/main/java/redd90/betternether/structures/plants/StructureWillow.java new file mode 100644 index 0000000..b1a504f --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWillow.java @@ -0,0 +1,121 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.HorizontalBlock; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockWillowBranch; +import redd90.betternether.blocks.BlockWillowBranch.WillowBranchShape; +import redd90.betternether.blocks.BlockWillowLeaves; +import redd90.betternether.blocks.BlockWillowTrunk; +import redd90.betternether.blocks.shapes.TripleShape; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureWillow implements IStructure { + private static final Direction[] HOR = HorizontalBlock.HORIZONTAL_FACING.getAllowedValues().toArray(new Direction[] {}); + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (!BlocksHelper.isNetherGround(world.getBlockState(pos.down()))) + return; + + int h2 = 5 + random.nextInt(3); + + int mh = BlocksHelper.upRay(world, pos.up(), h2); + if (mh < 5) + return; + + h2 = Math.min(h2, mh); + + BlocksHelper.setWithUpdate(world, pos, BlocksRegistry.WILLOW_TRUNK.getDefaultState().with(BlockWillowTrunk.SHAPE, TripleShape.BOTTOM)); + for (int h = 1; h < h2; h++) + if (world.isAirBlock(pos.up(h))) + BlocksHelper.setWithUpdate(world, pos.up(h), BlocksRegistry.WILLOW_TRUNK.getDefaultState().with(BlockWillowTrunk.SHAPE, TripleShape.MIDDLE)); + if (world.isAirBlock(pos.up(h2))) + BlocksHelper.setWithUpdate(world, pos.up(h2), BlocksRegistry.WILLOW_TRUNK.getDefaultState().with(BlockWillowTrunk.SHAPE, TripleShape.TOP)); + + for (int i = 0; i < 4; i++) + branch(world, pos.up(h2).offset(HOR[i]), 3 + random.nextInt(2), random, HOR[i], pos.up(h2), 0); + + BlocksHelper.setWithUpdate(world, pos.up(h2 + 1), BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, Direction.UP)); + for (int i = 0; i < 4; i++) + BlocksHelper.setWithUpdate(world, pos.up(h2 + 1).offset(HOR[i]), BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, HOR[i])); + } + + private void branch(IServerWorld world, BlockPos pos, int length, Random random, Direction direction, BlockPos center, int level) { + if (level > 5) + return; + Mutable bpos = new Mutable().setPos(pos); + BlocksHelper.setWithUpdate(world, bpos, BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, direction)); + vine(world, pos.down(), 1 + random.nextInt(1)); + Direction preDir = direction; + int l2 = length * length; + for (int i = 0; i < l2; i++) { + Direction dir = random.nextInt(3) > 0 ? preDir : random.nextBoolean() ? preDir.rotateY() : preDir.rotateYCCW();// HOR[random.nextInt(4)]; + BlockPos p = bpos.offset(dir); + if (world.isAirBlock(p)) { + bpos.setPos(p); + if (bpos.manhattanDistance(center) > length) + break; + BlocksHelper.setWithUpdate(world, bpos, BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, dir)); + + if (random.nextBoolean()) { + BlocksHelper.setWithUpdate(world, bpos.up(), BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, Direction.UP)); + } + + if (random.nextInt(3) == 0) { + bpos.setY(bpos.getY() - 1); + BlocksHelper.setWithUpdate(world, bpos, BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, Direction.DOWN)); + } + + if (random.nextBoolean()) + vine(world, bpos.down(), 1 + random.nextInt(4)); + + if (random.nextBoolean()) { + Direction right = dir.rotateY(); + BlockPos p2 = bpos.offset(right); + if (world.isAirBlock(p2)) + branch(world, p2, length, random, right, center, level + 1); + right = right.getOpposite(); + p2 = bpos.offset(right); + if (world.isAirBlock(p2)) + branch(world, p2, length, random, right, center, level + 1); + } + + Direction dir2 = HOR[random.nextInt(4)]; + BlockPos p2 = bpos.offset(dir2); + if (world.isAirBlock(p2)) + BlocksHelper.setWithUpdate(world, p2, BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, dir2)); + + preDir = dir; + } + } + + if (random.nextBoolean()) { + if (world.isAirBlock(bpos)) + BlocksHelper.setWithUpdate(world, bpos, BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, preDir)); + } + } + + private void vine(IServerWorld world, BlockPos pos, int length) { + if (!world.isAirBlock(pos)) + return; + + for (int i = 0; i < length; i++) { + BlockPos p = pos.down(i); + if (world.isAirBlock(p.down())) + BlocksHelper.setWithUpdate(world, p, BlocksRegistry.WILLOW_BRANCH.getDefaultState().with(BlockWillowBranch.SHAPE, WillowBranchShape.MIDDLE)); + else { + BlocksHelper.setWithUpdate(world, p, BlocksRegistry.WILLOW_BRANCH.getDefaultState().with(BlockWillowBranch.SHAPE, WillowBranchShape.END)); + return; + } + } + BlocksHelper.setWithUpdate(world, pos.down(length), BlocksRegistry.WILLOW_BRANCH.getDefaultState().with(BlockWillowBranch.SHAPE, WillowBranchShape.END)); + } +} + diff --git a/src/main/java/redd90/betternether/structures/plants/StructureWillowBush.java b/src/main/java/redd90/betternether/structures/plants/StructureWillowBush.java new file mode 100644 index 0000000..ca10d51 --- /dev/null +++ b/src/main/java/redd90/betternether/structures/plants/StructureWillowBush.java @@ -0,0 +1,83 @@ +package redd90.betternether.structures.plants; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.util.Direction; +import net.minecraft.util.Direction.Axis; +import net.minecraft.util.Direction.AxisDirection; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.IWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockNetherGrass; +import redd90.betternether.blocks.BlockWillowLeaves; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.structures.IStructure; + +public class StructureWillowBush implements IStructure { + private static final Mutable POS = new Mutable(); + + public StructureWillowBush() {} + + @Override + public void generate(IServerWorld world, BlockPos pos, Random random) { + if (!world.isAirBlock(pos) || !world.isAirBlock(pos.up()) || !world.isAirBlock(pos.up(15))) + return; + + float r = random.nextFloat() * 2F + 0.5F; + int count = (int) r; + + for (int i = 0; i < count; i++) { + float fr = r - i; + int ir = (int) Math.ceil(fr); + float r2 = fr * fr; + + int x1 = pos.getX() - ir; + int x2 = pos.getX() + ir; + int z1 = pos.getZ() - ir; + int z2 = pos.getZ() + ir; + + POS.setY(pos.getY() + i); + + for (int x = x1; x < x2; x++) { + POS.setX(x); + int sqx = x - pos.getX(); + sqx *= sqx; + for (int z = z1; z < z2; z++) { + int sqz = z - pos.getZ(); + sqz *= sqz; + POS.setZ(z); + if (sqx + sqz < r2 + random.nextFloat() * r) { + int dx = POS.getX() - pos.getX(); + int dy = POS.getY() - pos.getY(); + int dz = POS.getZ() - pos.getZ(); + int ax = Math.abs(dx); + int ay = Math.abs(dy); + int az = Math.abs(dz); + int max = Math.max(ax, Math.max(ay, az)); + Direction dir; + if (max == ax) dir = Direction.getFacingFromAxisDirection(Axis.X, dx > 0 ? AxisDirection.POSITIVE : AxisDirection.NEGATIVE); + else if (max == ay) dir = Direction.getFacingFromAxisDirection(Axis.Y, dy > 0 ? AxisDirection.POSITIVE : AxisDirection.NEGATIVE); + else + dir = Direction.getFacingFromAxisDirection(Axis.Z, dz > 0 ? AxisDirection.POSITIVE : AxisDirection.NEGATIVE); + setIfAir(world, POS, BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, dir)); + } + } + } + } + + BlocksHelper.setWithoutUpdate(world, pos, BlocksRegistry.WILLOW_BARK.getDefaultState()); + setIfAir(world, pos.up(), BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, Direction.UP)); + setIfAir(world, pos.north(), BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, Direction.NORTH)); + setIfAir(world, pos.south(), BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, Direction.SOUTH)); + setIfAir(world, pos.east(), BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, Direction.EAST)); + setIfAir(world, pos.west(), BlocksRegistry.WILLOW_LEAVES.getDefaultState().with(BlockWillowLeaves.FACING, Direction.WEST)); + } + + private void setIfAir(IWorld world, BlockPos pos, BlockState state) { + if (world.isAirBlock(pos) || world.getBlockState(pos).getBlock() instanceof BlockNetherGrass) + BlocksHelper.setWithoutUpdate(world, pos, state); + } +} diff --git a/src/main/java/redd90/betternether/tab/CreativeTab.java b/src/main/java/redd90/betternether/tab/CreativeTab.java new file mode 100644 index 0000000..5117cf1 --- /dev/null +++ b/src/main/java/redd90/betternether/tab/CreativeTab.java @@ -0,0 +1,16 @@ +package redd90.betternether.tab; + +import net.minecraft.item.ItemGroup; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ResourceLocation; +import redd90.betternether.BetterNether; +import redd90.betternether.registry.BlocksRegistry; + +public class CreativeTab { + public static final ItemGroup BN_TAB = new ItemGroup(BetterNether.MOD_ID) { + @Override + public ItemStack createIcon() { + return new ItemStack(BlocksRegistry.NETHER_GRASS); + } + }; +} diff --git a/src/main/java/redd90/betternether/tileentities/BNBarrelTileEntity.java b/src/main/java/redd90/betternether/tileentities/BNBarrelTileEntity.java new file mode 100644 index 0000000..d7eb78e --- /dev/null +++ b/src/main/java/redd90/betternether/tileentities/BNBarrelTileEntity.java @@ -0,0 +1,145 @@ +package redd90.betternether.tileentities; + +import net.minecraft.block.BarrelBlock; +import net.minecraft.block.BlockState; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.player.PlayerInventory; +import net.minecraft.inventory.ItemStackHelper; +import net.minecraft.inventory.container.ChestContainer; +import net.minecraft.inventory.container.Container; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.tileentity.ChestTileEntity; +import net.minecraft.tileentity.LockableLootTileEntity; +import net.minecraft.tileentity.TileEntityType; +import net.minecraft.util.Direction; +import net.minecraft.util.NonNullList; +import net.minecraft.util.SoundCategory; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.vector.Vector3i; +import net.minecraft.util.text.ITextComponent; +import net.minecraft.util.text.TranslationTextComponent; +import redd90.betternether.blocks.BNBarrel; +import redd90.betternether.registry.TileEntitiesRegistry; + +public class BNBarrelTileEntity extends LockableLootTileEntity { + private NonNullList inventory; + private int viewerCount; + + private BNBarrelTileEntity(TileEntityType type) { + super(type); + this.inventory = NonNullList.withSize(27, ItemStack.EMPTY); + } + + public BNBarrelTileEntity() { + this(TileEntitiesRegistry.BARREL); + } + + @Override + public CompoundNBT write(CompoundNBT tag) { + super.write(tag); + if (!this.checkLootAndWrite(tag)) { + ItemStackHelper.loadAllItems(tag, this.inventory); + } + + return tag; + } + + @Override + public void read(BlockState state, CompoundNBT tag) { + super.read(state, tag); + this.inventory = NonNullList.withSize(this.getSizeInventory(), ItemStack.EMPTY); + if (!this.checkLootAndRead(tag)) { + ItemStackHelper.saveAllItems(tag, this.inventory); + } + } + + @Override + public int getSizeInventory() { + return 27; + } + + @Override + protected NonNullList getItems() { + return this.inventory; + } + + @Override + protected void setItems(NonNullList list) { + this.inventory = list; + } + + @Override + protected ITextComponent getDefaultName() { + return new TranslationTextComponent("container.barrel"); + } + + @Override + protected Container createMenu(int syncId, PlayerInventory playerInventory) { + return ChestContainer.createGeneric9X3(syncId, playerInventory, this); + } + + public void onOpen(PlayerEntity player) { + if (!player.isSpectator()) { + if (this.viewerCount < 0) { + this.viewerCount = 0; + } + + ++this.viewerCount; + BlockState blockState = this.getBlockState(); + boolean bl = (Boolean) blockState.get(BarrelBlock.PROPERTY_OPEN); + if (!bl) { + this.playSound(blockState, SoundEvents.BLOCK_BARREL_OPEN); + this.setOpen(blockState, true); + } + + this.scheduleUpdate(); + } + } + + private void scheduleUpdate() { + this.world.getPendingBlockTicks().scheduleTick(this.getPos(), this.getBlockState().getBlock(), 5); + } + + public void tick() { + int i = this.pos.getX(); + int j = this.pos.getY(); + int k = this.pos.getZ(); + this.viewerCount = ChestTileEntity.calculatePlayersUsing(this.world, this, i, j, k); + if (this.viewerCount > 0) { + this.scheduleUpdate(); + } + else { + BlockState blockState = this.getBlockState(); + if (!(blockState.getBlock() instanceof BNBarrel)) { + this.remove(); + return; + } + + boolean bl = (Boolean) blockState.get(BarrelBlock.PROPERTY_OPEN); + if (bl) { + this.playSound(blockState, SoundEvents.BLOCK_BARREL_CLOSE); + this.setOpen(blockState, false); + } + } + } + + public void onClose(PlayerEntity player) { + if (!player.isSpectator()) { + --this.viewerCount; + } + } + + private void setOpen(BlockState state, boolean open) { + this.world.setBlockState(this.getPos(), (BlockState) state.with(BarrelBlock.PROPERTY_OPEN, open), 3); + } + + private void playSound(BlockState blockState, SoundEvent soundEvent) { + Vector3i vec3i = ((Direction) blockState.get(BarrelBlock.PROPERTY_FACING)).getDirectionVec(); + double d = (double) this.pos.getX() + 0.5D + (double) vec3i.getX() / 2.0D; + double e = (double) this.pos.getY() + 0.5D + (double) vec3i.getY() / 2.0D; + double f = (double) this.pos.getZ() + 0.5D + (double) vec3i.getZ() / 2.0D; + this.world.playSound((PlayerEntity) null, d, e, f, soundEvent, SoundCategory.BLOCKS, 0.5F, this.world.rand.nextFloat() * 0.1F + 0.9F); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/tileentities/BNBrewingStandTileEntity.java b/src/main/java/redd90/betternether/tileentities/BNBrewingStandTileEntity.java new file mode 100644 index 0000000..46e423c --- /dev/null +++ b/src/main/java/redd90/betternether/tileentities/BNBrewingStandTileEntity.java @@ -0,0 +1,327 @@ +package redd90.betternether.tileentities; + +import java.util.Arrays; +import java.util.Iterator; + +import javax.annotation.Nullable; + +import net.minecraft.block.BlockState; +import net.minecraft.block.BrewingStandBlock; +import net.minecraft.client.renderer.texture.ITickable; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.player.PlayerInventory; +import net.minecraft.inventory.ISidedInventory; +import net.minecraft.inventory.InventoryHelper; +import net.minecraft.inventory.ItemStackHelper; +import net.minecraft.inventory.container.BrewingStandContainer; +import net.minecraft.inventory.container.Container; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.potion.PotionBrewing; +import net.minecraft.tileentity.LockableTileEntity; +import net.minecraft.util.Direction; +import net.minecraft.util.IIntArray; +import net.minecraft.util.NonNullList; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.text.ITextComponent; +import net.minecraft.util.text.TranslationTextComponent; +import net.minecraftforge.common.brewing.BrewingRecipeRegistry; +import redd90.betternether.registry.BrewingRegistry; +import redd90.betternether.registry.TileEntitiesRegistry; + +public class BNBrewingStandTileEntity extends LockableTileEntity implements ISidedInventory, ITickable { + private static final int[] TOP_SLOTS = new int[] { 3 }; + private static final int[] BOTTOM_SLOTS = new int[] { 0, 1, 2, 3 }; + private static final int[] SIDE_SLOTS = new int[] { 0, 1, 2, 4 }; + private NonNullList inventory; + private int brewTime; + private boolean[] slotsEmptyLastTick; + private Item itemBrewing; + private int fuel; + protected final IIntArray propertyDelegate; + + public BNBrewingStandTileEntity() { + super(TileEntitiesRegistry.NETHER_BREWING_STAND); + this.inventory = NonNullList.withSize(5, ItemStack.EMPTY); + this.propertyDelegate = new IIntArray() { + public int get(int index) { + switch (index) { + case 0: + return BNBrewingStandTileEntity.this.brewTime; + case 1: + return BNBrewingStandTileEntity.this.fuel; + default: + return 0; + } + } + + public void set(int index, int value) { + switch (index) { + case 0: + BNBrewingStandTileEntity.this.brewTime = value; + break; + case 1: + BNBrewingStandTileEntity.this.fuel = value; + } + + } + + public int size() { + return 2; + } + }; + } + + @Override + protected ITextComponent getDefaultName() { + return new TranslationTextComponent("container.brewing", new Object[0]); + } + + @Override + public int getSizeInventory() { + return this.inventory.size(); + } + + @Override + public boolean isEmpty() { + Iterator var1 = this.inventory.iterator(); + + ItemStack itemStack; + do { + if (!var1.hasNext()) { + return true; + } + + itemStack = (ItemStack) var1.next(); + } + while (itemStack.isEmpty()); + + return false; + } + + @Override + public void tick() { + ItemStack itemStack = (ItemStack) this.inventory.get(4); + if (this.fuel <= 0 && itemStack.getItem() == Items.BLAZE_POWDER) { + this.fuel = 20; + itemStack.shrink(1); + this.markDirty(); + } + + boolean bl = this.canCraft(); + boolean bl2 = this.brewTime > 0; + ItemStack itemStack2 = (ItemStack) this.inventory.get(3); + if (bl2) { + --this.brewTime; + boolean bl3 = this.brewTime == 0; + if (bl3 && bl) { + this.craft(); + this.markDirty(); + } + else if (!bl) { + this.brewTime = 0; + this.markDirty(); + } + else if (this.itemBrewing != itemStack2.getItem()) { + this.brewTime = 0; + this.markDirty(); + } + } + else if (bl && this.fuel > 0) { + --this.fuel; + this.brewTime = 400; + this.itemBrewing = itemStack2.getItem(); + this.markDirty(); + } + + if (!this.world.isRemote) { + boolean[] bls = this.getSlotsEmpty(); + if (!Arrays.equals(bls, this.slotsEmptyLastTick)) { + this.slotsEmptyLastTick = bls; + BlockState blockState = this.world.getBlockState(this.getPos()); + if (!(blockState.getBlock() instanceof BrewingStandBlock)) { + return; + } + + for (int i = 0; i < BrewingStandBlock.HAS_BOTTLE.length; ++i) { + blockState = (BlockState) blockState.with(BrewingStandBlock.HAS_BOTTLE[i], bls[i]); + } + + this.world.setBlockState(this.pos, blockState, 2); + } + } + + } + + public boolean[] getSlotsEmpty() { + boolean[] bls = new boolean[3]; + + for (int i = 0; i < 3; ++i) { + if (!((ItemStack) this.inventory.get(i)).isEmpty()) { + bls[i] = true; + } + } + + return bls; + } + + private boolean canCraft() { + ItemStack source = this.inventory.get(3); + if (source.isEmpty()) { + return false; + } + else if (!BrewingRecipeRegistry.isValidIngredient(source)) { + return false; + } + else { + for (int i = 0; i < 3; ++i) { + ItemStack bottle = this.inventory.get(i); + if (!bottle.isEmpty()) { + if (BrewingRecipeRegistry.hasOutput(bottle, source)) + return true; + else if (BrewingRegistry.getResult(source, bottle) != null) + return true; + } + } + + return false; + } + } + + private void craft() { + ItemStack source = (ItemStack) this.inventory.get(3); + + for (int i = 0; i < 3; ++i) { + ItemStack bottle = this.inventory.get(i); + if (!bottle.isEmpty()) { + ItemStack result = BrewingRegistry.getResult(source, bottle); + if (result != null) + this.inventory.set(i, result.copy()); + else + this.inventory.set(i, PotionBrewing.doReaction(source, this.inventory.get(i))); + } + } + + source.shrink(1); + BlockPos blockPos = this.getPos(); + if (source.hasContainerItem()) { + ItemStack itemStack2 = new ItemStack(source.getContainerItem().getItem()); + if (source.isEmpty()) { + source = itemStack2; + } + else if (!this.world.isRemote) { + InventoryHelper.spawnItemStack(this.world, (double) blockPos.getX(), (double) blockPos.getY(), + (double) blockPos.getZ(), itemStack2); + } + } + + this.inventory.set(3, source); + this.world.playEvent(1035, blockPos, 0); + } + + @Override + public void read(BlockState state, CompoundNBT tag) { + super.read(state, tag); + this.inventory = NonNullList.withSize(this.getSizeInventory(), ItemStack.EMPTY); + ItemStackHelper.loadAllItems(tag, this.inventory); + this.brewTime = tag.getShort("BrewTime"); + this.fuel = tag.getByte("Fuel"); + } + + @Override + public CompoundNBT write(CompoundNBT tag) { + super.write(tag); + tag.putShort("BrewTime", (short) this.brewTime); + ItemStackHelper.saveAllItems(tag, this.inventory); + tag.putByte("Fuel", (byte) this.fuel); + return tag; + } + + @Override + public ItemStack getStackInSlot(int slot) { + return slot >= 0 && slot < this.inventory.size() ? (ItemStack) this.inventory.get(slot) : ItemStack.EMPTY; + } + + @Override + public ItemStack decrStackSize(int slot, int amount) { + return ItemStackHelper.getAndSplit(this.inventory, slot, amount); + } + + @Override + public ItemStack removeStackFromSlot(int slot) { + return ItemStackHelper.getAndRemove(this.inventory, slot); + } + + @Override + public void setInventorySlotContents(int slot, ItemStack stack) { + if (slot >= 0 && slot < this.inventory.size()) { + this.inventory.set(slot, stack); + } + + } + + @Override + public boolean isUsableByPlayer(PlayerEntity player) { + if (this.world.getTileEntity(this.pos) != this) { + return false; + } + else { + return player.getDistanceSq((double) this.pos.getX() + 0.5D, (double) this.pos.getY() + 0.5D, + (double) this.pos.getZ() + 0.5D) <= 64.0D; + } + } + + @Override + public boolean isItemValidForSlot(int slot, ItemStack stack) { + if (slot == 3) { + return BrewingRecipeRegistry.isValidIngredient(stack); + } + else { + Item item = stack.getItem(); + if (slot == 4) { + return item == Items.BLAZE_POWDER; + } + else { + return (item == Items.POTION || item == Items.SPLASH_POTION || item == Items.LINGERING_POTION + || item == Items.GLASS_BOTTLE) && this.getStackInSlot(slot).isEmpty(); + } + } + } + + @Override + public int[] getSlotsForFace(Direction side) { + if (side == Direction.UP) { + return TOP_SLOTS; + } + else { + return side == Direction.DOWN ? BOTTOM_SLOTS : SIDE_SLOTS; + } + } + + @Override + public boolean canInsertItem(int slot, ItemStack stack, @Nullable Direction dir) { + return this.isItemValidForSlot(slot, stack); + } + + @Override + public boolean canExtractItem(int slot, ItemStack stack, Direction dir) { + if (slot == 3) { + return stack.getItem() == Items.GLASS_BOTTLE; + } + else { + return true; + } + } + + @Override + public void clear() { + this.inventory.clear(); + } + + @Override + protected Container createMenu(int syncId, PlayerInventory playerInventory) { + return new BrewingStandContainer(syncId, playerInventory, this, this.propertyDelegate); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/tileentities/BNChestTileEntity.java b/src/main/java/redd90/betternether/tileentities/BNChestTileEntity.java new file mode 100644 index 0000000..6928011 --- /dev/null +++ b/src/main/java/redd90/betternether/tileentities/BNChestTileEntity.java @@ -0,0 +1,10 @@ +package redd90.betternether.tileentities; + +import net.minecraft.tileentity.ChestTileEntity; +import redd90.betternether.registry.TileEntitiesRegistry; + +public class BNChestTileEntity extends ChestTileEntity { + public BNChestTileEntity() { + super(TileEntitiesRegistry.CHEST); + } +} diff --git a/src/main/java/redd90/betternether/tileentities/BNSignTileEntity.java b/src/main/java/redd90/betternether/tileentities/BNSignTileEntity.java new file mode 100644 index 0000000..db376ea --- /dev/null +++ b/src/main/java/redd90/betternether/tileentities/BNSignTileEntity.java @@ -0,0 +1,170 @@ +package redd90.betternether.tileentities; + +import java.util.function.Function; + +import javax.annotation.Nullable; + +import com.mojang.brigadier.exceptions.CommandSyntaxException; + +import net.minecraft.block.BlockState; +import net.minecraft.command.CommandSource; +import net.minecraft.command.ICommandSource; +import net.minecraft.entity.Entity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.player.ServerPlayerEntity; +import net.minecraft.item.DyeColor; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.network.play.server.SUpdateTileEntityPacket; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.IReorderingProcessor; +import net.minecraft.util.math.vector.Vector2f; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.util.text.ITextComponent; +import net.minecraft.util.text.StringTextComponent; +import net.minecraft.util.text.Style; +import net.minecraft.util.text.TextComponentUtils; +import net.minecraft.util.text.event.ClickEvent; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import redd90.betternether.registry.TileEntitiesRegistry; + +public class BNSignTileEntity extends TileEntity { + private final ITextComponent[] text; + private boolean editable; + private PlayerEntity editor; + private final IReorderingProcessor[] textBeingEdited; + private DyeColor textColor; + + public BNSignTileEntity() { + super(TileEntitiesRegistry.SIGN); + this.text = new ITextComponent[] { StringTextComponent.EMPTY, StringTextComponent.EMPTY, StringTextComponent.EMPTY, StringTextComponent.EMPTY }; + this.editable = true; + this.textBeingEdited = new IReorderingProcessor[4]; + this.textColor = DyeColor.BLACK; + } + + @Override + public CompoundNBT write(CompoundNBT tag) { + super.write(tag); + + for (int i = 0; i < 4; ++i) { + String string = ITextComponent.Serializer.toJson(this.text[i]); + tag.putString("ITextComponent" + (i + 1), string); + } + + tag.putString("Color", this.textColor.name()); + return tag; + } + + @Override + public void read(BlockState state, CompoundNBT tag) { + this.editable = false; + super.read(state, tag); + this.textColor = DyeColor.byTranslationKey(tag.getString("Color"), DyeColor.BLACK); + + for (int i = 0; i < 4; ++i) { + String string = tag.getString("ITextComponent" + (i + 1)); + ITextComponent text = ITextComponent.Serializer.getComponentFromJson(string.isEmpty() ? "\"\"" : string); + if (this.world instanceof ServerWorld) { + try { + this.text[i] = TextComponentUtils.func_240645_a_(this.getCommandSource((ServerPlayerEntity) null), text, (Entity) null, 0); + } + catch (CommandSyntaxException var7) { + this.text[i] = text; + } + } + else { + this.text[i] = text; + } + + this.textBeingEdited[i] = null; + } + + } + + public void setTextOnRow(int row, ITextComponent text) { + this.text[row] = text; + this.textBeingEdited[row] = null; + } + + @Nullable + @OnlyIn(Dist.CLIENT) + public IReorderingProcessor getTextBeingEditedOnRow(int row, Function function) { + if (this.textBeingEdited[row] == null && this.text[row] != null) { + this.textBeingEdited[row] = (IReorderingProcessor) function.apply(this.text[row]); + } + + return this.textBeingEdited[row]; + } + + @Nullable + public SUpdateTileEntityPacket getUpdatePacket() { + return new SUpdateTileEntityPacket(this.pos, 9, this.getUpdateTag()); + } + + public CompoundNBT getUpdateTag() { + return this.write(new CompoundNBT()); + } + + public boolean copyItemDataRequiresOperator() { + return true; + } + + public boolean isEditable() { + return this.editable; + } + + @OnlyIn(Dist.CLIENT) + public void setEditable(boolean bl) { + this.editable = bl; + if (!bl) { + this.editor = null; + } + + } + + public void setEditor(PlayerEntity player) { + this.editor = player; + } + + public PlayerEntity getEditor() { + return this.editor; + } + + public boolean onActivate(PlayerEntity playerIn) { + for(ITextComponent itextcomponent : this.text) { + Style style = itextcomponent == null ? null : itextcomponent.getStyle(); + if (style != null && style.getClickEvent() != null) { + ClickEvent clickevent = style.getClickEvent(); + if (clickevent.getAction() == ClickEvent.Action.RUN_COMMAND) { + playerIn.getServer().getCommandManager().handleCommand(this.getCommandSource((ServerPlayerEntity)playerIn), clickevent.getValue()); + } + } + } + + return true; + } + + public CommandSource getCommandSource(@Nullable ServerPlayerEntity playerIn) { + String s = playerIn == null ? "Sign" : playerIn.getName().getString(); + ITextComponent itextcomponent = (ITextComponent)(playerIn == null ? new StringTextComponent("Sign") : playerIn.getDisplayName()); + return new CommandSource(ICommandSource.DUMMY, Vector3d.copyCentered(this.pos), Vector2f.ZERO, (ServerWorld)this.world, 2, s, itextcomponent, this.world.getServer(), playerIn); + } + + public DyeColor getTextColor() { + return this.textColor; + } + + public boolean setTextColor(DyeColor value) { + if (value != this.getTextColor()) { + this.textColor = value; + this.markDirty(); + this.world.notifyBlockUpdate(this.getPos(), this.getBlockState(), this.getBlockState(), 3); + return true; + } + else { + return false; + } + } +} diff --git a/src/main/java/redd90/betternether/tileentities/TileEntityChestOfDrawers.java b/src/main/java/redd90/betternether/tileentities/TileEntityChestOfDrawers.java new file mode 100644 index 0000000..67a5617 --- /dev/null +++ b/src/main/java/redd90/betternether/tileentities/TileEntityChestOfDrawers.java @@ -0,0 +1,129 @@ +package redd90.betternether.tileentities; + +import java.util.List; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.player.PlayerInventory; +import net.minecraft.inventory.ItemStackHelper; +import net.minecraft.inventory.container.ChestContainer; +import net.minecraft.inventory.container.Container; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.tileentity.LockableLootTileEntity; +import net.minecraft.util.Direction; +import net.minecraft.util.NonNullList; +import net.minecraft.util.SoundCategory; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.SoundEvents; +import net.minecraft.util.math.vector.Vector3i; +import net.minecraft.util.text.ITextComponent; +import net.minecraft.util.text.TranslationTextComponent; +import net.minecraft.world.server.ServerWorld; +import redd90.betternether.BlocksHelper; +import redd90.betternether.blocks.BlockChestOfDrawers; +import redd90.betternether.registry.TileEntitiesRegistry; + +public class TileEntityChestOfDrawers extends LockableLootTileEntity { + private NonNullList inventory; + private int watchers = 0; + + public TileEntityChestOfDrawers() { + super(TileEntitiesRegistry.CHEST_OF_DRAWERS); + this.inventory = NonNullList.withSize(27, ItemStack.EMPTY); + } + + @Override + public int getSizeInventory() { + return 27; + } + + @Override + protected NonNullList getItems() { + return this.inventory; + } + + @Override + protected void setItems(NonNullList list) { + this.inventory = list; + } + + @Override + protected ITextComponent getDefaultName() { + return new TranslationTextComponent("container.chest_of_drawers", new Object[0]); + } + + @Override + protected Container createMenu(int syncId, PlayerInventory playerInventory) { + return ChestContainer.createGeneric9X3(syncId, playerInventory, this); + } + + @Override + public void read(BlockState blockState, CompoundNBT tag) { + super.read(blockState, tag); + this.inventory = NonNullList.withSize(this.getSizeInventory(), ItemStack.EMPTY); + if (!this.checkLootAndRead(tag)) { + ItemStackHelper.loadAllItems(tag, this.inventory); + } + } + + @Override + public CompoundNBT write(CompoundNBT tag) { + super.write(tag); + if (!this.checkLootAndWrite(tag)) { + ItemStackHelper.saveAllItems(tag, this.inventory); + } + return tag; + } + + public void onInvOpen(PlayerEntity player) { + if (!player.isSpectator()) { + if (this.watchers < 0) { + this.watchers = 0; + } + if (this.watchers == 0) { + this.playSound(this.getBlockState(), SoundEvents.BLOCK_BARREL_OPEN); + } + + ++this.watchers; + this.onInvOpenOrClose(); + } + } + + @Override + public void closeInventory(PlayerEntity player) { + if (!player.isSpectator()) { + --this.watchers; + this.onInvOpenOrClose(); + } + } + + protected void onInvOpenOrClose() { + BlockState state = this.getBlockState(); + Block block = state.getBlock(); + if (block instanceof BlockChestOfDrawers && !world.isRemote) { + if (watchers > 0 && !state.get(BlockChestOfDrawers.OPEN)) { + BlocksHelper.setWithoutUpdate((ServerWorld) world, pos, state.with(BlockChestOfDrawers.OPEN, true)); + } + else if (watchers == 0 && state.get(BlockChestOfDrawers.OPEN)) { + BlocksHelper.setWithoutUpdate((ServerWorld) world, pos, state.with(BlockChestOfDrawers.OPEN, false)); + } + } + } + + private void playSound(BlockState blockState, SoundEvent soundEvent) { + Vector3i vec3i = ((Direction) blockState.get(BlockChestOfDrawers.FACING)).getDirectionVec(); + double d = (double) this.pos.getX() + 0.5D + (double) vec3i.getX() / 2.0D; + double e = (double) this.pos.getY() + 0.5D + (double) vec3i.getY() / 2.0D; + double f = (double) this.pos.getZ() + 0.5D + (double) vec3i.getZ() / 2.0D; + this.world.playSound((PlayerEntity) null, d, e, f, soundEvent, SoundCategory.BLOCKS, 0.5F, this.world.rand.nextFloat() * 0.1F + 0.9F); + } + + public void addItemsToList(List items) { + for (ItemStack item : inventory) + if (item != null) + items.add(item); + } +} + diff --git a/src/main/java/redd90/betternether/tileentities/TileEntityForge.java b/src/main/java/redd90/betternether/tileentities/TileEntityForge.java new file mode 100644 index 0000000..44daea6 --- /dev/null +++ b/src/main/java/redd90/betternether/tileentities/TileEntityForge.java @@ -0,0 +1,37 @@ +package redd90.betternether.tileentities; + +import net.minecraft.entity.player.PlayerInventory; +import net.minecraft.inventory.container.Container; +import net.minecraft.inventory.container.FurnaceContainer; +import net.minecraft.item.ItemStack; +import net.minecraft.item.crafting.IRecipeType; +import net.minecraft.tileentity.AbstractFurnaceTileEntity; +import net.minecraft.util.text.ITextComponent; +import net.minecraft.util.text.TranslationTextComponent; +import redd90.betternether.registry.TileEntitiesRegistry; + +public class TileEntityForge extends AbstractFurnaceTileEntity { + public TileEntityForge() { + super(TileEntitiesRegistry.CINCINNASITE_FORGE, IRecipeType.SMELTING); + } + + @Override + protected ITextComponent getDefaultName() { + return new TranslationTextComponent("container.forge", new Object[0]); + } + + @Override + protected Container createMenu(int syncId, PlayerInventory playerInventory) { + return new FurnaceContainer(syncId, playerInventory, this, this.furnaceData); + } + + @Override + protected int getBurnTime(ItemStack fuel) { + return super.getBurnTime(fuel) / 2; + } + + @Override + protected int getCookTime() { + return super.getCookTime() / 2; + } +} diff --git a/src/main/java/redd90/betternether/tileentities/TileEntityFurnace.java b/src/main/java/redd90/betternether/tileentities/TileEntityFurnace.java new file mode 100644 index 0000000..5c7dd9f --- /dev/null +++ b/src/main/java/redd90/betternether/tileentities/TileEntityFurnace.java @@ -0,0 +1,26 @@ +package redd90.betternether.tileentities; + +import net.minecraft.entity.player.PlayerInventory; +import net.minecraft.inventory.container.Container; +import net.minecraft.inventory.container.FurnaceContainer; +import net.minecraft.item.crafting.IRecipeType; +import net.minecraft.tileentity.AbstractFurnaceTileEntity; +import net.minecraft.util.text.ITextComponent; +import net.minecraft.util.text.TranslationTextComponent; +import redd90.betternether.registry.TileEntitiesRegistry; + +public class TileEntityFurnace extends AbstractFurnaceTileEntity { + public TileEntityFurnace() { + super(TileEntitiesRegistry.NETHERRACK_FURNACE, IRecipeType.SMELTING); + } + + @Override + protected ITextComponent getDefaultName() { + return new TranslationTextComponent("container.furnace", new Object[0]); + } + + @Override + protected Container createMenu(int syncId, PlayerInventory playerInventory) { + return new FurnaceContainer(syncId, playerInventory, this, this.furnaceData); + } +} diff --git a/src/main/java/redd90/betternether/tileentities/render/BNChestTileEntityRenderer.java b/src/main/java/redd90/betternether/tileentities/render/BNChestTileEntityRenderer.java new file mode 100644 index 0000000..d758403 --- /dev/null +++ b/src/main/java/redd90/betternether/tileentities/render/BNChestTileEntityRenderer.java @@ -0,0 +1,178 @@ +package redd90.betternether.tileentities.render; + +import java.util.HashMap; + +import com.google.common.collect.Maps; +import com.mojang.blaze3d.matrix.MatrixStack; +import com.mojang.blaze3d.vertex.IVertexBuilder; + +import it.unimi.dsi.fastutil.floats.Float2FloatFunction; +import it.unimi.dsi.fastutil.ints.Int2IntFunction; +import net.minecraft.block.AbstractChestBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.ChestBlock; +import net.minecraft.client.renderer.IRenderTypeBuffer; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.model.ModelRenderer; +import net.minecraft.client.renderer.model.RenderMaterial; +import net.minecraft.client.renderer.tileentity.DualBrightnessCallback; +import net.minecraft.client.renderer.tileentity.TileEntityRenderer; +import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher; +import net.minecraft.state.properties.ChestType; +import net.minecraft.tileentity.ChestTileEntity; +import net.minecraft.tileentity.TileEntityMerger; +import net.minecraft.tileentity.TileEntityMerger.ICallbackWrapper; +import net.minecraft.util.Direction; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.math.vector.Vector3f; +import net.minecraft.world.World; +import net.minecraftforge.registries.ForgeRegistries; +import redd90.betternether.BetterNether; +import redd90.betternether.blocks.BNChest; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.tileentities.BNChestTileEntity; + +public class BNChestTileEntityRenderer extends TileEntityRenderer { + private static final HashMap LAYERS = Maps.newHashMap(); + private static RenderType[] defaultLayer; + + private static final int ID_NORMAL = 0; + private static final int ID_LEFT = 1; + private static final int ID_RIGHT = 2; + + private final ModelRenderer partA; + private final ModelRenderer partC; + private final ModelRenderer partB; + private final ModelRenderer partRightA; + private final ModelRenderer partRightC; + private final ModelRenderer partRightB; + private final ModelRenderer partLeftA; + private final ModelRenderer partLeftC; + private final ModelRenderer partLeftB; + + public BNChestTileEntityRenderer(TileEntityRendererDispatcher blockEntityRenderDispatcher) { + super(blockEntityRenderDispatcher); + + this.partC = new ModelRenderer(64, 64, 0, 19); + this.partC.addBox(1.0F, 0.0F, 1.0F, 14.0F, 10.0F, 14.0F, 0.0F); + this.partA = new ModelRenderer(64, 64, 0, 0); + this.partA.addBox(1.0F, 0.0F, 0.0F, 14.0F, 5.0F, 14.0F, 0.0F); + this.partA.rotationPointY = 9.0F; + this.partA.rotationPointZ = 1.0F; + this.partB = new ModelRenderer(64, 64, 0, 0); + this.partB.addBox(7.0F, -1.0F, 15.0F, 2.0F, 4.0F, 1.0F, 0.0F); + this.partB.rotationPointY = 8.0F; + this.partRightC = new ModelRenderer(64, 64, 0, 19); + this.partRightC.addBox(1.0F, 0.0F, 1.0F, 15.0F, 10.0F, 14.0F, 0.0F); + this.partRightA = new ModelRenderer(64, 64, 0, 0); + this.partRightA.addBox(1.0F, 0.0F, 0.0F, 15.0F, 5.0F, 14.0F, 0.0F); + this.partRightA.rotationPointY = 9.0F; + this.partRightA.rotationPointZ = 1.0F; + this.partRightB = new ModelRenderer(64, 64, 0, 0); + this.partRightB.addBox(15.0F, -1.0F, 15.0F, 1.0F, 4.0F, 1.0F, 0.0F); + this.partRightB.rotationPointY = 8.0F; + this.partLeftC = new ModelRenderer(64, 64, 0, 19); + this.partLeftC.addBox(0.0F, 0.0F, 1.0F, 15.0F, 10.0F, 14.0F, 0.0F); + this.partLeftA = new ModelRenderer(64, 64, 0, 0); + this.partLeftA.addBox(0.0F, 0.0F, 0.0F, 15.0F, 5.0F, 14.0F, 0.0F); + this.partLeftA.rotationPointY = 9.0F; + this.partLeftA.rotationPointZ = 1.0F; + this.partLeftB = new ModelRenderer(64, 64, 0, 0); + this.partLeftB.addBox(0.0F, -1.0F, 15.0F, 1.0F, 4.0F, 1.0F, 0.0F); + this.partLeftB.rotationPointY = 8.0F; + } + + public void render(BNChestTileEntity entity, float tickDelta, MatrixStack matrices, IRenderTypeBuffer vertexConsumers, int light, int overlay) { + World world = entity.getWorld(); + boolean worldExists = world != null; + BlockState blockState = worldExists ? entity.getBlockState() : (BlockState) Blocks.CHEST.getDefaultState().with(ChestBlock.FACING, Direction.SOUTH); + ChestType chestType = blockState.hasProperty(ChestBlock.TYPE) ? (ChestType) blockState.get(ChestBlock.TYPE) : ChestType.SINGLE; + Block block = blockState.getBlock(); + if (block instanceof AbstractChestBlock) { + AbstractChestBlock abstractChestBlock = (AbstractChestBlock) block; + boolean isDouble = chestType != ChestType.SINGLE; + float f = ((Direction) blockState.get(ChestBlock.FACING)).getHorizontalAngle(); + ICallbackWrapper propertySource; + + matrices.push(); + matrices.translate(0.5D, 0.5D, 0.5D); + matrices.rotate(Vector3f.YP.rotationDegrees(-f)); + matrices.translate(-0.5D, -0.5D, -0.5D); + + if (worldExists) { + propertySource = abstractChestBlock.combine(blockState, world, entity.getPos(), true); + } + else { + propertySource = TileEntityMerger.ICallback::func_225537_b_; + } + + float pitch = ((Float2FloatFunction) propertySource.apply(ChestBlock.getLidRotationCallback(entity))).get(tickDelta); + pitch = 1.0F - pitch; + pitch = 1.0F - pitch * pitch * pitch; + @SuppressWarnings({ "unchecked", "rawtypes" }) + int blockLight = ((Int2IntFunction) propertySource.apply(new DualBrightnessCallback())).applyAsInt(light); + + IVertexBuilder vertexConsumer = getConsumer(vertexConsumers, block, chestType); + + if (isDouble) { + if (chestType == ChestType.LEFT) { + renderParts(matrices, vertexConsumer, this.partLeftA, this.partLeftB, this.partLeftC, pitch, blockLight, overlay); + } + else { + renderParts(matrices, vertexConsumer, this.partRightA, this.partRightB, this.partRightC, pitch, blockLight, overlay); + } + } + else { + renderParts(matrices, vertexConsumer, this.partA, this.partB, this.partC, pitch, blockLight, overlay); + } + + matrices.pop(); + } + } + + private void renderParts(MatrixStack matrices, IVertexBuilder vertices, ModelRenderer modelPart, ModelRenderer modelPart2, ModelRenderer modelPart3, float pitch, int light, int overlay) { + modelPart.rotateAngleX = -(pitch * 1.5707964F); + modelPart2.rotateAngleX = modelPart.rotateAngleX; + modelPart.render(matrices, vertices, light, overlay); + modelPart2.render(matrices, vertices, light, overlay); + modelPart3.render(matrices, vertices, light, overlay); + } + + private static RenderType getChestTexture(ChestType type, RenderType[] layers) { + switch (type) { + case LEFT: + return layers[ID_LEFT]; + case RIGHT: + return layers[ID_RIGHT]; + case SINGLE: + default: + return layers[ID_NORMAL]; + } + } + + public static IVertexBuilder getConsumer(IRenderTypeBuffer provider, Block block, ChestType chestType) { + RenderType[] layers = LAYERS.getOrDefault(block, defaultLayer); + return provider.getBuffer(getChestTexture(chestType, layers)); + } + + static { + defaultLayer = new RenderType[] { + RenderType.getEntitySolid(new ResourceLocation("entity/chest/normal.png")), + RenderType.getEntitySolid(new ResourceLocation("entity/chest/normal_left.png")), + RenderType.getEntitySolid(new ResourceLocation("entity/chest/normal_right.png")) + }; + BlocksRegistry.getPossibleBlocks().forEach((source) -> { + Block block = ForgeRegistries.BLOCKS.getValue(source.getRegistryName()); + if (block instanceof BNChest) { + LAYERS.put(block, new RenderType[] { + RenderType.getEntitySolid(new ResourceLocation(BetterNether.MOD_ID, "textures/entity/chest/" + source.getRegistryName().getPath() + ".png")), + RenderType.getEntitySolid(new ResourceLocation(BetterNether.MOD_ID, "textures/entity/chest/" + source.getRegistryName().getPath() + "_left.png")), + RenderType.getEntitySolid(new ResourceLocation(BetterNether.MOD_ID, "textures/entity/chest/" + source.getRegistryName().getPath() + "_right.png")) + }); + } + }); + } +} + diff --git a/src/main/java/redd90/betternether/tileentities/render/BNSignTileEntityRenderer.java b/src/main/java/redd90/betternether/tileentities/render/BNSignTileEntityRenderer.java new file mode 100644 index 0000000..dd180ff --- /dev/null +++ b/src/main/java/redd90/betternether/tileentities/render/BNSignTileEntityRenderer.java @@ -0,0 +1,116 @@ +package redd90.betternether.tileentities.render; + +import java.util.HashMap; +import java.util.List; + +import com.google.common.collect.Maps; +import com.mojang.blaze3d.matrix.MatrixStack; +import com.mojang.blaze3d.vertex.IVertexBuilder; + +import net.minecraft.block.AbstractSignBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.StandingSignBlock; +import net.minecraft.block.WoodType; +import net.minecraft.client.gui.FontRenderer; +import net.minecraft.client.renderer.Atlases; +import net.minecraft.client.renderer.IRenderTypeBuffer; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.model.RenderMaterial; +import net.minecraft.client.renderer.texture.NativeImage; +import net.minecraft.client.renderer.tileentity.SignTileEntityRenderer; +import net.minecraft.client.renderer.tileentity.SignTileEntityRenderer.SignModel; +import net.minecraft.client.renderer.tileentity.TileEntityRenderer; +import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher; +import net.minecraft.util.IReorderingProcessor; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.math.vector.Vector3f; +import net.minecraftforge.registries.ForgeRegistries; +import redd90.betternether.BetterNether; +import redd90.betternether.blocks.BNSign; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.tileentities.BNSignTileEntity; + +public class BNSignTileEntityRenderer extends TileEntityRenderer { + private static final HashMap LAYERS = Maps.newHashMap(); + private static RenderType defaultLayer; + private final SignModel model = new SignTileEntityRenderer.SignModel(); + + public BNSignTileEntityRenderer(TileEntityRendererDispatcher renderDispatcher) { + super(renderDispatcher); + } + + public void render(BNSignTileEntity signTileEntity, float tickDelta, MatrixStack matrixStack, IRenderTypeBuffer provider, int light, int overlay) { + BlockState state = signTileEntity.getBlockState(); + matrixStack.push(); + + matrixStack.translate(0.5D, 0.5D, 0.5D); + float angle = -((float) ((Integer) state.get(StandingSignBlock.ROTATION) * 360) / 16.0F); + + BlockState blockState = signTileEntity.getBlockState(); + if (blockState.get(BNSign.FLOOR)) { + matrixStack.rotate(Vector3f.YP.rotationDegrees(angle)); + this.model.signStick.showModel = true; + } + else { + matrixStack.rotate(Vector3f.YP.rotationDegrees(angle + 180)); + matrixStack.translate(0.0D, -0.3125D, -0.4375D); + this.model.signStick.showModel = false; + } + + matrixStack.push(); + matrixStack.scale(0.6666667F, -0.6666667F, -0.6666667F); + IVertexBuilder vertexConsumer = getConsumer(provider, state.getBlock()); + model.signBoard.render(matrixStack, vertexConsumer, light, overlay); + model.signStick.render(matrixStack, vertexConsumer, light, overlay); + matrixStack.pop(); + FontRenderer textRenderer = renderDispatcher.getFontRenderer(); + matrixStack.translate(0.0D, 0.3333333432674408D, 0.046666666865348816D); + matrixStack.scale(0.010416667F, -0.010416667F, 0.010416667F); + int m = signTileEntity.getTextColor().getTextColor(); + int n = (int) (NativeImage.getRed(m) * 0.4D); + int o = (int) (NativeImage.getGreen(m) * 0.4D); + int p = (int) (NativeImage.getBlue(m) * 0.4D); + int q = NativeImage.getCombined(0, p, o, n); + + for (int s = 0; s < 4; ++s) { + IReorderingProcessor orderedText = signTileEntity.getTextBeingEditedOnRow(s, (text) -> { + List list = textRenderer.trimStringToWidth(text, 90); + return list.isEmpty() ? IReorderingProcessor.field_242232_a : (IReorderingProcessor) list.get(0); + }); + if (orderedText != null) { + float t = (float) (-textRenderer.func_243245_a(orderedText) / 2); + textRenderer.func_238416_a_((IReorderingProcessor) orderedText, t, (float) (s * 10 - 20), q, false, matrixStack.getLast().getMatrix(), provider, false, 0, light); + } + } + + matrixStack.pop(); + } + + public static RenderMaterial getModelTexture(Block block) { + WoodType signType2; + if (block instanceof AbstractSignBlock) { + signType2 = ((AbstractSignBlock) block).getWoodType(); + } + else { + signType2 = WoodType.OAK; + } + + return Atlases.getSignMaterial(signType2); + } + + static { + defaultLayer = RenderType.getEntitySolid(new ResourceLocation("textures/entity/signs/oak.png")); + BlocksRegistry.getPossibleBlocks().forEach((source) -> { + Block block = ForgeRegistries.BLOCKS.getValue(source.getRegistryName()); + if (block instanceof BNSign) { + RenderType layer = RenderType.getEntitySolid(new ResourceLocation(BetterNether.MOD_ID, "textures/entity/signs/" + source.getRegistryName().getPath() + ".png")); + LAYERS.put(block, layer); + } + }); + } + + public static IVertexBuilder getConsumer(IRenderTypeBuffer provider, Block block) { + return provider.getBuffer(LAYERS.getOrDefault(block, defaultLayer)); + } +} diff --git a/src/main/java/redd90/betternether/world/BNWorldGenerator.java b/src/main/java/redd90/betternether/world/BNWorldGenerator.java new file mode 100644 index 0000000..d9e714d --- /dev/null +++ b/src/main/java/redd90/betternether/world/BNWorldGenerator.java @@ -0,0 +1,443 @@ +package redd90.betternether.world; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.world.IWorld; +import net.minecraft.world.biome.Biome; +import net.minecraft.world.gen.WorldGenRegion; +import net.minecraft.world.gen.feature.NoFeatureConfig; +import net.minecraft.world.gen.feature.StructureFeature; +import net.minecraft.world.gen.feature.structure.Structure; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; +import redd90.betternether.biomes.NetherBiome; +import redd90.betternether.blocks.BlockStalactite; +import redd90.betternether.config.Configs; +import redd90.betternether.registry.BlocksRegistry; +import redd90.betternether.registry.NetherBiomesRegistry; +import redd90.betternether.structures.StructureCaves; +import redd90.betternether.structures.StructurePath; +import redd90.betternether.structures.StructureType; +import redd90.betternether.world.structures.CityFeature; + +public class BNWorldGenerator { + private static boolean hasCleaningPass; + private static boolean hasFixPass; + + private static float cincinnasiteDensity; + private static float rubyDensity; + private static float lapisDensity; + private static float structureDensity; + private static float lavaStructureDensity; + private static float globalDensity; + + private static final BlockState AIR = Blocks.AIR.getDefaultState(); + + private static Mutable popPos = new Mutable(); + + private static final NetherBiome[][][] BIOMES = new NetherBiome[8][64][8]; + + private static final List LIST_FLOOR = new ArrayList(4096); + private static final List LIST_WALL = new ArrayList(4096); + private static final List LIST_CEIL = new ArrayList(4096); + private static final List LIST_LAVA = new ArrayList(1024); + private static final HashSet MC_BIOMES = new HashSet(); + + private static boolean hasCaves; + private static boolean hasPaths; + + private static StructureCaves caves; + private static StructurePath paths; + private static NetherBiome biome; + + protected static int biomeSizeXZ; + protected static int biomeSizeY; + protected static boolean volumetric; + + public static final CityFeature CITY = new CityFeature(); + public static final StructureFeature> CITY_CONFIGURED = CITY.withConfiguration(NoFeatureConfig.NO_FEATURE_CONFIG); + + public static void onModInit() { + hasCleaningPass = Configs.GENERATOR.getBoolean("generator.world.terrain", "terrain_cleaning_pass", true); + hasFixPass = Configs.GENERATOR.getBoolean("generator.world.terrain", "world_fixing_pass", true); + + hasCaves = Configs.GENERATOR.getBoolean("generator.world.environment", "generate_caves", true); + hasPaths = Configs.GENERATOR.getBoolean("generator.world.environment", "generate_paths", true); + + cincinnasiteDensity = Configs.GENERATOR.getFloat("generator.world.ores", "cincinnasite_ore_density", 1F / 1024F); + rubyDensity = Configs.GENERATOR.getFloat("generator.world.ores", "ruby_ore_density", 1F / 4000F); + lapisDensity = Configs.GENERATOR.getFloat("generator.world.ores", "lapis_ore_density", 1F / 4000F); + structureDensity = Configs.GENERATOR.getFloat("generator.world", "structures_density", 1F / 16F) * 1.0001F; + lavaStructureDensity = Configs.GENERATOR.getFloat("generator.world", "lava_structures_density", 1F / 200F) * 1.0001F; + globalDensity = Configs.GENERATOR.getFloat("generator.world", "global_plant_and_structures_density", 1F) * 1.0001F; + + biomeSizeXZ = Configs.GENERATOR.getInt("generator_world", "biome_size_xz", 200); + biomeSizeY = Configs.GENERATOR.getInt("generator_world", "biome_size_y", 40); + volumetric = Configs.GENERATOR.getBoolean("generator_world", "volumetric_biomes", true); + + Configs.GENERATOR.getBoolean("generator.world.cities", "generate", true); + + } + + public static void init(long seed) { + caves = new StructureCaves(seed); + paths = new StructurePath(seed + 1); + } + + private static NetherBiome getBiomeLocal(int x, int y, int z, Random random) { + int px = (int) Math.round(x + random.nextGaussian() * 0.5) >> 1; + int py = (int) Math.round(y + random.nextGaussian() * 0.5) >> 1; + int pz = (int) Math.round(z + random.nextGaussian() * 0.5) >> 1; + return BIOMES[clamp(px, 7)][clamp(py, 63)][clamp(pz, 7)]; + } + + private static int clamp(int x, int max) { + return x < 0 ? 0 : x > max ? max : x; + } + + public static void populate(WorldGenRegion world, int sx, int sz, Random random) { + // Structure Generator + if (random.nextFloat() < structureDensity) { + popPos.setPos(sx + random.nextInt(16), MHelper.randRange(33, 100, random), sz + random.nextInt(16)); + StructureType type = StructureType.FLOOR; + boolean isAir = world.getBlockState(popPos).getMaterial().isReplaceable(); + boolean airUp = world.getBlockState(popPos.up()).getMaterial().isReplaceable() && world.getBlockState(popPos.up(3)).getMaterial().isReplaceable(); + boolean airDown = world.getBlockState(popPos.down()).getMaterial().isReplaceable() && world.getBlockState(popPos.down(3)).getMaterial().isReplaceable(); + NetherBiome biome = getBiomeLocal(popPos.getX() - sx, popPos.getY(), popPos.getZ() - sz, random); + if (!isAir && !airUp && !airDown && random.nextInt(8) == 0) + type = StructureType.UNDER; + else { + if (popPos.getY() < 45 || !biome.hasCeilStructures() || random.nextBoolean()) // Floor + { + if (!isAir) { + while (!world.getBlockState(popPos).getMaterial().isReplaceable() && popPos.getY() > 1) { + popPos.setY(popPos.getY() - 1); + } + } + while (world.getBlockState(popPos.down()).getMaterial().isReplaceable() && popPos.getY() > 1) { + popPos.setY(popPos.getY() - 1); + } + } + else // Ceil + { + if (!isAir) { + while (!world.getBlockState(popPos).getMaterial().isReplaceable() && popPos.getY() > 1) { + popPos.setY(popPos.getY() + 1); + } + } + while (!BlocksHelper.isNetherGroundMagma(world.getBlockState(popPos.up())) && popPos.getY() < 127) { + popPos.setY(popPos.getY() + 1); + } + type = StructureType.CEIL; + } + } + biome = getBiomeLocal(popPos.getX() - sx, popPos.getY(), popPos.getZ() - sz, random); + if (world.getBlockState(popPos).getMaterial().isReplaceable()) { + if (type == StructureType.FLOOR) { + BlockState down = world.getBlockState(popPos.down()); + if (BlocksHelper.isNetherGroundMagma(down)) + biome.genFloorBuildings(world, popPos, random); + } + else if (type == StructureType.CEIL) { + BlockState up = world.getBlockState(popPos.up()); + if (BlocksHelper.isNetherGroundMagma(up)) { + biome.genCeilBuildings(world, popPos, random); + } + } + } + else + biome.genUnderBuildings(world, popPos, random); + } + + if (random.nextFloat() < lavaStructureDensity) { + popPos.setPos(sx + random.nextInt(16), 32, sz + random.nextInt(16)); + if (world.isAirBlock(popPos) && BlocksHelper.isLava(world.getBlockState(popPos.down()))) { + biome = getBiomeLocal(popPos.getX() - sx, popPos.getY(), popPos.getZ() - sz, random); + biome.genLavaBuildings(world, popPos, random); + } + } + + LIST_LAVA.clear(); + LIST_FLOOR.clear(); + LIST_WALL.clear(); + LIST_CEIL.clear(); + + int ex = sx + 16; + int ez = sz + 16; + + for (int x = 0; x < 16; x++) { + int wx = sx + x; + for (int z = 0; z < 16; z++) { + int wz = sz + z; + for (int y = 1; y < 126; y++) { + if (caves.isInCave(x, y, z)) + continue; + + biome = getBiomeLocal(x, y, z, random); + + popPos.setPos(wx, y, wz); + BlockState state = world.getBlockState(popPos); + boolean lava = BlocksHelper.isLava(state); + if (lava || BlocksHelper.isNetherGroundMagma(state) || state.getBlock() == Blocks.GRAVEL) { + if (!lava && ((state = world.getBlockState(popPos.up())).isAir() || !state.getMaterial().isOpaque() || !state.getMaterial().blocksMovement()) && state.getFluidState().isEmpty())// world.isAir(popPos.up())) + biome.genSurfColumn(world, popPos, random); + + if (((x + y + z) & 1) == 0 && random.nextFloat() < globalDensity && random.nextFloat() < biome.getPlantDensity()) { + // Ground Generation + if (world.isAirBlock(popPos.up())) { + if (lava) + LIST_LAVA.add(popPos.up()); + else + LIST_FLOOR.add(new BlockPos(popPos.up())); + } + + // Ceiling Generation + else if (world.isAirBlock(popPos.down())) { + LIST_CEIL.add(new BlockPos(popPos.down())); + } + + // Wall Generation + else { + boolean bNorth = world.isAirBlock(popPos.north()); + boolean bSouth = world.isAirBlock(popPos.south()); + boolean bEast = world.isAirBlock(popPos.east()); + boolean bWest = world.isAirBlock(popPos.west()); + if (bNorth || bSouth || bEast || bWest) { + BlockPos objPos = null; + if (bNorth) + objPos = popPos.north(); + else if (bSouth) + objPos = popPos.south(); + else if (bEast) + objPos = popPos.east(); + else + objPos = popPos.west(); + + if ((popPos.getX() >= sx) && (popPos.getX() < ex) && (popPos.getZ() >= sz) && (popPos.getZ() < ez)) { + boolean bDown = world.isAirBlock(objPos.down()); + boolean bUp = world.isAirBlock(objPos.up()); + + if (bDown && bUp) { + LIST_WALL.add(new BlockPos(objPos)); + } + } + } + } + } + if (random.nextFloat() < cincinnasiteDensity) + spawnOre(BlocksRegistry.CINCINNASITE_ORE.getDefaultState(), world, popPos, random, 6, 14); + if (random.nextFloat() < rubyDensity) + spawnOre(BlocksRegistry.NETHER_RUBY_ORE.getDefaultState(), world, popPos, random, 1, 5); + if (random.nextFloat() < lapisDensity) + spawnOre(BlocksRegistry.NETHER_LAPIS_ORE.getDefaultState(), world, popPos, random, 1, 6); + } + } + } + } + + for (BlockPos pos : LIST_LAVA) { + if (world.isAirBlock(pos)) { + biome = getBiomeLocal(pos.getX() - sx, pos.getY(), pos.getZ() - sz, random); + if (biome != null) + biome.genLavaObjects(world, pos, random); + } + } + + for (BlockPos pos : LIST_FLOOR) + if (world.isAirBlock(pos)) { + biome = getBiomeLocal(pos.getX() - sx, pos.getY(), pos.getZ() - sz, random); + if (biome != null) + biome.genFloorObjects(world, pos, random); + } + + for (BlockPos pos : LIST_WALL) + if (world.isAirBlock(pos)) { + biome = getBiomeLocal(pos.getX() - sx, pos.getY(), pos.getZ() - sz, random); + if (biome != null) + biome.genWallObjects(world, pos, random); + } + + for (BlockPos pos : LIST_CEIL) + if (world.isAirBlock(pos)) { + biome = getBiomeLocal(pos.getX() - sx, pos.getY(), pos.getZ() - sz, random); + if (biome != null) + biome.genCeilObjects(world, pos, random); + } + } + + private static void makeLocalBiomes(WorldGenRegion world, int sx, int sz) { + MC_BIOMES.clear(); + for (int x = 0; x < 8; x++) { + popPos.setX(sx + (x << 1) + 2); + for (int y = 0; y < 64; y++) { + popPos.setY((y << 1) + 2); + for (int z = 0; z < 8; z++) { + popPos.setZ(sz + (z << 1) + 2); + Biome b = world.getBiome(popPos); + BIOMES[x][y][z] = NetherBiomesRegistry.getFromBiome(b); + MC_BIOMES.add(b); + } + } + } + } + + public static void prePopulate(WorldGenRegion world, int sx, int sz, Random random) { + makeLocalBiomes(world, sx, sz); + + if (hasCaves) { + popPos.setPos(sx, 0, sz); + caves.generate(world, popPos, random); + } + + if (hasCleaningPass) { + List pos = new ArrayList(); + BlockPos up; + BlockPos down; + BlockPos north; + BlockPos south; + BlockPos east; + BlockPos west; + for (int y = 32; y < 110; y++) { + popPos.setY(y); + for (int x = 0; x < 16; x++) { + popPos.setX(x | sx); + for (int z = 0; z < 16; z++) { + popPos.setZ(z | sz); + if (canReplace(world, popPos)) { + up = popPos.up(); + down = popPos.down(); + north = popPos.north(); + south = popPos.south(); + east = popPos.east(); + west = popPos.west(); + if (world.isAirBlock(north) && world.isAirBlock(south)) + pos.add(new BlockPos(popPos)); + else if (world.isAirBlock(east) && world.isAirBlock(west)) + pos.add(new BlockPos(popPos)); + else if (world.isAirBlock(up) && world.isAirBlock(down)) + pos.add(new BlockPos(popPos)); + else if (world.isAirBlock(popPos.north().east().down()) && world.isAirBlock(popPos.south().west().up())) + pos.add(new BlockPos(popPos)); + else if (world.isAirBlock(popPos.south().east().down()) && world.isAirBlock(popPos.north().west().up())) + pos.add(new BlockPos(popPos)); + else if (world.isAirBlock(popPos.north().west().down()) && world.isAirBlock(popPos.south().east().up())) + pos.add(new BlockPos(popPos)); + else if (world.isAirBlock(popPos.south().west().down()) && world.isAirBlock(popPos.north().east().up())) + pos.add(new BlockPos(popPos)); + } + } + } + } + for (BlockPos p : pos) { + BlocksHelper.setWithoutUpdate(world, p, AIR); + up = p.up(); + BlockState state = world.getBlockState(up); + if (!state.getBlock().isValidPosition(state, world, up)) + BlocksHelper.setWithoutUpdate(world, up, AIR); + } + } + + if (hasPaths) { + popPos.setPos(sx, 0, sz); + paths.generate(world, popPos, random); + } + } + + private static boolean canReplace(IWorld world, BlockPos pos) { + BlockState state = world.getBlockState(pos); + return BlocksHelper.isNetherGround(state) || state.getBlock() == Blocks.GRAVEL; + } + + private static void spawnOre(BlockState state, IWorld world, BlockPos pos, Random random, int minSize, int maxSize) { + int size = MHelper.randRange(minSize, maxSize, random); + for (int i = 0; i < size; i++) { + BlockPos local = pos.add(random.nextInt(3), random.nextInt(3), random.nextInt(3)); + if (BlocksHelper.isNetherrack(world.getBlockState(local))) { + BlocksHelper.setWithoutUpdate(world, local, state); + } + } + } + + public static void cleaningPass(IWorld world, int sx, int sz) { + if (hasFixPass) { + fixBlocks(world, sx, 30, sz, sx + 15, 110, sz + 15); + } + } + + private static void fixBlocks(IWorld world, int x1, int y1, int z1, int x2, int y2, int z2) { + // List lavafalls = Lists.newArrayList(); + // List update = Lists.newArrayList(); + + for (int y = y1; y <= y2; y++) { + popPos.setY(y); + for (int x = x1; x <= x2; x++) { + popPos.setX(x); + for (int z = z1; z <= z2; z++) { + popPos.setZ(z); + + BlockState state = world.getBlockState(popPos); + + /* + * if (y > 32 && BlocksHelper.isLava(state) && + * !BlocksHelper.isLava(world.getBlockState(popPos.down()))) + * { + * + * if (world.isAir(popPos.down())) { Mutable p = new + * Mutable().set(popPos.down()); while(likeAir(world, p)) { + * lavafalls.add(p.toImmutable()); p.move(Direction.DOWN); } + * update.add(p.up()); } else { for(Direction dir: + * BlocksHelper.HORIZONTAL) { BlockPos start = + * popPos.offset(dir); if (likeAir(world, start)) { Mutable + * p = new Mutable().set(start); while(likeAir(world, p)) { + * lavafalls.add(p.toImmutable()); p.move(Direction.DOWN); } + * update.add(p.up()); } } } + * + * continue; } + */ + + if (!state.isValidPosition(world, popPos)) { + BlocksHelper.setWithoutUpdate(world, popPos, AIR); + continue; + } + + if (!state.isSolid() && world.getBlockState(popPos.up()).getBlock() == Blocks.NETHER_BRICKS) { + BlocksHelper.setWithoutUpdate(world, popPos, Blocks.NETHER_BRICKS.getDefaultState()); + continue; + } + + if (BlocksHelper.isLava(state) && world.isAirBlock(popPos.up()) && world.isAirBlock(popPos.down())) { + BlocksHelper.setWithoutUpdate(world, popPos, AIR); + continue; + } + + if (state.getBlock() == Blocks.NETHER_WART_BLOCK || state.getBlock() == Blocks.WARPED_WART_BLOCK) { + if (world.isAirBlock(popPos.down()) && world.isAirBlock(popPos.up()) && world.isAirBlock(popPos.north()) && world.isAirBlock(popPos.south()) && world.isAirBlock(popPos.east()) && world.isAirBlock(popPos.west())) + BlocksHelper.setWithoutUpdate(world, popPos, AIR); + continue; + } + + if (state.getBlock() instanceof BlockStalactite && !(state = world.getBlockState(popPos.down())).hasOpaqueCollisionShape(world, popPos.down()) && !(state.getBlock() instanceof BlockStalactite)) { + Mutable sp = new Mutable().setPos(popPos); + while (world.getBlockState(sp).getBlock() instanceof BlockStalactite) { + BlocksHelper.setWithoutUpdate(world, sp, AIR); + sp.offset(Direction.UP); + } + continue; + } + } + } + } + } + + public static HashSet getPopulateBiomes() { + return MC_BIOMES; + } +} diff --git a/src/main/java/redd90/betternether/world/BiomeChunk.java b/src/main/java/redd90/betternether/world/BiomeChunk.java new file mode 100644 index 0000000..0db06c1 --- /dev/null +++ b/src/main/java/redd90/betternether/world/BiomeChunk.java @@ -0,0 +1,55 @@ +package redd90.betternether.world; + +import java.util.Random; + +import redd90.betternether.biomes.NetherBiome; +import redd90.betternether.registry.NetherBiomesRegistry; + +public class BiomeChunk { + protected static final int WIDTH = 16; + private static final int SM_WIDTH = WIDTH >> 1; + private static final int MASK_A = SM_WIDTH - 1; + private static final int MASK_C = WIDTH - 1; + + private final int maxY; + private final int maskB; + private final NetherBiome[][][] biomes; + + public BiomeChunk(BiomeMap map, Random random) { + int sm_height = clampOne(map.maxHeight >> 1); + maskB = sm_height - 1; + maxY = map.maxHeight - 1; + NetherBiome[][][] PreBio = new NetherBiome[sm_height][SM_WIDTH][SM_WIDTH]; + biomes = new NetherBiome[map.maxHeight][WIDTH][WIDTH]; + + for (int y = 0; y < sm_height; y++) + for (int x = 0; x < SM_WIDTH; x++) + for (int z = 0; z < SM_WIDTH; z++) + PreBio[y][x][z] = NetherBiomesRegistry.getBiome(random); + + for (int y = 0; y < map.maxHeight; y++) + for (int x = 0; x < WIDTH; x++) + for (int z = 0; z < WIDTH; z++) + biomes[y][x][z] = PreBio[offsetY(y, random)][offsetXZ(x, random)][offsetXZ(z, random)].getSubBiome(random); + } + + public NetherBiome getBiome(int x, int y, int z) { + return biomes[clamp(y)][x & MASK_C][z & MASK_C]; + } + + private int offsetXZ(int x, Random random) { + return ((x + random.nextInt(2)) >> 1) & MASK_A; + } + + private int offsetY(int y, Random random) { + return ((y + random.nextInt(2)) >> 1) & maskB; + } + + private int clamp(int y) { + return y < 0 ? 0 : y > maxY ? maxY : y; + } + + private int clampOne(int x) { + return x < 1 ? 1 : x; + } +} diff --git a/src/main/java/redd90/betternether/world/BiomeMap.java b/src/main/java/redd90/betternether/world/BiomeMap.java new file mode 100644 index 0000000..603f2a9 --- /dev/null +++ b/src/main/java/redd90/betternether/world/BiomeMap.java @@ -0,0 +1,114 @@ +package redd90.betternether.world; + +import java.util.HashMap; + +import net.minecraft.util.SharedSeedRandom; +import net.minecraft.util.math.ChunkPos; +import net.minecraft.util.math.MathHelper; +import redd90.betternether.biomes.NetherBiome; +import redd90.betternether.noise.OpenSimplexNoise; + +public class BiomeMap { + private static final HashMap MAPS = new HashMap(); + private static final SharedSeedRandom RANDOM = new SharedSeedRandom(); + + private final int sizeXZ; + private final int sizeY; + protected final int maxHeight; + private final int depth; + private final int size; + private final OpenSimplexNoise noiseX; + private final OpenSimplexNoise noiseY; + private final OpenSimplexNoise noiseZ; + private final boolean volumetric; + + public BiomeMap(long seed, int sizeXZ, int sizeY, boolean volumetric) { + MAPS.clear(); + RANDOM.setSeed(seed); + noiseX = new OpenSimplexNoise(RANDOM.nextLong()); + noiseY = new OpenSimplexNoise(RANDOM.nextLong()); + noiseZ = new OpenSimplexNoise(RANDOM.nextLong()); + this.sizeXZ = sizeXZ; + this.sizeY = sizeY; + this.volumetric = volumetric; + maxHeight = volumetric ? (int) Math.ceil(128F / sizeY) : 1; + + depth = (int) Math.ceil(Math.log(Math.max(sizeXZ, sizeY)) / Math.log(2)) - 2; + size = 1 << depth; + } + + public void clearCache() { + if (MAPS.size() > 16) + MAPS.clear(); + } + + private NetherBiome getRawBiome(int bx, int by, int bz) { + double x = bx * size / sizeXZ; + double y = volumetric ? by * size / sizeY : 0; + double z = bz * size / sizeXZ; + double nx = x; + double ny = y; + double nz = z; + + double px = bx * 0.2; + double py = by * 0.2; + double pz = bz * 0.2; + + for (int i = 0; i < depth; i++) { + nx = (x + noiseX.eval(px, pz)) / 2F; + nz = (z + noiseZ.eval(px, pz)) / 2F; + + if (volumetric) { + nz = (z + noiseY.eval(px, pz)) / 2F; + + y = ny; + py = py / 2 + i; + } + + x = nx; + z = nz; + + px = px / 2 + i; + pz = pz / 2 + i; + } + + ChunkPos cpos = new ChunkPos( + (int) Math.floor((double) x / BiomeChunk.WIDTH), + (int) Math.floor((double) z / BiomeChunk.WIDTH)); + BiomeChunk chunk = MAPS.get(cpos); + if (chunk == null) { + RANDOM.setBaseChunkSeed(cpos.x, cpos.z); + chunk = new BiomeChunk(this, RANDOM); + MAPS.put(cpos, chunk); + } + + return chunk.getBiome((int) x, MathHelper.clamp((int) y, 0, maxHeight - 1), (int) z); + } + + public NetherBiome getBiome(int x, int y, int z) { + NetherBiome biome = getRawBiome(x, y > 30 ? y : 30, z); + + if (biome.hasEdge() || (biome.hasParentBiome() && biome.getParentBiome().hasEdge())) { + NetherBiome search = biome; + if (biome.hasParentBiome()) { + search = biome.getParentBiome(); + } + int d = (int) Math.ceil(search.getEdgeSize() / 4F) << 2; + + boolean edge = !search.isSame(getRawBiome(x + d, y, z)); + edge = edge || !search.isSame(getRawBiome(x - d, y, z)); + edge = edge || !search.isSame(getRawBiome(x, y, z + d)); + edge = edge || !search.isSame(getRawBiome(x, y, z - d)); + edge = edge || !search.isSame(getRawBiome(x - 1, y, z - 1)); + edge = edge || !search.isSame(getRawBiome(x - 1, y, z + 1)); + edge = edge || !search.isSame(getRawBiome(x + 1, y, z - 1)); + edge = edge || !search.isSame(getRawBiome(x + 1, y, z + 1)); + + if (edge) { + biome = search.getEdge(); + } + } + + return biome; + } +} diff --git a/src/main/java/redd90/betternether/world/NetherBiomeProvider.java b/src/main/java/redd90/betternether/world/NetherBiomeProvider.java new file mode 100644 index 0000000..443f5c8 --- /dev/null +++ b/src/main/java/redd90/betternether/world/NetherBiomeProvider.java @@ -0,0 +1,80 @@ +package redd90.betternether.world; + +import java.util.List; +import com.google.common.collect.Lists; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; + +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.registry.Registry; +import net.minecraft.util.registry.RegistryLookupCodec; +import net.minecraft.world.biome.Biome; +import net.minecraft.world.biome.Biome.Category; +import net.minecraft.world.biome.provider.BiomeProvider; +import redd90.betternether.BetterNether; +import redd90.betternether.biomes.NetherBiome; +import redd90.betternether.registry.NetherBiomesRegistry; + +public class NetherBiomeProvider extends BiomeProvider { + public static final Codec CODEC = RecordCodecBuilder.create((instance) -> { + return instance.group(RegistryLookupCodec.getLookUpCodec(Registry.BIOME_KEY).forGetter((theEndBiomeSource) -> { + return theEndBiomeSource.biomeRegistry; + }), Codec.LONG.fieldOf("seed").stable().forGetter((theEndBiomeSource) -> { + return theEndBiomeSource.seed; + })).apply(instance, instance.stable(NetherBiomeProvider::new)); + }); + private BiomeMap map; + private final long seed; + private final Registry biomeRegistry; + + public NetherBiomeProvider(Registry biomeRegistry, long seed) { + super(getBiomes(biomeRegistry)); + this.seed = seed; + this.map = new BiomeMap(seed, BNWorldGenerator.biomeSizeXZ, BNWorldGenerator.biomeSizeY, BNWorldGenerator.volumetric); + this.biomeRegistry = biomeRegistry; + NetherBiomesRegistry.mapBiomes(biomeRegistry); + /* + if (Configs.GENERATOR.getBoolean("generator.world.cities", "generate", true)) { + this.biomes.forEach((biome) -> { + GenerationSettingsAccessor accessor = (GenerationSettingsAccessor) biome.getGenerationSettings(); + List>> structures = Lists.newArrayList(accessor.getStructureFeatures()); + structures.add(() -> { return BNWorldGenerator.CITY_CONFIGURED; }); + accessor.setStructureFeatures(structures); + }); + } + */ + } + + private static List getBiomes(Registry biomeRegistry) { + List result = Lists.newArrayList(); + biomeRegistry.forEach((biome) -> { + if (biome.getCategory() == Category.NETHER) { + result.add(biome); + } + }); + return result; + } + + @Override + public Biome getNoiseBiome(int biomeX, int biomeY, int biomeZ) { + NetherBiome netherBiome = map.getBiome(biomeX << 2, biomeY << 2, biomeZ << 2); + if (biomeX == 0 && biomeZ == 0) { + map.clearCache(); + } + return netherBiome.getActualBiome(); + } + + @Override + public BiomeProvider getBiomeProvider(long seed) { + return new NetherBiomeProvider(biomeRegistry, seed); + } + + @Override + protected Codec getBiomeProviderCodec() { + return CODEC; + } + + public static void register() { + Registry.register(Registry.BIOME_PROVIDER_CODEC, new ResourceLocation(BetterNether.MOD_ID, "nether_biome_source"), CODEC); + } +} diff --git a/src/main/java/redd90/betternether/world/structures/CityFeature.java b/src/main/java/redd90/betternether/world/structures/CityFeature.java new file mode 100644 index 0000000..a3dcf9b --- /dev/null +++ b/src/main/java/redd90/betternether/world/structures/CityFeature.java @@ -0,0 +1,96 @@ +package redd90.betternether.world.structures; + +import java.util.List; + +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.MutableBoundingBox; +import net.minecraft.util.registry.DynamicRegistries; +import net.minecraft.world.biome.Biome; +import net.minecraft.world.gen.ChunkGenerator; +import net.minecraft.world.gen.FlatChunkGenerator; +import net.minecraft.world.gen.GenerationStage; +import net.minecraft.world.gen.Heightmap.Type; +import net.minecraft.world.gen.feature.NoFeatureConfig; +import net.minecraft.world.gen.feature.structure.Structure; +import net.minecraft.world.gen.feature.structure.StructureStart; +import net.minecraft.world.gen.feature.template.TemplateManager; +import redd90.betternether.world.structures.city.CityGenerator; +import redd90.betternether.world.structures.city.palette.Palettes; +import redd90.betternether.world.structures.piece.CavePiece; +import redd90.betternether.world.structures.piece.CityPiece; + + +public class CityFeature extends Structure { + private static CityGenerator generator; + public static final int RADIUS = 8 * 8; + + public CityFeature() { + super(NoFeatureConfig.field_236558_a_); + } + + public static void initGenerator() { + generator = new CityGenerator(); + } + + @Override + public IStartFactory getStartFactory() { + return CityFeature.CityStart::new; + } + + public static class CityStart extends StructureStart { + public CityStart(Structure structureFeature, int chunkX, int chunkZ, MutableBoundingBox blockBox, int i, long l) { + super(structureFeature, chunkX, chunkZ, blockBox, i, l); + } + + @Override + public void func_230364_a_(DynamicRegistries dynamicRegistryManager, ChunkGenerator chunkGenerator, TemplateManager structureManager, int x, int z, Biome biome, NoFeatureConfig featureConfig) { + int px = (x << 4) | 8; + int pz = (z << 4) | 8; + int y = 40; + if (chunkGenerator instanceof FlatChunkGenerator) { + y = chunkGenerator.getHeight(px, pz, Type.WORLD_SURFACE); + } + + BlockPos center = new BlockPos(px, y, pz); + + // CityPalette palette = Palettes.getRandom(random); + List buildings = generator.generate(center, this.rand, Palettes.EMPTY); + MutableBoundingBox cityBox = MutableBoundingBox.getNewBoundingBox(); + for (CityPiece p : buildings) + cityBox.expandTo(p.getBoundingBox()); + + int d1 = Math.max((center.getX() - cityBox.minX), (cityBox.maxX - center.getX())); + int d2 = Math.max((center.getZ() - cityBox.minZ), (cityBox.maxZ - center.getZ())); + int radius = Math.max(d1, d2); + if (radius / 2 + center.getY() < cityBox.maxY) { + radius = (cityBox.maxY - center.getY()) / 2; + } + + if (!(chunkGenerator instanceof FlatChunkGenerator)) { + CavePiece cave = new CavePiece(center, radius, rand); + this.components.add(cave); + this.components.addAll(buildings); + this.bounds = cave.getBoundingBox(); + } + else { + this.components.addAll(buildings); + this.recalculateStructureSize(); + } + + /* + * for (CityPiece p: buildings) { int count = + * p.getBoundingBox().getBlockCountX() * + * p.getBoundingBox().getBlockCountY() * + * p.getBoundingBox().getBlockCountZ(); if (count > 0) { count = + * random.nextInt(count / 512); for (int i = 0; i < count; i++) + * this.children.add(new DestructionPiece(p.getBoundingBox(), + * random)); } } + */ + + this.bounds.minX -= 12; + this.bounds.maxX += 12; + this.bounds.minZ -= 12; + this.bounds.maxZ += 12; + } + } +} diff --git a/src/main/java/redd90/betternether/world/structures/city/BoundingBox.java b/src/main/java/redd90/betternether/world/structures/city/BoundingBox.java new file mode 100644 index 0000000..30c38d4 --- /dev/null +++ b/src/main/java/redd90/betternether/world/structures/city/BoundingBox.java @@ -0,0 +1,90 @@ +package redd90.betternether.world.structures.city; + +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; + +public class BoundingBox { + int x1, x2, z1, z2; + + public BoundingBox(int x1, int z1, int x2, int z2) { + this.x1 = x1; + this.x2 = x2; + this.z1 = z1; + this.z2 = z2; + } + + public BoundingBox(BlockPos size, int offsetX, int offsetZ) { + this.x1 = offsetX; + this.x2 = x1 + size.getX(); + this.z1 = offsetZ; + this.z2 = z1 + size.getZ(); + } + + public BoundingBox(BlockPos size) { + this.x1 = 0; + this.x2 = size.getX(); + this.z1 = 0; + this.z2 = size.getZ(); + } + + public boolean isColliding(BoundingBox bb) { + boolean colX = (bb.x1 < x2) && (x1 < bb.x2); + boolean colZ = (bb.z1 < z2) && (z1 < bb.z2); + return colX && colZ; + } + + public BoundingBox offset(BlockPos offset) { + return new BoundingBox(x1 + offset.getX(), z1 + offset.getZ(), x2 + offset.getX(), z2 + offset.getZ()); + } + + public BoundingBox offsetNegative(BlockPos offset) { + return new BoundingBox(x1 - offset.getX(), z1 - offset.getZ(), x2 - offset.getX(), z2 - offset.getZ()); + } + + public String toString() { + return x1 + " " + z1 + " " + x2 + " " + z2; + } + + public void rotate(Rotation rotation) { + BlockPos start = new BlockPos(x1, 0, z1); + BlockPos end = new BlockPos(x2, 0, z2); + start = start.rotate(rotation); + end = end.rotate(rotation); + int nx1 = Math.min(start.getX(), end.getX()); + int nx2 = Math.max(start.getX(), end.getX()); + int nz1 = Math.min(start.getZ(), end.getZ()); + int nz2 = Math.max(start.getZ(), end.getZ()); + x1 = 0; + z1 = 0; + x2 = nx2 - nx1; + z2 = nz2 - nz1; + } + + public BlockPos getCenter() { + return new BlockPos((x2 + x1) * 0.5, 0, (z2 + z1) * 0.5); + } + + public int getSideX() { + return x2 - x1; + } + + public int getSideZ() { + return z2 - z1; + } + + public int getMinX() { + return x1; + } + + public int getMaxX() { + return x2; + } + + public int getMinZ() { + return z1; + } + + public int getMaxZ() { + return z2; + } +} diff --git a/src/main/java/redd90/betternether/world/structures/city/BuildingStructureProcessor.java b/src/main/java/redd90/betternether/world/structures/city/BuildingStructureProcessor.java new file mode 100644 index 0000000..465c6a7 --- /dev/null +++ b/src/main/java/redd90/betternether/world/structures/city/BuildingStructureProcessor.java @@ -0,0 +1,153 @@ +package redd90.betternether.world.structures.city; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.ContainerBlock; +import net.minecraft.block.DoorBlock; +import net.minecraft.block.FenceBlock; +import net.minecraft.block.FenceGateBlock; +import net.minecraft.block.PaneBlock; +import net.minecraft.block.PressurePlateBlock; +import net.minecraft.block.RotatedPillarBlock; +import net.minecraft.block.SlabBlock; +import net.minecraft.block.SoundType; +import net.minecraft.block.StairsBlock; +import net.minecraft.block.StructureBlock; +import net.minecraft.block.TrapDoorBlock; +import net.minecraft.block.WallBlock; +import net.minecraft.util.Direction; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IWorldReader; +import net.minecraft.world.gen.feature.template.IStructureProcessorType; +import net.minecraft.world.gen.feature.template.PlacementSettings; +import net.minecraft.world.gen.feature.template.StructureProcessor; +import net.minecraft.world.gen.feature.template.Template; +import net.minecraft.world.gen.feature.template.Template.BlockInfo; +import net.minecraftforge.registries.ForgeRegistries; +import redd90.betternether.blocks.BNPlanks; +import redd90.betternether.blocks.BlockBNPot; +import redd90.betternether.blocks.BlockPottedPlant; +import redd90.betternether.blocks.BlockSmallLantern; +import redd90.betternether.world.structures.city.palette.CityPalette; + +public class BuildingStructureProcessor extends StructureProcessor { + protected final CityPalette palette; + + public BuildingStructureProcessor(CityPalette palette) { + this.palette = palette; + } + + private BlockInfo setState(BlockState state, BlockInfo info) { + return new BlockInfo(info.pos, state, info.nbt); + } + + @Override + public BlockInfo process(IWorldReader worldView, BlockPos pos, BlockPos blockPos, BlockInfo structureBlockInfo, BlockInfo structureBlockInfo2, PlacementSettings structurePlacementData, Template template) { + BlockState state = structureBlockInfo.state; + + if (state.isAir()) + return structureBlockInfo2; + + Block block = state.getBlock(); + String name = ForgeRegistries.BLOCKS.getKey(block).getPath(); + + if (name.startsWith("roof_tile")) { + if (block instanceof StairsBlock) { + return setState(palette.getRoofStair(state), structureBlockInfo2); + } + else if (block instanceof SlabBlock) { + return setState(palette.getRoofSlab(state), structureBlockInfo2); + } + return setState(palette.getRoofBlock(state), structureBlockInfo2); + } + else if (name.contains("nether") && name.contains("brick")) { + if (block instanceof StairsBlock) { + return setState(palette.getFoundationStair(state), structureBlockInfo2); + } + else if (block instanceof SlabBlock) { + return setState(palette.getFoundationSlab(state), structureBlockInfo2); + } + else if (block instanceof WallBlock) { + return setState(palette.getFoundationWall(state), structureBlockInfo2); + } + return setState(palette.getFoundationBlock(state), structureBlockInfo2); + } + else if (name.contains("plank") || name.contains("reed") || block instanceof BNPlanks) { + if (block instanceof StairsBlock) { + return setState(palette.getPlanksStair(state), structureBlockInfo2); + } + else if (block instanceof SlabBlock) { + return setState(palette.getPlanksSlab(state), structureBlockInfo2); + } + return setState(palette.getPlanksBlock(state), structureBlockInfo2); + } + else if (name.contains("glass") || name.contains("frame")) { + if (block instanceof PaneBlock) + return setState(palette.getGlassPane(state), structureBlockInfo2); + return setState(palette.getGlassBlock(state), structureBlockInfo2); + } + else if (block instanceof RotatedPillarBlock) { + if (name.contains("log")) { + return setState(palette.getLog(state), structureBlockInfo2); + } + return setState(palette.getBark(state), structureBlockInfo2); + } + else if (block instanceof StairsBlock) { + return setState(palette.getStoneStair(state), structureBlockInfo2); + } + else if (block instanceof SlabBlock) { + return setState(palette.getStoneSlab(state), structureBlockInfo2); + } + else if (block instanceof WallBlock) { + return setState(palette.getWall(state), structureBlockInfo2); + } + else if (block instanceof FenceBlock) { + return setState(palette.getFence(state), structureBlockInfo2); + } + else if (block instanceof FenceGateBlock) { + return setState(palette.getGate(state), structureBlockInfo2); + } + else if (block instanceof DoorBlock) { + return setState(palette.getDoor(state), structureBlockInfo2); + } + else if (block instanceof TrapDoorBlock) { + return setState(palette.getTrapdoor(state), structureBlockInfo2); + } + else if (block instanceof PressurePlateBlock) { + if (block.getSoundType(state) == SoundType.WOOD) + return setState(palette.getWoodenPlate(state), structureBlockInfo2); + else + return setState(palette.getStonePlate(state), structureBlockInfo2); + } + else if (block instanceof BlockSmallLantern) { + if (state.get(BlockSmallLantern.FACING) == Direction.UP) + return setState(palette.getCeilingLight(state), structureBlockInfo2); + else if (state.get(BlockSmallLantern.FACING) != Direction.DOWN) + return setState(palette.getWallLight(state), structureBlockInfo2); + else + return setState(palette.getFloorLight(state), structureBlockInfo2); + } + else if (block instanceof BlockBNPot) { + return setState(palette.getPot(state), structureBlockInfo2); + } + else if (block instanceof BlockPottedPlant) { + return setState(palette.getPlant(state), structureBlockInfo2); + } + else if (block instanceof StructureBlock) { + return setState(Blocks.AIR.getDefaultState(), structureBlockInfo2); + } + else if (!name.contains("nether") && !name.contains("mycelium") && state.hasOpaqueCollisionShape(worldView, structureBlockInfo.pos) && state.isSolid() && !(state.getBlock() instanceof ContainerBlock)) { + if (state.getLightValue() > 0) + return setState(palette.getGlowingBlock(state), structureBlockInfo2); + return setState(palette.getStoneBlock(state), structureBlockInfo2); + } + + return structureBlockInfo2; + } + + @Override + protected IStructureProcessorType getType() { + return IStructureProcessorType.NOP; + } +} diff --git a/src/main/java/redd90/betternether/world/structures/city/CityGenerator.java b/src/main/java/redd90/betternether/world/structures/city/CityGenerator.java new file mode 100644 index 0000000..df0039e --- /dev/null +++ b/src/main/java/redd90/betternether/world/structures/city/CityGenerator.java @@ -0,0 +1,176 @@ +package redd90.betternether.world.structures.city; + +import java.util.ArrayList; +import java.util.List; +import java.util.Random; + +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import redd90.betternether.world.structures.city.palette.CityPalette; +import redd90.betternether.world.structures.piece.CityPiece; + +public class CityGenerator { + private List centers = new ArrayList(); + private List buildings = new ArrayList(); + private List roadEnds = new ArrayList(); + private List total = new ArrayList(); + private List bounds = new ArrayList(); + private List ends = new ArrayList(); + private List add = new ArrayList(); + private List rem = new ArrayList(); + + public CityGenerator() { + addBuildingToList("city_center_01", -10, centers); + addBuildingToList("city_center_02", -10, centers); + addBuildingToList("city_center_03", -10, centers); + addBuildingToList("city_center_04", -10, centers); + + addBuildingToList("city_library_01", buildings); + addBuildingToList("city_library_02", buildings); + + addBuildingToList("city_tower_01", buildings); + addBuildingToList("city_tower_02", buildings); + addBuildingToList("city_tower_03", buildings); + addBuildingToList("city_tower_04", buildings); + + addBuildingToList("city_building_01", buildings); + addBuildingToList("city_building_02", buildings); + addBuildingToList("city_building_03", buildings); + addBuildingToList("city_building_04", buildings); + addBuildingToList("city_building_05", buildings); + addBuildingToList("city_building_06", buildings); + addBuildingToList("city_building_07", buildings); + addBuildingToList("city_building_08", buildings); + addBuildingToList("city_building_09", buildings); + addBuildingToList("city_building_10", buildings); + addBuildingToList("city_building_11", buildings); + addBuildingToList("city_building_12", buildings); + addBuildingToList("city_building_13", buildings); + addBuildingToList("city_building_14", buildings); + addBuildingToList("city_building_15", buildings); + + addBuildingToList("city_enchanter_01", buildings); + addBuildingToList("city_enchanter_02", buildings); + + addBuildingToList("city_park_01", buildings); + addBuildingToList("city_park_02", buildings); + addBuildingToList("city_park_03", buildings); + + addBuildingToList("city_bridge_01", buildings); + + addBuildingToList("ramp_01", buildings); + + addBuildingToList("road_cross_01", buildings); + + addBuildingToList("road_end_01", roadEnds); + addBuildingToList("road_end_02", -2, roadEnds); + + total.addAll(centers); + total.addAll(buildings); + total.addAll(roadEnds); + } + + private void addBuildingToList(String name, List buildings) { + addBuildingToList(name, 0, buildings); + } + + private void addBuildingToList(String name, int offsetY, List buildings) { + StructureCityBuilding building = new StructureCityBuilding("city/" + name, offsetY); + buildings.add(building); + buildings.add(building.getRotated(Rotation.CLOCKWISE_90)); + buildings.add(building.getRotated(Rotation.CLOCKWISE_180)); + buildings.add(building.getRotated(Rotation.COUNTERCLOCKWISE_90)); + } + + private void placeCenterBuilding(BlockPos pos, StructureCityBuilding building, ArrayList city, Random random, CityPalette palette) { + BoundingBox bb = building.getBoungingBox().offset(pos); + bounds.add(bb); + city.add(new CityPiece(building, pos.add(0, building.getYOffset(), 0), random.nextInt(), palette)); + for (int i = 0; i < building.getEndsCount(); i++) + ends.add(pos.add(building.getOffsettedPos(i).add(0, building.getYOffset(), 0))); + } + + private void attachBuildings(Random random, ArrayList city, CityPalette palette) { + for (BlockPos pos : ends) { + boolean generate = true; + for (int n = 0; n < 8 && generate; n++) { + int b = random.nextInt(buildings.size() >> 2) << 2; + for (int r = 0; r < 4 && generate; r++) { + StructureCityBuilding building = buildings.get(b | r); + int index = random.nextInt(building.getEndsCount()); + BlockPos offset = building.getPos(index); + BoundingBox bb = building.getBoungingBox().offset(pos).offsetNegative(offset); + if (noCollisions(bb)) { + boolean validHeight = true; + BlockPos npos = new BlockPos(bb.x1, pos.getY() - offset.getY() + building.getYOffset(), bb.z1); + for (int i = 0; i < building.getEndsCount(); i++) + if (i != index) + if (npos.getY() + building.getOffsettedPos(i).getY() < 32) { + validHeight = false; + break; + } + if (validHeight) { + bounds.add(bb); + rem.add(pos); + for (int i = 0; i < building.getEndsCount(); i++) + if (i != index) + add.add(npos.add(building.getOffsettedPos(i))); + city.add(new CityPiece(building, npos, random.nextInt(), palette)); + generate = false; + } + } + } + } + } + ends.removeAll(rem); + ends.addAll(add); + rem.clear(); + add.clear(); + } + + private void closeRoads(ArrayList city, Random random, CityPalette palette) { + for (BlockPos pos : ends) { + for (int n = 0; n < roadEnds.size(); n++) { + StructureCityBuilding building = roadEnds.get(n); + BlockPos offset = building.getPos(0); + BoundingBox bb = building.getBoungingBox().offset(pos).offsetNegative(offset); + if (noCollisions(bb)) { + BlockPos npos = new BlockPos(bb.x1, pos.getY() - offset.getY() + building.getYOffset(), bb.z1); + bounds.add(bb); + city.add(new CityPiece(building, npos, random.nextInt(), palette)); + break; + } + } + } + ends.clear(); + bounds.clear(); + rem.clear(); + add.clear(); + } + + public ArrayList generate(BlockPos pos, Random random, CityPalette palette) { + ArrayList city = new ArrayList(); + placeCenterBuilding(pos, centers.get(random.nextInt(centers.size())), city, random, palette); + + float rnd = random.nextFloat(); + rnd *= rnd; + rnd *= rnd; + int iterations = (int) Math.round(2 + rnd * 2); + + for (int i = 0; i < iterations; i++) + attachBuildings(random, city, palette); + closeRoads(city, random, palette); + return city; + } + + private boolean noCollisions(BoundingBox bb) { + for (BoundingBox b : bounds) + if (bb.isColliding(b)) + return false; + return true; + } + + public List getBuildings() { + return total; + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/world/structures/city/StructureCityBuilding.java b/src/main/java/redd90/betternether/world/structures/city/StructureCityBuilding.java new file mode 100644 index 0000000..e86d2b7 --- /dev/null +++ b/src/main/java/redd90/betternether/world/structures/city/StructureCityBuilding.java @@ -0,0 +1,197 @@ +package redd90.betternether.world.structures.city; + +import java.util.List; +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.util.Direction; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.MutableBoundingBox; +import net.minecraft.world.IServerWorld; +import net.minecraft.world.gen.feature.template.PlacementSettings; +import net.minecraft.world.gen.feature.template.StructureProcessor; +import net.minecraft.world.gen.feature.template.Template; +import net.minecraft.world.gen.feature.template.Template.BlockInfo; +import redd90.betternether.structures.StructureNBT; + + +public class StructureCityBuilding extends StructureNBT { + protected static final BlockState AIR = Blocks.AIR.getDefaultState(); + + private BoundingBox bb; + public BlockPos[] ends; + private Direction[] dirs; + private BlockPos rotationOffset; + private int offsetY; + + public StructureCityBuilding(String structure) { + super(structure); + this.offsetY = 0; + init(); + } + + public StructureCityBuilding(String structure, int offsetY) { + super(structure); + this.offsetY = offsetY; + init(); + } + + protected StructureCityBuilding(ResourceLocation location, Template structure) { + super(location, structure); + init(); + } + + private void init() { + BlockPos size = structure.getSize(); + bb = new BoundingBox(size); + List map = structure.func_215386_a(BlockPos.ZERO, new PlacementSettings(), Blocks.STRUCTURE_BLOCK, false); + ends = new BlockPos[map.size()]; + dirs = new Direction[map.size()]; + int i = 0; + BlockPos center = new BlockPos(size.getX() >> 1, size.getY(), size.getZ() >> 1); + for (BlockInfo info : map) { + ends[i] = info.pos; + dirs[i++] = getDir(info.pos.add(-center.getX(), 0, -center.getZ())); + } + rotationOffset = new BlockPos(0, 0, 0); + rotation = Rotation.NONE; + } + + private Direction getDir(BlockPos pos) { + int ax = Math.abs(pos.getX()); + int az = Math.abs(pos.getZ()); + int mx = Math.max(ax, az); + if (mx == ax) { + if (pos.getX() > 0) + return Direction.EAST; + else + return Direction.WEST; + } + else { + if (pos.getZ() > 0) + return Direction.SOUTH; + else + return Direction.NORTH; + } + } + + public BoundingBox getBoungingBox() { + return bb; + } + + protected Rotation mirrorRotation(Rotation r) { + switch (r) { + case CLOCKWISE_90: + return Rotation.COUNTERCLOCKWISE_90; + default: + return r; + } + } + + public void placeInChunk(IServerWorld world, BlockPos pos, MutableBoundingBox boundingBox, StructureProcessor paletteProcessor) { + BlockPos p = pos.add(rotationOffset); + structure.func_237144_a_(world, p, new PlacementSettings() + .setRotation(rotation) + .setMirror(mirror) + .setBoundingBox(boundingBox) + .addProcessor(paletteProcessor), + world.getRandom()); + } + + public BlockPos[] getEnds() { + return ends; + } + + public int getEndsCount() { + return ends.length; + } + + public BlockPos getOffsettedPos(int index) { + return ends[index].offset(dirs[index]); + } + + public BlockPos getPos(int index) { + return ends[index]; + } + + public StructureCityBuilding getRotated(Rotation rotation) { + StructureCityBuilding building = this.clone(); + building.rotation = rotation; + building.rotationOffset = building.structure.getSize().rotate(rotation); + int x = building.rotationOffset.getX(); + int z = building.rotationOffset.getZ(); + if (x < 0) + x = -x - 1; + else + x = 0; + if (z < 0) + z = -z - 1; + else + z = 0; + building.rotationOffset = new BlockPos(x, 0, z); + for (int i = 0; i < building.dirs.length; i++) { + building.dirs[i] = rotated(building.dirs[i], rotation); + building.ends[i] = building.ends[i].rotate(rotation).add(building.rotationOffset); + } + building.bb.rotate(rotation); + building.offsetY = this.offsetY; + return building; + } + + public StructureCityBuilding getRandomRotated(Random random) { + return getRotated(Rotation.values()[random.nextInt(4)]); + } + + public StructureCityBuilding clone() { + return new StructureCityBuilding(location, structure); + } + + private Direction rotated(Direction dir, Rotation rotation) { + Direction f; + switch (rotation) { + case CLOCKWISE_90: + f = dir.rotateY(); + break; + case CLOCKWISE_180: + f = dir.getOpposite(); + break; + case COUNTERCLOCKWISE_90: + f = dir.rotateYCCW(); + break; + default: + f = dir; + break; + } + return f; + } + + public int getYOffset() { + return offsetY; + } + + public Rotation getRotation() { + return rotation; + } + + /* + * private static StructureProcessor makeProcessorReplace() { return new + * RuleStructureProcessor( ImmutableList.of( new StructureProcessorRule( new + * BlockMatchRuleTest(Blocks.STRUCTURE_BLOCK), AlwaysTrueRuleTest.INSTANCE, + * Blocks.AIR.getDefaultState() ) ) ); } + */ + + @Override + public MutableBoundingBox getBoundingBox(BlockPos pos) { + return structure.getMutableBoundingBox(new PlacementSettings().setRotation(this.rotation).setMirror(mirror), pos.add(rotationOffset)); + } + + @Override + public StructureCityBuilding setRotation(Rotation rotation) { + this.rotation = rotation; + rotationOffset = structure.getSize().rotate(rotation); + return this; + } +} diff --git a/src/main/java/redd90/betternether/world/structures/city/palette/CityPalette.java b/src/main/java/redd90/betternether/world/structures/city/palette/CityPalette.java new file mode 100644 index 0000000..b042723 --- /dev/null +++ b/src/main/java/redd90/betternether/world/structures/city/palette/CityPalette.java @@ -0,0 +1,534 @@ +package redd90.betternether.world.structures.city.palette; + +import java.util.ArrayList; +import java.util.List; +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.DoorBlock; +import net.minecraft.block.FenceBlock; +import net.minecraft.block.FenceGateBlock; +import net.minecraft.block.LanternBlock; +import net.minecraft.block.PaneBlock; +import net.minecraft.block.RotatedPillarBlock; +import net.minecraft.block.SlabBlock; +import net.minecraft.block.StairsBlock; +import net.minecraft.block.TrapDoorBlock; +import net.minecraft.block.WallBlock; +import net.minecraft.block.WallTorchBlock; +import net.minecraft.util.Direction; +import net.minecraftforge.registries.ForgeRegistries; +import redd90.betternether.blocks.BlockPottedPlant; +import redd90.betternether.blocks.BlockPottedPlant.PottedPlantShape; +import redd90.betternether.blocks.BlockSmallLantern; +import redd90.betternether.registry.BlocksRegistry; + +public class CityPalette { + private static final Random RANDOM = new Random(); + private final String name; + + private final List foundationBlocks = new ArrayList(); + private final List foundationSlabs = new ArrayList(); + private final List foundationStairs = new ArrayList(); + private final List foundationWalls = new ArrayList(); + + private final List roofBlocks = new ArrayList(); + private final List roofSlabs = new ArrayList(); + private final List roofStairs = new ArrayList(); + + private final List planksBlocks = new ArrayList(); + private final List planksSlabs = new ArrayList(); + private final List planksStairs = new ArrayList(); + + private final List fences = new ArrayList(); + private final List walls = new ArrayList(); + private final List gates = new ArrayList(); + + private final List logs = new ArrayList(); + private final List bark = new ArrayList(); + private final List stoneBlocks = new ArrayList(); + private final List stoneSlabs = new ArrayList(); + private final List stoneStairs = new ArrayList(); + + private final List glowingBlocks = new ArrayList(); + private final List wallLights = new ArrayList(); + private final List ceilingLights = new ArrayList(); + private final List floorLights = new ArrayList(); + + private final List doors = new ArrayList(); + private final List trapdoors = new ArrayList(); + private final List platesStone = new ArrayList(); + private final List platesWood = new ArrayList(); + + private final List glassBlocks = new ArrayList(); + private final List glassPanes = new ArrayList(); + + private final List pots = new ArrayList(); + + public CityPalette(String name) { + this.name = name; + } + + public String getName() { + return name; + } + + private CityPalette putBlocks(Block[] blocks, List list) { + for (Block b : blocks) + list.add(b); + return this; + } + + public CityPalette addFoundationBlocks(Block... blocks) { + return putBlocks(blocks, foundationBlocks); + } + + public CityPalette addFoundationSlabs(Block... blocks) { + return putBlocks(blocks, foundationSlabs); + } + + public CityPalette addFoundationStairs(Block... blocks) { + return putBlocks(blocks, foundationStairs); + } + + public CityPalette addFoundationWalls(Block... blocks) { + return putBlocks(blocks, foundationWalls); + } + + public CityPalette addRoofBlocks(Block... blocks) { + return putBlocks(blocks, roofBlocks); + } + + public CityPalette addRoofSlabs(Block... blocks) { + return putBlocks(blocks, roofSlabs); + } + + public CityPalette addRoofStairs(Block... blocks) { + return putBlocks(blocks, roofStairs); + } + + public CityPalette addPlanksBlocks(Block... blocks) { + return putBlocks(blocks, planksBlocks); + } + + public CityPalette addPlanksSlabs(Block... blocks) { + return putBlocks(blocks, planksSlabs); + } + + public CityPalette addPlanksStairs(Block... blocks) { + return putBlocks(blocks, planksStairs); + } + + public CityPalette addFences(Block... blocks) { + return putBlocks(blocks, fences); + } + + public CityPalette addWalls(Block... blocks) { + return putBlocks(blocks, walls); + } + + public CityPalette addGates(Block... blocks) { + return putBlocks(blocks, gates); + } + + public CityPalette addLogs(Block... blocks) { + return putBlocks(blocks, logs); + } + + public CityPalette addBark(Block... blocks) { + return putBlocks(blocks, bark); + } + + public CityPalette addStoneBlocks(Block... blocks) { + return putBlocks(blocks, stoneBlocks); + } + + public CityPalette addStoneSlabs(Block... blocks) { + return putBlocks(blocks, stoneSlabs); + } + + public CityPalette addStoneStairs(Block... blocks) { + return putBlocks(blocks, stoneStairs); + } + + public CityPalette addGlowingBlocks(Block... blocks) { + return putBlocks(blocks, glowingBlocks); + } + + public CityPalette addWallLights(Block... blocks) { + return putBlocks(blocks, wallLights); + } + + public CityPalette addCeilingLights(Block... blocks) { + return putBlocks(blocks, ceilingLights); + } + + public CityPalette addFloorLights(Block... blocks) { + return putBlocks(blocks, floorLights); + } + + public CityPalette addDoors(Block... blocks) { + return putBlocks(blocks, doors); + } + + public CityPalette addTrapdoors(Block... blocks) { + return putBlocks(blocks, trapdoors); + } + + public CityPalette addStonePlates(Block... blocks) { + return putBlocks(blocks, platesStone); + } + + public CityPalette addWoodPlates(Block... blocks) { + return putBlocks(blocks, platesWood); + } + + public CityPalette addGlassBlocks(Block... blocks) { + return putBlocks(blocks, glassBlocks); + } + + public CityPalette addGlassPanes(Block... blocks) { + return putBlocks(blocks, glassPanes); + } + + public CityPalette addPotsPanes(Block... blocks) { + return putBlocks(blocks, pots); + } + + private Block getRandomBlock(BlockState state, List list) { + if (list.isEmpty()) + return state.getBlock(); + else if (list.size() == 1) + return list.get(0); + + String seed = ForgeRegistries.BLOCKS.getKey(state.getBlock()).getPath(); + RANDOM.setSeed(seed.hashCode()); + return list.get(RANDOM.nextInt(list.size())); + } + + private BlockState getFullState(BlockState input, List list) { + if (list.isEmpty()) + return input; + else if (list.size() == 1) + return list.get(0).getDefaultState(); + else { + return getRandomBlock(input, list).getDefaultState(); + } + } + + private BlockState getSlabState(BlockState input, List list) { + if (list.isEmpty()) + return input; + else if (list.size() == 1) + return copySlab(input, list.get(0)); + else { + return copySlab(input, getRandomBlock(input, list)); + } + } + + private BlockState getStairState(BlockState input, List list) { + if (list.isEmpty()) + return input; + else if (list.size() == 1) + return copyStair(input, list.get(0)); + else { + return copyStair(input, getRandomBlock(input, list)); + } + } + + private BlockState copySlab(BlockState source, Block block) { + BlockState state = block.getDefaultState() + .with(SlabBlock.TYPE, source.get(SlabBlock.TYPE)) + .with(SlabBlock.WATERLOGGED, source.get(SlabBlock.WATERLOGGED)); + return state; + } + + private BlockState copyStair(BlockState source, Block block) { + BlockState state = block.getDefaultState() + .with(StairsBlock.FACING, source.get(StairsBlock.FACING)) + .with(StairsBlock.HALF, source.get(StairsBlock.HALF)) + .with(StairsBlock.SHAPE, source.get(StairsBlock.SHAPE)) + .with(StairsBlock.WATERLOGGED, source.get(StairsBlock.WATERLOGGED)); + return state; + } + + private BlockState copyWall(BlockState source, Block block) { + BlockState state = block.getDefaultState() + .with(WallBlock.WALL_HEIGHT_EAST, source.get(WallBlock.WALL_HEIGHT_EAST)) + .with(WallBlock.WALL_HEIGHT_NORTH, source.get(WallBlock.WALL_HEIGHT_NORTH)) + .with(WallBlock.WALL_HEIGHT_SOUTH, source.get(WallBlock.WALL_HEIGHT_SOUTH)) + .with(WallBlock.WALL_HEIGHT_WEST, source.get(WallBlock.WALL_HEIGHT_WEST)) + .with(WallBlock.UP, source.get(WallBlock.UP)) + .with(StairsBlock.WATERLOGGED, source.get(StairsBlock.WATERLOGGED)); + return state; + } + + private BlockState copyFence(BlockState source, Block block) { + BlockState state = block.getDefaultState() + .with(FenceBlock.EAST, source.get(FenceBlock.EAST)) + .with(FenceBlock.NORTH, source.get(FenceBlock.NORTH)) + .with(FenceBlock.SOUTH, source.get(FenceBlock.SOUTH)) + .with(FenceBlock.WEST, source.get(FenceBlock.WEST)) + .with(FenceBlock.WATERLOGGED, source.get(FenceBlock.WATERLOGGED)); + return state; + } + + private BlockState copyGate(BlockState source, Block block) { + BlockState state = block.getDefaultState() + .with(FenceGateBlock.IN_WALL, source.get(FenceGateBlock.IN_WALL)) + .with(FenceGateBlock.OPEN, source.get(FenceGateBlock.OPEN)) + .with(FenceGateBlock.POWERED, source.get(FenceGateBlock.POWERED)) + .with(FenceGateBlock.HORIZONTAL_FACING, source.get(FenceGateBlock.HORIZONTAL_FACING)); + return state; + } + + private BlockState copyPillar(BlockState source, Block block) { + BlockState state = block.getDefaultState() + .with(RotatedPillarBlock.AXIS, source.get(RotatedPillarBlock.AXIS)); + return state; + } + + private BlockState copyLanternWall(BlockState source, Block block) { + if (source.getBlock() instanceof BlockSmallLantern && !(block instanceof BlockSmallLantern)) { + Direction facing = source.get(BlockSmallLantern.FACING); + BlockState state = block.getDefaultState(); + if (block instanceof WallTorchBlock) { + return state.with(WallTorchBlock.HORIZONTAL_FACING, facing); + } + return state; + } + return source; + } + + private BlockState copyLanternCeiling(BlockState source, Block block) { + if (source.getBlock() instanceof BlockSmallLantern && !(block instanceof BlockSmallLantern)) { + BlockState state = block.getDefaultState(); + if (block instanceof LanternBlock) { + return state.with(LanternBlock.HANGING, true); + } + return state; + } + return source; + } + + private BlockState copyDoor(BlockState source, Block block) { + BlockState state = block.getDefaultState() + .with(DoorBlock.FACING, source.get(DoorBlock.FACING)) + .with(DoorBlock.HALF, source.get(DoorBlock.HALF)) + .with(DoorBlock.HINGE, source.get(DoorBlock.HINGE)) + .with(DoorBlock.OPEN, source.get(DoorBlock.OPEN)) + .with(DoorBlock.POWERED, source.get(DoorBlock.POWERED)); + return state; + } + + private BlockState copyTrapdoor(BlockState source, Block block) { + BlockState state = block.getDefaultState() + .with(TrapDoorBlock.HORIZONTAL_FACING, source.get(TrapDoorBlock.HORIZONTAL_FACING)) + .with(TrapDoorBlock.HALF, source.get(TrapDoorBlock.HALF)) + .with(TrapDoorBlock.OPEN, source.get(TrapDoorBlock.OPEN)) + .with(TrapDoorBlock.POWERED, source.get(TrapDoorBlock.POWERED)) + .with(TrapDoorBlock.WATERLOGGED, source.get(TrapDoorBlock.WATERLOGGED)); + return state; + } + + private BlockState copyPane(BlockState source, Block block) { + BlockState state = block.getDefaultState() + .with(PaneBlock.EAST, source.get(PaneBlock.EAST)) + .with(PaneBlock.NORTH, source.get(PaneBlock.NORTH)) + .with(PaneBlock.SOUTH, source.get(PaneBlock.SOUTH)) + .with(PaneBlock.WEST, source.get(PaneBlock.WEST)) + .with(PaneBlock.WATERLOGGED, source.get(PaneBlock.WATERLOGGED)); + return state; + } + + // Foundation + + public BlockState getFoundationBlock(BlockState input) { + return getFullState(input, foundationBlocks); + } + + public BlockState getFoundationSlab(BlockState input) { + return getSlabState(input, foundationSlabs); + } + + public BlockState getFoundationStair(BlockState input) { + return getStairState(input, foundationStairs); + } + + public BlockState getFoundationWall(BlockState input) { + if (foundationWalls.isEmpty()) + return input; + else if (foundationWalls.size() == 1) + return copyWall(input, foundationWalls.get(0)); + else { + return copyWall(input, getRandomBlock(input, foundationWalls)); + } + } + + // Roofs + + public BlockState getRoofBlock(BlockState input) { + return getFullState(input, roofBlocks); + } + + public BlockState getRoofSlab(BlockState input) { + return getSlabState(input, roofSlabs); + } + + public BlockState getRoofStair(BlockState input) { + return getStairState(input, roofStairs); + } + + // Planks + + public BlockState getPlanksBlock(BlockState input) { + return getFullState(input, planksBlocks); + } + + public BlockState getPlanksSlab(BlockState input) { + return getSlabState(input, planksSlabs); + } + + public BlockState getPlanksStair(BlockState input) { + return getStairState(input, planksStairs); + } + + // Fences + + public BlockState getFence(BlockState input) { + if (fences.isEmpty()) + return input; + else if (fences.size() == 1) + return copyFence(input, fences.get(0)); + else { + return copyFence(input, getRandomBlock(input, fences)); + } + } + + // Walls + + public BlockState getWall(BlockState input) { + if (walls.isEmpty()) + return input; + else if (walls.size() == 1) + return copyWall(input, walls.get(0)); + else { + return copyWall(input, getRandomBlock(input, walls)); + } + } + + // Gates + + public BlockState getGate(BlockState input) { + if (gates.isEmpty()) + return input; + else if (gates.size() == 1) + return copyGate(input, gates.get(0)); + else { + return copyGate(input, getRandomBlock(input, gates)); + } + } + + // Logs + + public BlockState getLog(BlockState input) { + if (logs.isEmpty()) + return input; + else if (logs.size() == 1) + return copyPillar(input, logs.get(0)); + else { + return copyPillar(input, getRandomBlock(input, logs)); + } + } + + public BlockState getBark(BlockState input) { + if (bark.isEmpty()) + return input; + else if (bark.size() == 1) + return copyPillar(input, bark.get(0)); + else { + return copyPillar(input, getRandomBlock(input, bark)); + } + } + + // Stone + + public BlockState getStoneBlock(BlockState input) { + return getFullState(input, stoneBlocks); + } + + public BlockState getStoneSlab(BlockState input) { + return getSlabState(input, stoneSlabs); + } + + public BlockState getStoneStair(BlockState input) { + return getStairState(input, stoneStairs); + } + + // Lights + + public BlockState getGlowingBlock(BlockState input) { + return getFullState(input, glowingBlocks); + } + + public BlockState getWallLight(BlockState input) { + if (wallLights.isEmpty()) + return input; + else if (wallLights.size() == 1) + return copyLanternWall(input, bark.get(0)); + else { + return copyLanternWall(input, getRandomBlock(input, wallLights)); + } + } + + public BlockState getCeilingLight(BlockState input) { + return copyLanternCeiling(input, getRandomBlock(input, ceilingLights)); + } + + public BlockState getFloorLight(BlockState input) { + return getFullState(input, ceilingLights); + } + + // Doors + + public BlockState getDoor(BlockState input) { + return copyDoor(input, getRandomBlock(input, doors)); + } + + public BlockState getTrapdoor(BlockState input) { + return copyTrapdoor(input, getRandomBlock(input, trapdoors)); + } + + // Plates + + public BlockState getWoodenPlate(BlockState input) { + return getFullState(input, platesWood); + } + + public BlockState getStonePlate(BlockState input) { + return getFullState(input, platesStone); + } + + // Glass + + public BlockState getGlassBlock(BlockState input) { + return getFullState(input, glassBlocks); + } + + public BlockState getGlassPane(BlockState input) { + return copyPane(input, getRandomBlock(input, glassPanes)); + } + + // Pots + + public BlockState getPot(BlockState input) { + return getFullState(input, pots); + } + + public BlockState getPlant(BlockState input) { + String seed = ForgeRegistries.BLOCKS.getKey(input.getBlock()).getPath(); + RANDOM.setSeed(seed.hashCode()); + return BlocksRegistry.POTTED_PLANT.getDefaultState().with(BlockPottedPlant.PLANT, PottedPlantShape.values()[RANDOM.nextInt(PottedPlantShape.values().length)]); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/world/structures/city/palette/Palettes.java b/src/main/java/redd90/betternether/world/structures/city/palette/Palettes.java new file mode 100644 index 0000000..7edf576 --- /dev/null +++ b/src/main/java/redd90/betternether/world/structures/city/palette/Palettes.java @@ -0,0 +1,56 @@ +package redd90.betternether.world.structures.city.palette; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Random; + +import net.minecraft.block.Blocks; +import redd90.betternether.registry.BlocksRegistry; + +public class Palettes { + private static final HashMap REGISTRY = new HashMap(); + private static final ArrayList PALETTES = new ArrayList(); + + public static final CityPalette EMPTY = register(new CityPalette("empty")); + + public static final CityPalette RED = register(new CityPalette("red") + .addRoofBlocks(BlocksRegistry.ROOF_TILE_WART) + .addRoofSlabs(BlocksRegistry.ROOF_TILE_WART_SLAB) + .addRoofStairs(BlocksRegistry.ROOF_TILE_WART_STAIRS) + .addPlanksBlocks(BlocksRegistry.WART_PLANKS) + .addPlanksSlabs(BlocksRegistry.WART_SLAB) + .addPlanksStairs(BlocksRegistry.WART_STAIRS) + .addFences(BlocksRegistry.WART_FENCE) + .addGates(BlocksRegistry.WART_GATE) + .addWalls(BlocksRegistry.NETHER_BRICK_WALL) + .addLogs(BlocksRegistry.WART_LOG, BlocksRegistry.WILLOW_LOG, BlocksRegistry.STRIPED_LOG_WART) + .addBark(BlocksRegistry.WART_BARK, BlocksRegistry.WILLOW_BARK, BlocksRegistry.STRIPED_BARK_WART) + .addStoneBlocks(Blocks.NETHER_BRICKS, Blocks.NETHER_WART_BLOCK, BlocksRegistry.NETHER_BRICK_TILE_LARGE, BlocksRegistry.NETHER_BRICK_TILE_SMALL) + .addStoneSlabs(Blocks.NETHER_BRICK_SLAB, BlocksRegistry.NETHER_BRICK_TILE_SLAB) + .addStoneStairs(Blocks.NETHER_BRICK_STAIRS, BlocksRegistry.NETHER_BRICK_TILE_STAIRS) + .addGlowingBlocks(Blocks.GLOWSTONE, BlocksRegistry.CINCINNASITE_LANTERN) + .addCeilingLights(Blocks.LANTERN, BlocksRegistry.CINCINNASITE_LANTERN_SMALL) + .addWallLights(Blocks.WALL_TORCH, BlocksRegistry.CINCINNASITE_LANTERN_SMALL) + .addFloorLights(Blocks.TORCH, BlocksRegistry.CINCINNASITE_LANTERN_SMALL) + .addDoors(BlocksRegistry.WART_DOOR) + .addTrapdoors(BlocksRegistry.WART_TRAPDOOR) + .addGlassBlocks(BlocksRegistry.QUARTZ_GLASS_FRAMED_COLORED.red, BlocksRegistry.QUARTZ_GLASS_COLORED.red, BlocksRegistry.CINCINNASITE_FRAME) + .addGlassPanes(BlocksRegistry.QUARTZ_GLASS_FRAMED_PANE_COLORED.red, BlocksRegistry.QUARTZ_GLASS_PANE_COLORED.red, BlocksRegistry.CINCINNASITE_BARS) + .addWoodPlates(BlocksRegistry.WART_PLATE) + .addPotsPanes(BlocksRegistry.BRICK_POT)); + + private static CityPalette register(CityPalette palette) { + REGISTRY.put(palette.getName(), palette); + PALETTES.add(palette); + return palette; + } + + public static CityPalette getPalette(String name) { + CityPalette palette = REGISTRY.get(name); + return palette == null ? EMPTY : palette; + } + + public static CityPalette getRandom(Random random) { + return random.nextBoolean() ? EMPTY : PALETTES.get(random.nextInt(PALETTES.size())); + } +} diff --git a/src/main/java/redd90/betternether/world/structures/piece/CavePiece.java b/src/main/java/redd90/betternether/world/structures/piece/CavePiece.java new file mode 100644 index 0000000..2ae45a1 --- /dev/null +++ b/src/main/java/redd90/betternether/world/structures/piece/CavePiece.java @@ -0,0 +1,91 @@ +package redd90.betternether.world.structures.piece; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.nbt.NBTUtil; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.ChunkPos; +import net.minecraft.util.math.MutableBoundingBox; +import net.minecraft.world.ISeedReader; +import net.minecraft.world.gen.ChunkGenerator; +import net.minecraft.world.gen.feature.structure.StructureManager; +import net.minecraft.world.gen.feature.template.TemplateManager; +import redd90.betternether.noise.OpenSimplexNoise; + + +public class CavePiece extends CustomPiece { + private static final BlockState LAVA = Blocks.LAVA.getDefaultState(); + private static final OpenSimplexNoise NOISE = new OpenSimplexNoise(927649); + private static final Mutable POS = new Mutable(); + + private BlockPos center; + private int radius; + private int radSqr; + private int minY; + private int maxY; + + public CavePiece(BlockPos center, int radius, Random random) { + super(StructureTypes.CAVE, random.nextInt()); + this.center = center.toImmutable(); + this.radius = radius; + this.radSqr = radius * radius; + makeBoundingBox(); + } + + protected CavePiece(TemplateManager manager, CompoundNBT tag) { + super(StructureTypes.CAVE, tag); + this.center = NBTUtil.readBlockPos(tag.getCompound("center")); + this.radius = tag.getInt("radius"); + this.radSqr = radius * radius; + makeBoundingBox(); + } + + @Override + protected void readAdditional(CompoundNBT tag) { + tag.put("center", NBTUtil.writeBlockPos(center)); + tag.putInt("radius", radius); + } + + @Override + public boolean func_230383_a_(ISeedReader world, StructureManager arg, ChunkGenerator chunkGenerator, Random random, MutableBoundingBox blockBox, ChunkPos chunkPos, BlockPos blockPos) { + BlockState bottom = LAVA; + if (!(world.getDimensionType().getHasCeiling())) { + bottom = Blocks.NETHERRACK.getDefaultState(); + } + for (int x = blockBox.minX; x <= blockBox.maxX; x++) { + int px = x - center.getX(); + px *= px; + for (int z = blockBox.minZ; z <= blockBox.maxZ; z++) { + int pz = z - center.getZ(); + pz *= pz; + for (int y = minY; y <= maxY; y++) { + int py = (y - center.getY()) << 1; + py *= py; + if (px + py + pz <= radSqr + NOISE.eval(x * 0.1, y * 0.1, z * 0.1) * 800) { + POS.setPos(x, y, z); + if (y > 31) { + world.setBlockState(POS, CAVE_AIR, 0); + } + else + world.setBlockState(POS, bottom, 0); + } + } + } + } + return true; + } + + private void makeBoundingBox() { + int x1 = center.getX() - radius; + int x2 = center.getX() + radius; + minY = Math.max(22, center.getY() - radius); + maxY = Math.min(96, center.getY() + radius); + int z1 = center.getZ() - radius; + int z2 = center.getZ() + radius; + this.boundingBox = new MutableBoundingBox(x1, minY, z1, x2, maxY, z2); + } +} diff --git a/src/main/java/redd90/betternether/world/structures/piece/CityPiece.java b/src/main/java/redd90/betternether/world/structures/piece/CityPiece.java new file mode 100644 index 0000000..485d340 --- /dev/null +++ b/src/main/java/redd90/betternether/world/structures/piece/CityPiece.java @@ -0,0 +1,108 @@ +package redd90.betternether.world.structures.piece; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.nbt.NBTUtil; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.ChunkPos; +import net.minecraft.util.math.MutableBoundingBox; +import net.minecraft.world.ISeedReader; +import net.minecraft.world.chunk.IChunk; +import net.minecraft.world.gen.ChunkGenerator; +import net.minecraft.world.gen.feature.structure.StructureManager; +import net.minecraft.world.gen.feature.template.StructureProcessor; +import net.minecraft.world.gen.feature.template.TemplateManager; +import redd90.betternether.BlocksHelper; +import redd90.betternether.world.structures.city.BuildingStructureProcessor; +import redd90.betternether.world.structures.city.StructureCityBuilding; +import redd90.betternether.world.structures.city.palette.CityPalette; +import redd90.betternether.world.structures.city.palette.Palettes; + + +public class CityPiece extends CustomPiece { + private static final Mutable POS = new Mutable(); + + private StructureProcessor paletteProcessor; + private StructureCityBuilding building; + private CityPalette palette; + private BlockPos pos; + + public CityPiece(StructureCityBuilding building, BlockPos pos, int id, CityPalette palette) { + super(StructureTypes.NETHER_CITY, id); + this.building = building; + this.pos = pos.toImmutable(); + this.boundingBox = building.getBoundingBox(pos); + this.palette = palette; + this.paletteProcessor = new BuildingStructureProcessor(palette); + } + + protected CityPiece(TemplateManager manager, CompoundNBT tag) { + super(StructureTypes.NETHER_CITY, tag); + this.building = new StructureCityBuilding(tag.getString("building"), tag.getInt("offset")); + this.building = this.building.getRotated(Rotation.values()[tag.getInt("rotation")]); + this.building.setMirror(Mirror.values()[tag.getInt("mirror")]); + this.pos = NBTUtil.readBlockPos(tag.getCompound("pos")); + this.boundingBox = building.getBoundingBox(pos); + this.palette = Palettes.getPalette(tag.getString("palette")); + this.paletteProcessor = new BuildingStructureProcessor(palette); + } + + @Override + protected void readAdditional(CompoundNBT tag) { + tag.putString("building", building.getName()); + tag.putInt("rotation", building.getRotation().ordinal()); + tag.putInt("mirror", building.getMirror().ordinal()); + tag.putInt("offset", building.getYOffset()); + tag.put("pos", NBTUtil.writeBlockPos(pos)); + tag.putString("palette", palette.getName()); + } + + @Override + public boolean func_230383_a_(ISeedReader world, StructureManager arg, ChunkGenerator chunkGenerator, Random random, MutableBoundingBox blockBox, ChunkPos chunkPos, BlockPos blockPos) { + if (!this.boundingBox.intersectsWith(blockBox)) + return true; + + MutableBoundingBox clamped = new MutableBoundingBox(boundingBox); + + clamped.minX = Math.max(clamped.minX, blockBox.minX); + clamped.maxX = Math.min(clamped.maxX, blockBox.maxX); + + clamped.minY = Math.max(clamped.minY, blockBox.minY); + clamped.maxY = Math.min(clamped.maxY, blockBox.maxY); + + clamped.minZ = Math.max(clamped.minZ, blockBox.minZ); + clamped.maxZ = Math.min(clamped.maxZ, blockBox.maxZ); + + building.placeInChunk(world, pos, clamped, paletteProcessor); + + IChunk chunk = world.getChunk(chunkPos.x, chunkPos.z); + + BlockState state; + for (int x = clamped.minX; x <= clamped.maxX; x++) + for (int z = clamped.minZ; z <= clamped.maxZ; z++) { + POS.setPos(x, clamped.minY, z); + state = world.getBlockState(POS); + if (!state.isAir() && state.hasOpaqueCollisionShape(world, POS)) { + for (int y = clamped.minY - 1; y > 4; y--) { + POS.setY(y); + BlocksHelper.setWithoutUpdate(world, POS, state); + if (BlocksHelper.isNetherGroundMagma(world.getBlockState(POS.down()))) + break; + } + } + + // POS.set(x - clamped.minX, clamped.minY - clamped.minZ, z); + for (int y = clamped.minY; y <= clamped.maxY; y++) { + POS.setY(y); + chunk.markBlockForPostprocessing(POS); + } + } + + return true; + } +} diff --git a/src/main/java/redd90/betternether/world/structures/piece/CustomPiece.java b/src/main/java/redd90/betternether/world/structures/piece/CustomPiece.java new file mode 100644 index 0000000..11abecf --- /dev/null +++ b/src/main/java/redd90/betternether/world/structures/piece/CustomPiece.java @@ -0,0 +1,15 @@ +package redd90.betternether.world.structures.piece; + +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.world.gen.feature.structure.IStructurePieceType; +import net.minecraft.world.gen.feature.structure.StructurePiece; + +public abstract class CustomPiece extends StructurePiece { + protected CustomPiece(IStructurePieceType type, int i) { + super(type, i); + } + + protected CustomPiece(IStructurePieceType type, CompoundNBT tag) { + super(type, tag); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/world/structures/piece/DestructionPiece.java b/src/main/java/redd90/betternether/world/structures/piece/DestructionPiece.java new file mode 100644 index 0000000..b7b6192 --- /dev/null +++ b/src/main/java/redd90/betternether/world/structures/piece/DestructionPiece.java @@ -0,0 +1,97 @@ +package redd90.betternether.world.structures.piece; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.nbt.NBTUtil; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.ChunkPos; +import net.minecraft.util.math.MutableBoundingBox; +import net.minecraft.world.ISeedReader; +import net.minecraft.world.gen.ChunkGenerator; +import net.minecraft.world.gen.feature.structure.StructureManager; +import net.minecraft.world.gen.feature.template.TemplateManager; +import redd90.betternether.BlocksHelper; +import redd90.betternether.MHelper; + +public class DestructionPiece extends CustomPiece { + private static final Mutable POS = new Mutable(); + + private BlockPos center; + private int radius; + private int radSqr; + private int minY; + private int maxY; + + public DestructionPiece(MutableBoundingBox bounds, Random random) { + super(StructureTypes.DESTRUCTION, random.nextInt()); + radius = random.nextInt(5) + 1; + radSqr = radius * radius; + center = new BlockPos( + MHelper.randRange(bounds.minX, bounds.maxX, random), + MHelper.randRange(bounds.minY, bounds.maxY, random), + MHelper.randRange(bounds.minZ, bounds.maxZ, random)); + makeBoundingBox(); + } + + protected DestructionPiece(TemplateManager manager, CompoundNBT tag) { + super(StructureTypes.DESTRUCTION, tag); + this.center = NBTUtil.readBlockPos(tag.getCompound("center")); + this.radius = tag.getInt("radius"); + radSqr = radius * radius; + makeBoundingBox(); + } + + @Override + protected void readAdditional(CompoundNBT tag) { + tag.put("center", NBTUtil.writeBlockPos(center)); + tag.putInt("radius", radius); + } + + @Override + public boolean func_230383_a_(ISeedReader world, StructureManager structureAccessor, ChunkGenerator chunkGenerator, Random random, MutableBoundingBox blockBox, ChunkPos chunkPos, BlockPos blockPos) { + for (int x = blockBox.minX; x <= blockBox.maxX; x++) { + int px = x - center.getX(); + px *= px; + for (int z = blockBox.minZ; z <= blockBox.maxZ; z++) { + int pz = z - center.getZ(); + pz *= pz; + for (int y = minY; y <= maxY; y++) { + int py = (y - center.getY()) << 1; + py *= py; + if (px + py + pz <= radSqr + random.nextInt(radius)) { + POS.setPos(x, y, z); + if (!world.isAirBlock(POS)) { + if (random.nextBoolean()) + BlocksHelper.setWithoutUpdate(world, POS, CAVE_AIR); + else { + int dist = BlocksHelper.downRay(world, POS, maxY - 5); + if (dist > 0) { + BlockState state = world.getBlockState(POS); + BlocksHelper.setWithoutUpdate(world, POS, CAVE_AIR); + POS.setY(POS.getY() - dist); + BlocksHelper.setWithoutUpdate(world, POS, state); + } + } + } + } + } + } + } + return true; + } + + private void makeBoundingBox() { + int x1 = center.getX() - radius; + int x2 = center.getX() + radius; + minY = Math.max(22, center.getY() - radius); + if (minY < 38) + minY = 38; + maxY = Math.min(96, center.getY() + radius); + int z1 = center.getZ() - radius; + int z2 = center.getZ() + radius; + this.boundingBox = new MutableBoundingBox(x1, minY, z1, x2, maxY, z2); + } +} \ No newline at end of file diff --git a/src/main/java/redd90/betternether/world/structures/piece/StructureTypes.java b/src/main/java/redd90/betternether/world/structures/piece/StructureTypes.java new file mode 100644 index 0000000..a25c71b --- /dev/null +++ b/src/main/java/redd90/betternether/world/structures/piece/StructureTypes.java @@ -0,0 +1,19 @@ +package redd90.betternether.world.structures.piece; + +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.registry.Registry; +import net.minecraft.world.gen.feature.structure.IStructurePieceType; +import redd90.betternether.BetterNether; + +public class StructureTypes { + public static final IStructurePieceType NETHER_CITY = register(CityPiece::new, "bncity"); + public static final IStructurePieceType CAVE = register(CavePiece::new, "bncave"); + public static final IStructurePieceType DESTRUCTION = register(DestructionPiece::new, "bndestr"); + public static final IStructurePieceType ANCHOR_TREE = register(DestructionPiece::new, "anchor_tree"); + + public static void init() {} + + protected static IStructurePieceType register(IStructurePieceType pieceType, String id) { + return Registry.register(Registry.STRUCTURE_PIECE, new ResourceLocation(BetterNether.MOD_ID, id), pieceType); + } +} diff --git a/src/main/resources/META-INF/MANIFEST.MF b/src/main/resources/META-INF/MANIFEST.MF new file mode 100644 index 0000000..fb5b0c2 --- /dev/null +++ b/src/main/resources/META-INF/MANIFEST.MF @@ -0,0 +1 @@ +MixinConnector: redd90.betternether.mixin.MixinConnector \ No newline at end of file diff --git a/src/main/resources/META-INF/accesstransformer.cfg b/src/main/resources/META-INF/accesstransformer.cfg new file mode 100644 index 0000000..13a3511 --- /dev/null +++ b/src/main/resources/META-INF/accesstransformer.cfg @@ -0,0 +1,3 @@ +public-f net.minecraft.world.gen.settings.DimensionStructuresSettings field_236191_b_ +public net.minecraft.world.gen.feature.structure.Structure field_236385_u_ +public-f net.minecraft.world.gen.FlatGenerationSettings field_202247_j \ No newline at end of file diff --git a/src/main/resources/META-INF/mods.toml b/src/main/resources/META-INF/mods.toml new file mode 100644 index 0000000..95c75f8 --- /dev/null +++ b/src/main/resources/META-INF/mods.toml @@ -0,0 +1,39 @@ +modLoader="javafml" #mandatory +loaderVersion="[35,)" #mandatory This is typically bumped every Minecraft version by Forge. See our download page for lists of versions. +license="All rights reserved" +issueTrackerURL="http://my.issue.tracker/" #optional +[[mods]] #mandatory +modId="betternether" #mandatory +version="${file.jarVersion}" #mandatory +displayName="Better Nether" #mandatory +updateJSONURL="http://myurl.me/" #optional +displayURL="http://example.com/" #optional +logoFile="examplemod.png" #optional +credits="Paulevs for the original" #optional +authors="Paulevs (Fabric Original), Redd90 (Forge port)" #optional +description=''' +This is a long form description of the mod. You can write whatever you want here + +Have some lorem ipsum. + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed mollis lacinia magna. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed sagittis luctus odio eu tempus. Interdum et malesuada fames ac ante ipsum primis in faucibus. Pellentesque volutpat ligula eget lacus auctor sagittis. In hac habitasse platea dictumst. Nunc gravida elit vitae sem vehicula efficitur. Donec mattis ipsum et arcu lobortis, eleifend sagittis sem rutrum. Cras pharetra quam eget posuere fermentum. Sed id tincidunt justo. Lorem ipsum dolor sit amet, consectetur adipiscing elit. +''' +[[dependencies.betternether]] #optional + # the modid of the dependency + modId="forge" #mandatory + # Does this dependency have to exist - if not, ordering below must be specified + mandatory=true #mandatory + # The version range of the dependency + versionRange="[35,)" #mandatory + # An ordering relationship for the dependency - BEFORE or AFTER required if the relationship is not mandatory + ordering="NONE" + # Side this dependency is applied on - BOTH, CLIENT or SERVER + side="BOTH" +# Here's another dependency +[[dependencies.betternether]] + modId="minecraft" + mandatory=true +# This version range declares a minimum of the current minecraft version up to but not including the next major version + versionRange="[1.16.4,1.17)" + ordering="NONE" + side="BOTH" diff --git a/src/main/resources/assets/betternether/blockstates/agave.json b/src/main/resources/assets/betternether/blockstates/agave.json new file mode 100644 index 0000000..587ef13 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/agave.json @@ -0,0 +1,29 @@ +{ + "variants": + { + "age=0": [ + { "model": "betternether:block/agave_3" }, + { "model": "betternether:block/agave_3", "y": 90 }, + { "model": "betternether:block/agave_3", "y": 180 }, + { "model": "betternether:block/agave_3", "y": 270 } + ], + "age=1": [ + { "model": "betternether:block/agave_2" }, + { "model": "betternether:block/agave_2", "y": 90 }, + { "model": "betternether:block/agave_2", "y": 180 }, + { "model": "betternether:block/agave_2", "y": 270 } + ], + "age=2": [ + { "model": "betternether:block/agave_1" }, + { "model": "betternether:block/agave_1", "y": 90 }, + { "model": "betternether:block/agave_1", "y": 180 }, + { "model": "betternether:block/agave_1", "y": 270 } + ], + "age=3": [ + { "model": "betternether:block/agave" }, + { "model": "betternether:block/agave", "y": 90 }, + { "model": "betternether:block/agave", "y": 180 }, + { "model": "betternether:block/agave", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_bark.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_bark.json new file mode 100644 index 0000000..3baca74 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_bark.json @@ -0,0 +1,19 @@ +{ + "variants": { + "axis=y": [ + { "model": "betternether:block/anchor_tree_bark" }, + { "model": "betternether:block/anchor_tree_bark_2" }, + { "model": "betternether:block/anchor_tree_bark_3" } + ], + "axis=z": [ + { "model": "betternether:block/anchor_tree_bark", "x": 90 }, + { "model": "betternether:block/anchor_tree_bark_2", "x": 90 }, + { "model": "betternether:block/anchor_tree_bark_3", "x": 90 } + ], + "axis=x": [ + { "model": "betternether:block/anchor_tree_bark", "x": 90, "y": 90 }, + { "model": "betternether:block/anchor_tree_bark_2", "x": 90, "y": 90 }, + { "model": "betternether:block/anchor_tree_bark_3", "x": 90, "y": 90 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_button.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_button.json new file mode 100644 index 0000000..106bec0 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_button.json @@ -0,0 +1,28 @@ +{ + "variants": { + "face=floor,facing=east,powered=false": { "model": "betternether:block/anchor_tree_button", "y": 90 }, + "face=floor,facing=west,powered=false": { "model": "betternether:block/anchor_tree_button", "y": 270 }, + "face=floor,facing=south,powered=false": { "model": "betternether:block/anchor_tree_button", "y": 180 }, + "face=floor,facing=north,powered=false": { "model": "betternether:block/anchor_tree_button" }, + "face=wall,facing=east,powered=false": { "model": "betternether:block/anchor_tree_button", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=false": { "model": "betternether:block/anchor_tree_button", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=false": { "model": "betternether:block/anchor_tree_button", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=false": { "model": "betternether:block/anchor_tree_button", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=false": { "model": "betternether:block/anchor_tree_button", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=false": { "model": "betternether:block/anchor_tree_button", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=false": { "model": "betternether:block/anchor_tree_button", "x": 180 }, + "face=ceiling,facing=north,powered=false": { "model": "betternether:block/anchor_tree_button", "x": 180, "y": 180 }, + "face=floor,facing=east,powered=true": { "model": "betternether:block/anchor_tree_button_pressed", "y": 90 }, + "face=floor,facing=west,powered=true": { "model": "betternether:block/anchor_tree_button_pressed", "y": 270 }, + "face=floor,facing=south,powered=true": { "model": "betternether:block/anchor_tree_button_pressed", "y": 180 }, + "face=floor,facing=north,powered=true": { "model": "betternether:block/anchor_tree_button_pressed" }, + "face=wall,facing=east,powered=true": { "model": "betternether:block/anchor_tree_button_pressed", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=true": { "model": "betternether:block/anchor_tree_button_pressed", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=true": { "model": "betternether:block/anchor_tree_button_pressed", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=true": { "model": "betternether:block/anchor_tree_button_pressed", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=true": { "model": "betternether:block/anchor_tree_button_pressed", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=true": { "model": "betternether:block/anchor_tree_button_pressed", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=true": { "model": "betternether:block/anchor_tree_button_pressed", "x": 180 }, + "face=ceiling,facing=north,powered=true": { "model": "betternether:block/anchor_tree_button_pressed", "x": 180, "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_door.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_door.json new file mode 100644 index 0000000..e097eb9 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_door.json @@ -0,0 +1,36 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false": { "model": "betternether:block/anchor_tree_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false": { "model": "betternether:block/anchor_tree_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false": { "model": "betternether:block/anchor_tree_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false": { "model": "betternether:block/anchor_tree_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false": { "model": "betternether:block/anchor_tree_door_bottom_hinge" }, + "facing=south,half=lower,hinge=right,open=false": { "model": "betternether:block/anchor_tree_door_bottom_hinge", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false": { "model": "betternether:block/anchor_tree_door_bottom_hinge", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false": { "model": "betternether:block/anchor_tree_door_bottom_hinge", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true": { "model": "betternether:block/anchor_tree_door_bottom_hinge", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true": { "model": "betternether:block/anchor_tree_door_bottom_hinge", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true": { "model": "betternether:block/anchor_tree_door_bottom_hinge", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true": { "model": "betternether:block/anchor_tree_door_bottom_hinge" }, + "facing=east,half=lower,hinge=right,open=true": { "model": "betternether:block/anchor_tree_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true": { "model": "betternether:block/anchor_tree_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true": { "model": "betternether:block/anchor_tree_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true": { "model": "betternether:block/anchor_tree_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false": { "model": "betternether:block/anchor_tree_door_top" }, + "facing=south,half=upper,hinge=left,open=false": { "model": "betternether:block/anchor_tree_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false": { "model": "betternether:block/anchor_tree_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false": { "model": "betternether:block/anchor_tree_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false": { "model": "betternether:block/anchor_tree_door_top_hinge" }, + "facing=south,half=upper,hinge=right,open=false": { "model": "betternether:block/anchor_tree_door_top_hinge", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false": { "model": "betternether:block/anchor_tree_door_top_hinge", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false": { "model": "betternether:block/anchor_tree_door_top_hinge", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true": { "model": "betternether:block/anchor_tree_door_top_hinge", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true": { "model": "betternether:block/anchor_tree_door_top_hinge", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true": { "model": "betternether:block/anchor_tree_door_top_hinge", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true": { "model": "betternether:block/anchor_tree_door_top_hinge" }, + "facing=east,half=upper,hinge=right,open=true": { "model": "betternether:block/anchor_tree_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true": { "model": "betternether:block/anchor_tree_door_top" }, + "facing=west,half=upper,hinge=right,open=true": { "model": "betternether:block/anchor_tree_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true": { "model": "betternether:block/anchor_tree_door_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_fence.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_fence.json new file mode 100644 index 0000000..3392b0d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_fence.json @@ -0,0 +1,17 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/anchor_tree_fence_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/anchor_tree_fence_side", "uvlock": true } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/anchor_tree_fence_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/anchor_tree_fence_side", "y": 180, "uvlock": true } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/anchor_tree_fence_side", "y": 270, "uvlock": true } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_gate.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_gate.json new file mode 100644 index 0000000..be640d8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_gate.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=south,in_wall=false,open=false": { "model": "betternether:block/anchor_tree_fence_gate_closed", "uvlock": true }, + "facing=west,in_wall=false,open=false": { "model": "betternether:block/anchor_tree_fence_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=false": { "model": "betternether:block/anchor_tree_fence_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=false": { "model": "betternether:block/anchor_tree_fence_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=false,open=true": { "model": "betternether:block/anchor_tree_fence_gate_open", "uvlock": true }, + "facing=west,in_wall=false,open=true": { "model": "betternether:block/anchor_tree_fence_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=true": { "model": "betternether:block/anchor_tree_fence_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=true": { "model": "betternether:block/anchor_tree_fence_gate_open", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=false": { "model": "betternether:block/anchor_tree_wall_gate_closed", "uvlock": true }, + "facing=west,in_wall=true,open=false": { "model": "betternether:block/anchor_tree_wall_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=false": { "model": "betternether:block/anchor_tree_wall_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=false": { "model": "betternether:block/anchor_tree_wall_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=true": { "model": "betternether:block/anchor_tree_wall_gate_open", "uvlock": true }, + "facing=west,in_wall=true,open=true": { "model": "betternether:block/anchor_tree_wall_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=true": { "model": "betternether:block/anchor_tree_wall_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=true": { "model": "betternether:block/anchor_tree_wall_gate_open", "uvlock": true, "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_ladder.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_ladder.json new file mode 100644 index 0000000..218e600 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_ladder.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/anchor_tree_ladder" }, + "facing=east": { "model": "betternether:block/anchor_tree_ladder", "y": 90 }, + "facing=south": { "model": "betternether:block/anchor_tree_ladder", "y": 180 }, + "facing=west": { "model": "betternether:block/anchor_tree_ladder", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_leaves.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_leaves.json new file mode 100644 index 0000000..8aaa0ec --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_leaves.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/anchor_tree_leaves" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_log.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_log.json new file mode 100644 index 0000000..c4ea8a8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_log.json @@ -0,0 +1,19 @@ +{ + "variants": { + "axis=y": [ + { "model": "betternether:block/anchor_tree_log" }, + { "model": "betternether:block/anchor_tree_log_2" }, + { "model": "betternether:block/anchor_tree_log_3" } + ], + "axis=z": [ + { "model": "betternether:block/anchor_tree_log", "x": 90 }, + { "model": "betternether:block/anchor_tree_log_2", "x": 90 }, + { "model": "betternether:block/anchor_tree_log_3", "x": 90 } + ], + "axis=x": [ + { "model": "betternether:block/anchor_tree_log", "x": 90, "y": 90 }, + { "model": "betternether:block/anchor_tree_log_2", "x": 90, "y": 90 }, + { "model": "betternether:block/anchor_tree_log_3", "x": 90, "y": 90 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_planks.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_planks.json new file mode 100644 index 0000000..1fa955c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_planks.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/anchor_tree_planks" } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_plate.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_plate.json new file mode 100644 index 0000000..bb49b65 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_plate.json @@ -0,0 +1,6 @@ +{ + "variants": { + "powered=false": { "model": "betternether:block/anchor_tree_pressure_plate_up" }, + "powered=true": { "model": "betternether:block/anchor_tree_pressure_plate_down" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_sapling.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_sapling.json new file mode 100644 index 0000000..28d82a7 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_sapling.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/anchor_tree_sapling" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_slab.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_slab.json new file mode 100644 index 0000000..5a23e41 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/anchor_tree_half_slab" }, + "type=top": { "model": "betternether:block/anchor_tree_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/anchor_tree_planks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_stairs.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_stairs.json new file mode 100644 index 0000000..09459a0 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/anchor_tree_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/anchor_tree_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/anchor_tree_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/anchor_tree_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/anchor_tree_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/anchor_tree_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/anchor_tree_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/anchor_tree_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/anchor_tree_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/anchor_tree_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/anchor_tree_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/anchor_tree_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/anchor_tree_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/anchor_tree_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/anchor_tree_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/anchor_tree_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/anchor_tree_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/anchor_tree_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/anchor_tree_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/anchor_tree_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/anchor_tree_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/anchor_tree_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/anchor_tree_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/anchor_tree_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/anchor_tree_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/anchor_tree_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/anchor_tree_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/anchor_tree_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/anchor_tree_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/anchor_tree_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/anchor_tree_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/anchor_tree_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/anchor_tree_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/anchor_tree_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/anchor_tree_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/anchor_tree_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/anchor_tree_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/anchor_tree_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/anchor_tree_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/anchor_tree_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_trapdoor.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_trapdoor.json new file mode 100644 index 0000000..020c060 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_trapdoor.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=north,half=bottom,open=false": { "model": "betternether:block/anchor_tree_trapdoor" }, + "facing=south,half=bottom,open=false": { "model": "betternether:block/anchor_tree_trapdoor", "y": 180 }, + "facing=east,half=bottom,open=false": { "model": "betternether:block/anchor_tree_trapdoor", "y": 90 }, + "facing=west,half=bottom,open=false": { "model": "betternether:block/anchor_tree_trapdoor", "y": 270 }, + "facing=north,half=top,open=false": { "model": "betternether:block/anchor_tree_trapdoor", "x": 180 }, + "facing=south,half=top,open=false": { "model": "betternether:block/anchor_tree_trapdoor", "x": 180, "y": 180 }, + "facing=east,half=top,open=false": { "model": "betternether:block/anchor_tree_trapdoor", "x": 180, "y": 90 }, + "facing=west,half=top,open=false": { "model": "betternether:block/anchor_tree_trapdoor", "x": 180, "y": 270 }, + "facing=north,half=bottom,open=true": { "model": "betternether:block/anchor_tree_trapdoor", "x": 90 }, + "facing=south,half=bottom,open=true": { "model": "betternether:block/anchor_tree_trapdoor", "x": 90, "y": 180 }, + "facing=east,half=bottom,open=true": { "model": "betternether:block/anchor_tree_trapdoor", "x": 90, "y": 90 }, + "facing=west,half=bottom,open=true": { "model": "betternether:block/anchor_tree_trapdoor", "x": 90, "y": 270 }, + "facing=north,half=top,open=true": { "model": "betternether:block/anchor_tree_trapdoor", "x": 270, "y": 180 }, + "facing=south,half=top,open=true": { "model": "betternether:block/anchor_tree_trapdoor", "x": 270, "y": 0 }, + "facing=east,half=top,open=true": { "model": "betternether:block/anchor_tree_trapdoor", "x": 270, "y": 270 }, + "facing=west,half=top,open=true": { "model": "betternether:block/anchor_tree_trapdoor", "x": 270, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/anchor_tree_vine.json b/src/main/resources/assets/betternether/blockstates/anchor_tree_vine.json new file mode 100644 index 0000000..b568085 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/anchor_tree_vine.json @@ -0,0 +1,17 @@ +{ + "variants": + { + "shape=bottom": [ + { "model": "betternether:block/anchor_tree_vine_bottom" }, + { "model": "betternether:block/anchor_tree_vine_bottom_2" } + ], + "shape=middle": [ + { "model": "betternether:block/anchor_tree_vine_middle" }, + { "model": "betternether:block/anchor_tree_vine_middle_2" } + ], + "shape=top": [ + { "model": "betternether:block/anchor_tree_vine_top" }, + { "model": "betternether:block/anchor_tree_vine_top_2" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_acacia.json b/src/main/resources/assets/betternether/blockstates/bar_stool_acacia.json new file mode 100644 index 0000000..2dc7494 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_acacia.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_acacia" }, + "facing=west": { "model": "betternether:block/bar_stool_acacia", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_acacia", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_acacia", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_anchor_tree.json b/src/main/resources/assets/betternether/blockstates/bar_stool_anchor_tree.json new file mode 100644 index 0000000..ea6ac51 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_anchor_tree.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_anchor_tree" }, + "facing=west": { "model": "betternether:block/bar_stool_anchor_tree", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_anchor_tree", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_anchor_tree", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_birch.json b/src/main/resources/assets/betternether/blockstates/bar_stool_birch.json new file mode 100644 index 0000000..67048ff --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_birch.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_birch" }, + "facing=west": { "model": "betternether:block/bar_stool_birch", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_birch", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_birch", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_cincinnasite.json b/src/main/resources/assets/betternether/blockstates/bar_stool_cincinnasite.json new file mode 100644 index 0000000..e542f1d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_cincinnasite.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_cincinnasite" }, + "facing=west": { "model": "betternether:block/bar_stool_cincinnasite", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_cincinnasite", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_cincinnasite", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_crimson.json b/src/main/resources/assets/betternether/blockstates/bar_stool_crimson.json new file mode 100644 index 0000000..10b85e1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_crimson.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_crimson" }, + "facing=west": { "model": "betternether:block/bar_stool_crimson", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_crimson", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_crimson", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_dark_oak.json b/src/main/resources/assets/betternether/blockstates/bar_stool_dark_oak.json new file mode 100644 index 0000000..90446a3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_dark_oak.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_dark_oak" }, + "facing=west": { "model": "betternether:block/bar_stool_dark_oak", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_dark_oak", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_dark_oak", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_jungle.json b/src/main/resources/assets/betternether/blockstates/bar_stool_jungle.json new file mode 100644 index 0000000..c8372ef --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_jungle.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_jungle" }, + "facing=west": { "model": "betternether:block/bar_stool_jungle", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_jungle", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_jungle", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_mushroom.json b/src/main/resources/assets/betternether/blockstates/bar_stool_mushroom.json new file mode 100644 index 0000000..2cd59b4 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_mushroom.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_mushroom" }, + "facing=west": { "model": "betternether:block/bar_stool_mushroom", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_mushroom", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_mushroom", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_mushroom_fir.json b/src/main/resources/assets/betternether/blockstates/bar_stool_mushroom_fir.json new file mode 100644 index 0000000..c3f0c70 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_mushroom_fir.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_mushroom_fir" }, + "facing=west": { "model": "betternether:block/bar_stool_mushroom_fir", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_mushroom_fir", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_mushroom_fir", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_nether_sakura.json b/src/main/resources/assets/betternether/blockstates/bar_stool_nether_sakura.json new file mode 100644 index 0000000..d86deb8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_nether_sakura.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_nether_sakura" }, + "facing=west": { "model": "betternether:block/bar_stool_nether_sakura", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_nether_sakura", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_nether_sakura", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_oak.json b/src/main/resources/assets/betternether/blockstates/bar_stool_oak.json new file mode 100644 index 0000000..78f2d5a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_oak.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_oak" }, + "facing=west": { "model": "betternether:block/bar_stool_oak", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_oak", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_oak", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_reeds.json b/src/main/resources/assets/betternether/blockstates/bar_stool_reeds.json new file mode 100644 index 0000000..7324606 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_reeds.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_reeds" }, + "facing=west": { "model": "betternether:block/bar_stool_reeds", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_reeds", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_reeds", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_rubeus.json b/src/main/resources/assets/betternether/blockstates/bar_stool_rubeus.json new file mode 100644 index 0000000..f3403d8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_rubeus.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_rubeus" }, + "facing=west": { "model": "betternether:block/bar_stool_rubeus", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_rubeus", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_rubeus", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_spruce.json b/src/main/resources/assets/betternether/blockstates/bar_stool_spruce.json new file mode 100644 index 0000000..13aa9ac --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_spruce.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_spruce" }, + "facing=west": { "model": "betternether:block/bar_stool_spruce", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_spruce", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_spruce", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_stalagnate.json b/src/main/resources/assets/betternether/blockstates/bar_stool_stalagnate.json new file mode 100644 index 0000000..06e8c8f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_stalagnate.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_stalagnate" }, + "facing=west": { "model": "betternether:block/bar_stool_stalagnate", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_stalagnate", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_stalagnate", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_warped.json b/src/main/resources/assets/betternether/blockstates/bar_stool_warped.json new file mode 100644 index 0000000..b9a92aa --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_warped.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_warped" }, + "facing=west": { "model": "betternether:block/bar_stool_warped", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_warped", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_warped", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_wart.json b/src/main/resources/assets/betternether/blockstates/bar_stool_wart.json new file mode 100644 index 0000000..de2f210 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_wart.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_wart" }, + "facing=west": { "model": "betternether:block/bar_stool_wart", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_wart", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_wart", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bar_stool_willow.json b/src/main/resources/assets/betternether/blockstates/bar_stool_willow.json new file mode 100644 index 0000000..ecc1389 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bar_stool_willow.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/bar_stool_willow" }, + "facing=west": { "model": "betternether:block/bar_stool_willow", "y": 180 }, + "facing=south": { "model": "betternether:block/bar_stool_willow", "y": 90 }, + "facing=north": { "model": "betternether:block/bar_stool_willow", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/barrel_anchor_tree.json b/src/main/resources/assets/betternether/blockstates/barrel_anchor_tree.json new file mode 100644 index 0000000..044b28c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/barrel_anchor_tree.json @@ -0,0 +1,56 @@ +{ + "variants": { + "facing=down,open=false": { + "x": 180, + "model": "betternether:block/barrel_anchor_tree" + }, + "facing=down,open=true": { + "x": 180, + "model": "betternether:block/barrel_anchor_tree_open" + }, + "facing=east,open=false": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_anchor_tree" + }, + "facing=east,open=true": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_anchor_tree_open" + }, + "facing=north,open=false": { + "x": 90, + "model": "betternether:block/barrel_anchor_tree" + }, + "facing=north,open=true": { + "x": 90, + "model": "betternether:block/barrel_anchor_tree_open" + }, + "facing=south,open=false": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_anchor_tree" + }, + "facing=south,open=true": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_anchor_tree_open" + }, + "facing=up,open=false": { + "model": "betternether:block/barrel_anchor_tree" + }, + "facing=up,open=true": { + "model": "betternether:block/barrel_anchor_tree_open" + }, + "facing=west,open=false": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_anchor_tree" + }, + "facing=west,open=true": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_anchor_tree_open" + } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/barrel_cactus.json b/src/main/resources/assets/betternether/blockstates/barrel_cactus.json new file mode 100644 index 0000000..c7c37ec --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/barrel_cactus.json @@ -0,0 +1,29 @@ +{ + "variants": + { + "age=0": [ + { "model": "betternether:block/barrel_cactus_4" }, + { "model": "betternether:block/barrel_cactus_4", "y": 90 }, + { "model": "betternether:block/barrel_cactus_4", "y": 180 }, + { "model": "betternether:block/barrel_cactus_4", "y": 270 } + ], + "age=1": [ + { "model": "betternether:block/barrel_cactus_3" }, + { "model": "betternether:block/barrel_cactus_3", "y": 90 }, + { "model": "betternether:block/barrel_cactus_3", "y": 180 }, + { "model": "betternether:block/barrel_cactus_3", "y": 270 } + ], + "age=2": [ + { "model": "betternether:block/barrel_cactus_2" }, + { "model": "betternether:block/barrel_cactus_2", "y": 90 }, + { "model": "betternether:block/barrel_cactus_2", "y": 180 }, + { "model": "betternether:block/barrel_cactus_2", "y": 270 } + ], + "age=3": [ + { "model": "betternether:block/barrel_cactus" }, + { "model": "betternether:block/barrel_cactus", "y": 90 }, + { "model": "betternether:block/barrel_cactus", "y": 180 }, + { "model": "betternether:block/barrel_cactus", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/barrel_crimson.json b/src/main/resources/assets/betternether/blockstates/barrel_crimson.json new file mode 100644 index 0000000..3689827 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/barrel_crimson.json @@ -0,0 +1,56 @@ +{ + "variants": { + "facing=down,open=false": { + "x": 180, + "model": "betternether:block/barrel_crimson" + }, + "facing=down,open=true": { + "x": 180, + "model": "betternether:block/barrel_crimson_open" + }, + "facing=east,open=false": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_crimson" + }, + "facing=east,open=true": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_crimson_open" + }, + "facing=north,open=false": { + "x": 90, + "model": "betternether:block/barrel_crimson" + }, + "facing=north,open=true": { + "x": 90, + "model": "betternether:block/barrel_crimson_open" + }, + "facing=south,open=false": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_crimson" + }, + "facing=south,open=true": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_crimson_open" + }, + "facing=up,open=false": { + "model": "betternether:block/barrel_crimson" + }, + "facing=up,open=true": { + "model": "betternether:block/barrel_crimson_open" + }, + "facing=west,open=false": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_crimson" + }, + "facing=west,open=true": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_crimson_open" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/barrel_mushroom.json b/src/main/resources/assets/betternether/blockstates/barrel_mushroom.json new file mode 100644 index 0000000..d5ee567 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/barrel_mushroom.json @@ -0,0 +1,56 @@ +{ + "variants": { + "facing=down,open=false": { + "x": 180, + "model": "betternether:block/barrel_mushroom" + }, + "facing=down,open=true": { + "x": 180, + "model": "betternether:block/barrel_mushroom_open" + }, + "facing=east,open=false": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_mushroom" + }, + "facing=east,open=true": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_mushroom_open" + }, + "facing=north,open=false": { + "x": 90, + "model": "betternether:block/barrel_mushroom" + }, + "facing=north,open=true": { + "x": 90, + "model": "betternether:block/barrel_mushroom_open" + }, + "facing=south,open=false": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_mushroom" + }, + "facing=south,open=true": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_mushroom_open" + }, + "facing=up,open=false": { + "model": "betternether:block/barrel_mushroom" + }, + "facing=up,open=true": { + "model": "betternether:block/barrel_mushroom_open" + }, + "facing=west,open=false": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_mushroom" + }, + "facing=west,open=true": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_mushroom_open" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/barrel_mushroom_fir.json b/src/main/resources/assets/betternether/blockstates/barrel_mushroom_fir.json new file mode 100644 index 0000000..06019dd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/barrel_mushroom_fir.json @@ -0,0 +1,56 @@ +{ + "variants": { + "facing=down,open=false": { + "x": 180, + "model": "betternether:block/barrel_mushroom_fir" + }, + "facing=down,open=true": { + "x": 180, + "model": "betternether:block/barrel_mushroom_fir_open" + }, + "facing=east,open=false": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_mushroom_fir" + }, + "facing=east,open=true": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_mushroom_fir_open" + }, + "facing=north,open=false": { + "x": 90, + "model": "betternether:block/barrel_mushroom_fir" + }, + "facing=north,open=true": { + "x": 90, + "model": "betternether:block/barrel_mushroom_fir_open" + }, + "facing=south,open=false": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_mushroom_fir" + }, + "facing=south,open=true": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_mushroom_fir_open" + }, + "facing=up,open=false": { + "model": "betternether:block/barrel_mushroom_fir" + }, + "facing=up,open=true": { + "model": "betternether:block/barrel_mushroom_fir_open" + }, + "facing=west,open=false": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_mushroom_fir" + }, + "facing=west,open=true": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_mushroom_fir_open" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/barrel_nether_sakura.json b/src/main/resources/assets/betternether/blockstates/barrel_nether_sakura.json new file mode 100644 index 0000000..481591e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/barrel_nether_sakura.json @@ -0,0 +1,56 @@ +{ + "variants": { + "facing=down,open=false": { + "x": 180, + "model": "betternether:block/barrel_nether_sakura" + }, + "facing=down,open=true": { + "x": 180, + "model": "betternether:block/barrel_nether_sakura_open" + }, + "facing=east,open=false": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_nether_sakura" + }, + "facing=east,open=true": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_nether_sakura_open" + }, + "facing=north,open=false": { + "x": 90, + "model": "betternether:block/barrel_nether_sakura" + }, + "facing=north,open=true": { + "x": 90, + "model": "betternether:block/barrel_nether_sakura_open" + }, + "facing=south,open=false": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_nether_sakura" + }, + "facing=south,open=true": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_nether_sakura_open" + }, + "facing=up,open=false": { + "model": "betternether:block/barrel_nether_sakura" + }, + "facing=up,open=true": { + "model": "betternether:block/barrel_nether_sakura_open" + }, + "facing=west,open=false": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_nether_sakura" + }, + "facing=west,open=true": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_nether_sakura_open" + } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/barrel_reed.json b/src/main/resources/assets/betternether/blockstates/barrel_reed.json new file mode 100644 index 0000000..f6edae1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/barrel_reed.json @@ -0,0 +1,56 @@ +{ + "variants": { + "facing=down,open=false": { + "x": 180, + "model": "betternether:block/barrel_reed" + }, + "facing=down,open=true": { + "x": 180, + "model": "betternether:block/barrel_reed_open" + }, + "facing=east,open=false": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_reed" + }, + "facing=east,open=true": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_reed_open" + }, + "facing=north,open=false": { + "x": 90, + "model": "betternether:block/barrel_reed" + }, + "facing=north,open=true": { + "x": 90, + "model": "betternether:block/barrel_reed_open" + }, + "facing=south,open=false": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_reed" + }, + "facing=south,open=true": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_reed_open" + }, + "facing=up,open=false": { + "model": "betternether:block/barrel_reed" + }, + "facing=up,open=true": { + "model": "betternether:block/barrel_reed_open" + }, + "facing=west,open=false": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_reed" + }, + "facing=west,open=true": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_reed_open" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/barrel_rubeus.json b/src/main/resources/assets/betternether/blockstates/barrel_rubeus.json new file mode 100644 index 0000000..e563509 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/barrel_rubeus.json @@ -0,0 +1,56 @@ +{ + "variants": { + "facing=down,open=false": { + "x": 180, + "model": "betternether:block/barrel_rubeus" + }, + "facing=down,open=true": { + "x": 180, + "model": "betternether:block/barrel_rubeus_open" + }, + "facing=east,open=false": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_rubeus" + }, + "facing=east,open=true": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_rubeus_open" + }, + "facing=north,open=false": { + "x": 90, + "model": "betternether:block/barrel_rubeus" + }, + "facing=north,open=true": { + "x": 90, + "model": "betternether:block/barrel_rubeus_open" + }, + "facing=south,open=false": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_rubeus" + }, + "facing=south,open=true": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_rubeus_open" + }, + "facing=up,open=false": { + "model": "betternether:block/barrel_rubeus" + }, + "facing=up,open=true": { + "model": "betternether:block/barrel_rubeus_open" + }, + "facing=west,open=false": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_rubeus" + }, + "facing=west,open=true": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_rubeus_open" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/barrel_stalagnate.json b/src/main/resources/assets/betternether/blockstates/barrel_stalagnate.json new file mode 100644 index 0000000..f0d58db --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/barrel_stalagnate.json @@ -0,0 +1,56 @@ +{ + "variants": { + "facing=down,open=false": { + "x": 180, + "model": "betternether:block/barrel_stalagnate" + }, + "facing=down,open=true": { + "x": 180, + "model": "betternether:block/barrel_stalagnate_open" + }, + "facing=east,open=false": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_stalagnate" + }, + "facing=east,open=true": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_stalagnate_open" + }, + "facing=north,open=false": { + "x": 90, + "model": "betternether:block/barrel_stalagnate" + }, + "facing=north,open=true": { + "x": 90, + "model": "betternether:block/barrel_stalagnate_open" + }, + "facing=south,open=false": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_stalagnate" + }, + "facing=south,open=true": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_stalagnate_open" + }, + "facing=up,open=false": { + "model": "betternether:block/barrel_stalagnate" + }, + "facing=up,open=true": { + "model": "betternether:block/barrel_stalagnate_open" + }, + "facing=west,open=false": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_stalagnate" + }, + "facing=west,open=true": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_stalagnate_open" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/barrel_warped.json b/src/main/resources/assets/betternether/blockstates/barrel_warped.json new file mode 100644 index 0000000..e09fa49 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/barrel_warped.json @@ -0,0 +1,56 @@ +{ + "variants": { + "facing=down,open=false": { + "x": 180, + "model": "betternether:block/barrel_warped" + }, + "facing=down,open=true": { + "x": 180, + "model": "betternether:block/barrel_warped_open" + }, + "facing=east,open=false": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_warped" + }, + "facing=east,open=true": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_warped_open" + }, + "facing=north,open=false": { + "x": 90, + "model": "betternether:block/barrel_warped" + }, + "facing=north,open=true": { + "x": 90, + "model": "betternether:block/barrel_warped_open" + }, + "facing=south,open=false": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_warped" + }, + "facing=south,open=true": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_warped_open" + }, + "facing=up,open=false": { + "model": "betternether:block/barrel_warped" + }, + "facing=up,open=true": { + "model": "betternether:block/barrel_warped_open" + }, + "facing=west,open=false": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_warped" + }, + "facing=west,open=true": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_warped_open" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/barrel_wart.json b/src/main/resources/assets/betternether/blockstates/barrel_wart.json new file mode 100644 index 0000000..5eff2dc --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/barrel_wart.json @@ -0,0 +1,56 @@ +{ + "variants": { + "facing=down,open=false": { + "x": 180, + "model": "betternether:block/barrel_wart" + }, + "facing=down,open=true": { + "x": 180, + "model": "betternether:block/barrel_wart_open" + }, + "facing=east,open=false": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_wart" + }, + "facing=east,open=true": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_wart_open" + }, + "facing=north,open=false": { + "x": 90, + "model": "betternether:block/barrel_wart" + }, + "facing=north,open=true": { + "x": 90, + "model": "betternether:block/barrel_wart_open" + }, + "facing=south,open=false": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_wart" + }, + "facing=south,open=true": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_wart_open" + }, + "facing=up,open=false": { + "model": "betternether:block/barrel_wart" + }, + "facing=up,open=true": { + "model": "betternether:block/barrel_wart_open" + }, + "facing=west,open=false": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_wart" + }, + "facing=west,open=true": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_wart_open" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/barrel_willow.json b/src/main/resources/assets/betternether/blockstates/barrel_willow.json new file mode 100644 index 0000000..a6b646b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/barrel_willow.json @@ -0,0 +1,56 @@ +{ + "variants": { + "facing=down,open=false": { + "x": 180, + "model": "betternether:block/barrel_willow" + }, + "facing=down,open=true": { + "x": 180, + "model": "betternether:block/barrel_willow_open" + }, + "facing=east,open=false": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_willow" + }, + "facing=east,open=true": { + "x": 90, + "y": 90, + "model": "betternether:block/barrel_willow_open" + }, + "facing=north,open=false": { + "x": 90, + "model": "betternether:block/barrel_willow" + }, + "facing=north,open=true": { + "x": 90, + "model": "betternether:block/barrel_willow_open" + }, + "facing=south,open=false": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_willow" + }, + "facing=south,open=true": { + "x": 90, + "y": 180, + "model": "betternether:block/barrel_willow_open" + }, + "facing=up,open=false": { + "model": "betternether:block/barrel_willow" + }, + "facing=up,open=true": { + "model": "betternether:block/barrel_willow_open" + }, + "facing=west,open=false": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_willow" + }, + "facing=west,open=true": { + "x": 90, + "y": 270, + "model": "betternether:block/barrel_willow_open" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/basalt_bricks.json b/src/main/resources/assets/betternether/blockstates/basalt_bricks.json new file mode 100644 index 0000000..1bbe508 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/basalt_bricks.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/basalt_bricks_1" }, + { "model": "betternether:block/basalt_bricks_2" } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/basalt_bricks_slab.json b/src/main/resources/assets/betternether/blockstates/basalt_bricks_slab.json new file mode 100644 index 0000000..ea19154 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/basalt_bricks_slab.json @@ -0,0 +1,17 @@ +{ + "variants": + { + "type=bottom": [ + { "model": "betternether:block/basalt_bricks_slab_1" }, + { "model": "betternether:block/basalt_bricks_slab_2" } + ], + "type=top": [ + { "model": "betternether:block/basalt_bricks_slab_1", "x": 180, "uvlock": true }, + { "model": "betternether:block/basalt_bricks_slab_2", "x": 180, "uvlock": true } + ], + "type=double": [ + { "model": "betternether:block/basalt_bricks_1" }, + { "model": "betternether:block/basalt_bricks_2" } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/basalt_bricks_stairs.json b/src/main/resources/assets/betternether/blockstates/basalt_bricks_stairs.json new file mode 100644 index 0000000..295ae2a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/basalt_bricks_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/basalt_bricks_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/basalt_bricks_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/basalt_bricks_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/basalt_bricks_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/basalt_bricks_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/basalt_bricks_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/basalt_bricks_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/basalt_bricks_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/basalt_bricks_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/basalt_bricks_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/basalt_bricks_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/basalt_bricks_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/basalt_bricks_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/basalt_bricks_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/basalt_bricks_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/basalt_bricks_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/basalt_bricks_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/basalt_bricks_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/basalt_bricks_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/basalt_bricks_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/basalt_bricks_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/basalt_bricks_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/basalt_bricks_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/basalt_bricks_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/basalt_bricks_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/basalt_bricks_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/basalt_bricks_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/basalt_bricks_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/basalt_bricks_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/basalt_bricks_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/basalt_bricks_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/basalt_bricks_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/basalt_bricks_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/basalt_bricks_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/basalt_bricks_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/basalt_bricks_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/basalt_bricks_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/basalt_bricks_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/basalt_bricks_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/basalt_bricks_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/basalt_bricks_wall.json b/src/main/resources/assets/betternether/blockstates/basalt_bricks_wall.json new file mode 100644 index 0000000..341bbbb --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/basalt_bricks_wall.json @@ -0,0 +1,31 @@ +{ + "multipart": [ + { "when": { "up": "true" }, + "apply": { "model": "betternether:block/basalt_bricks_post" } + }, + { "when": { "north": "low" }, + "apply": { "model": "betternether:block/basalt_bricks_wall_up", "uvlock": true } + }, + { "when": { "east": "low" }, + "apply": { "model": "betternether:block/basalt_bricks_wall_up", "y": 90, "uvlock": true } + }, + { "when": { "south": "low" }, + "apply": { "model": "betternether:block/basalt_bricks_wall_up", "y": 180, "uvlock": true } + }, + { "when": { "west": "low" }, + "apply": { "model": "betternether:block/basalt_bricks_wall_up", "y": 270, "uvlock": true } + }, + { "when": { "north": "tall" }, + "apply": { "model": "betternether:block/basalt_bricks_wall_down", "uvlock": true } + }, + { "when": { "east": "tall" }, + "apply": { "model": "betternether:block/basalt_bricks_wall_down", "y": 90, "uvlock": true } + }, + { "when": { "south": "tall" }, + "apply": { "model": "betternether:block/basalt_bricks_wall_down", "y": 180, "uvlock": true } + }, + { "when": { "west": "tall" }, + "apply": { "model": "betternether:block/basalt_bricks_wall_down", "y": 270, "uvlock": true } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/basalt_furnace.json b/src/main/resources/assets/betternether/blockstates/basalt_furnace.json new file mode 100644 index 0000000..caf3e19 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/basalt_furnace.json @@ -0,0 +1,12 @@ +{ + "variants": { + "lit=false,facing=north": { "model": "betternether:block/basalt_furnace" }, + "lit=false,facing=south": { "model": "betternether:block/basalt_furnace", "y": 180 }, + "lit=false,facing=west": { "model": "betternether:block/basalt_furnace", "y": 270 }, + "lit=false,facing=east": { "model": "betternether:block/basalt_furnace", "y": 90 }, + "lit=true,facing=north": { "model": "betternether:block/basalt_furnace_on" }, + "lit=true,facing=south": { "model": "betternether:block/basalt_furnace_on", "y": 180 }, + "lit=true,facing=west": { "model": "betternether:block/basalt_furnace_on", "y": 270 }, + "lit=true,facing=east": { "model": "betternether:block/basalt_furnace_on", "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/basalt_slab.json b/src/main/resources/assets/betternether/blockstates/basalt_slab.json new file mode 100644 index 0000000..ee3853d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/basalt_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/basalt_slab" }, + "type=top": { "model": "betternether:block/basalt_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "block/basalt" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/basalt_stalactite.json b/src/main/resources/assets/betternether/blockstates/basalt_stalactite.json new file mode 100644 index 0000000..c3c9f72 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/basalt_stalactite.json @@ -0,0 +1,13 @@ +{ + "variants": + { + "size=0": { "model": "betternether:block/basalt_stalactite_0" }, + "size=1": { "model": "betternether:block/basalt_stalactite_1" }, + "size=2": { "model": "betternether:block/basalt_stalactite_2" }, + "size=3": { "model": "betternether:block/basalt_stalactite_3" }, + "size=4": { "model": "betternether:block/basalt_stalactite_4" }, + "size=5": { "model": "betternether:block/basalt_stalactite_5" }, + "size=6": { "model": "betternether:block/basalt_stalactite_6" }, + "size=7": { "model": "betternether:block/basalt_stalactite_7" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/black_apple.json b/src/main/resources/assets/betternether/blockstates/black_apple.json new file mode 100644 index 0000000..b146473 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/black_apple.json @@ -0,0 +1,24 @@ +{ + "variants": + { + "age=0": { "model": "betternether:block/black_apple_seed" }, + "age=1": [ + { "model": "betternether:block/black_apple_1" }, + { "model": "betternether:block/black_apple_1", "y": 90 }, + { "model": "betternether:block/black_apple_1", "y": 180 }, + { "model": "betternether:block/black_apple_1", "y": 270 } + ], + "age=2": [ + { "model": "betternether:block/black_apple_2" }, + { "model": "betternether:block/black_apple_2", "y": 90 }, + { "model": "betternether:block/black_apple_2", "y": 180 }, + { "model": "betternether:block/black_apple_2", "y": 270 } + ], + "age=3": [ + { "model": "betternether:block/black_apple_3" }, + { "model": "betternether:block/black_apple_3", "y": 90 }, + { "model": "betternether:block/black_apple_3", "y": 180 }, + { "model": "betternether:block/black_apple_3", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/black_apple_seed.json b/src/main/resources/assets/betternether/blockstates/black_apple_seed.json new file mode 100644 index 0000000..d7455f1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/black_apple_seed.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/black_apple_seed" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/black_bush.json b/src/main/resources/assets/betternether/blockstates/black_bush.json new file mode 100644 index 0000000..c59830f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/black_bush.json @@ -0,0 +1,11 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/black_bush_01" }, + { "model": "betternether:block/black_bush_02" }, + { "model": "betternether:block/black_bush_03" }, + { "model": "betternether:block/black_bush_04" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/black_quartz_stained_glass.json b/src/main/resources/assets/betternether/blockstates/black_quartz_stained_glass.json new file mode 100644 index 0000000..1a818da --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/black_quartz_stained_glass.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "glass_black" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/black_vine.json b/src/main/resources/assets/betternether/blockstates/black_vine.json new file mode 100644 index 0000000..2276cfb --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/black_vine.json @@ -0,0 +1,13 @@ +{ + "variants": + { + "bottom=false": [ + { "model": "betternether:block/black_vine_1" }, + { "model": "betternether:block/black_vine_2" } + ], + "bottom=true": [ + { "model": "betternether:block/black_vine_bottom_1" }, + { "model": "betternether:block/black_vine_bottom_2" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/blackstone_furnace.json b/src/main/resources/assets/betternether/blockstates/blackstone_furnace.json new file mode 100644 index 0000000..3a4b0d3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/blackstone_furnace.json @@ -0,0 +1,12 @@ +{ + "variants": { + "lit=false,facing=north": { "model": "betternether:block/blackstone_furnace" }, + "lit=false,facing=south": { "model": "betternether:block/blackstone_furnace", "y": 180 }, + "lit=false,facing=west": { "model": "betternether:block/blackstone_furnace", "y": 270 }, + "lit=false,facing=east": { "model": "betternether:block/blackstone_furnace", "y": 90 }, + "lit=true,facing=north": { "model": "betternether:block/blackstone_furnace_on" }, + "lit=true,facing=south": { "model": "betternether:block/blackstone_furnace_on", "y": 180 }, + "lit=true,facing=west": { "model": "betternether:block/blackstone_furnace_on", "y": 270 }, + "lit=true,facing=east": { "model": "betternether:block/blackstone_furnace_on", "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/blackstone_stalactite.json b/src/main/resources/assets/betternether/blockstates/blackstone_stalactite.json new file mode 100644 index 0000000..b4f26b5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/blackstone_stalactite.json @@ -0,0 +1,13 @@ +{ + "variants": + { + "size=0": { "model": "betternether:block/blackstone_stalactite_0" }, + "size=1": { "model": "betternether:block/blackstone_stalactite_1" }, + "size=2": { "model": "betternether:block/blackstone_stalactite_2" }, + "size=3": { "model": "betternether:block/blackstone_stalactite_3" }, + "size=4": { "model": "betternether:block/blackstone_stalactite_4" }, + "size=5": { "model": "betternether:block/blackstone_stalactite_5" }, + "size=6": { "model": "betternether:block/blackstone_stalactite_6" }, + "size=7": { "model": "betternether:block/blackstone_stalactite_7" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/blooming_vine.json b/src/main/resources/assets/betternether/blockstates/blooming_vine.json new file mode 100644 index 0000000..e7d5fda --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/blooming_vine.json @@ -0,0 +1,17 @@ +{ + "variants": + { + "bottom=false": [ + { "model": "betternether:block/flowered_vine_1" }, + { "model": "betternether:block/flowered_vine_2" }, + { "model": "betternether:block/flowered_vine_3" }, + { "model": "betternether:block/flowered_vine_4" }, + { "model": "betternether:block/flowered_vine_5" }, + { "model": "betternether:block/flowered_vine_6" } + ], + "bottom=true": [ + { "model": "betternether:block/flowered_vine_bottom_1" }, + { "model": "betternether:block/flowered_vine_bottom_2" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/blue_obsidian.json b/src/main/resources/assets/betternether/blockstates/blue_obsidian.json new file mode 100644 index 0000000..19c2ab3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/blue_obsidian.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/blue_obsidian" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/blue_obsidian_bricks.json b/src/main/resources/assets/betternether/blockstates/blue_obsidian_bricks.json new file mode 100644 index 0000000..ed5b7bc --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/blue_obsidian_bricks.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/blue_obsidian_bricks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/blue_obsidian_bricks_slab.json b/src/main/resources/assets/betternether/blockstates/blue_obsidian_bricks_slab.json new file mode 100644 index 0000000..b1cc9d7 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/blue_obsidian_bricks_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/blue_obsidian_bricks_half_slab" }, + "type=top": { "model": "betternether:block/blue_obsidian_bricks_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/blue_obsidian_bricks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/blue_obsidian_bricks_stairs.json b/src/main/resources/assets/betternether/blockstates/blue_obsidian_bricks_stairs.json new file mode 100644 index 0000000..77266d1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/blue_obsidian_bricks_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/blue_obsidian_bricks_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/blue_obsidian_bricks_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/blue_obsidian_bricks_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/blue_obsidian_bricks_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/blue_obsidian_bricks_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/blue_obsidian_bricks_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/blue_obsidian_bricks_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/blue_obsidian_bricks_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/blue_obsidian_bricks_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/blue_obsidian_bricks_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/blue_obsidian_glass.json b/src/main/resources/assets/betternether/blockstates/blue_obsidian_glass.json new file mode 100644 index 0000000..c246cc1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/blue_obsidian_glass.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/blue_obsidian_glass" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/blue_obsidian_glass_pane.json b/src/main/resources/assets/betternether/blockstates/blue_obsidian_glass_pane.json new file mode 100644 index 0000000..d55772d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/blue_obsidian_glass_pane.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/blue_obsidian_glass_pane_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/blue_obsidian_glass_pane_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/blue_obsidian_glass_pane_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/blue_obsidian_glass_pane_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/blue_obsidian_glass_pane_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/blue_obsidian_glass_pane_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/blue_obsidian_glass_pane_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/blue_obsidian_glass_pane_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/blue_obsidian_glass_pane_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/blue_obsidian_tile.json b/src/main/resources/assets/betternether/blockstates/blue_obsidian_tile.json new file mode 100644 index 0000000..aa60740 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/blue_obsidian_tile.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/blue_obsidian_tile" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/blue_obsidian_tile_slab.json b/src/main/resources/assets/betternether/blockstates/blue_obsidian_tile_slab.json new file mode 100644 index 0000000..26ca88b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/blue_obsidian_tile_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/blue_obsidian_tile_half_slab" }, + "type=top": { "model": "betternether:block/blue_obsidian_tile_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/blue_obsidian_tile_small" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/blue_obsidian_tile_small.json b/src/main/resources/assets/betternether/blockstates/blue_obsidian_tile_small.json new file mode 100644 index 0000000..fb303eb --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/blue_obsidian_tile_small.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/blue_obsidian_tile_small" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/blue_obsidian_tile_stairs.json b/src/main/resources/assets/betternether/blockstates/blue_obsidian_tile_stairs.json new file mode 100644 index 0000000..5484ed0 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/blue_obsidian_tile_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/blue_obsidian_tile_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/blue_obsidian_tile_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/blue_obsidian_tile_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/blue_obsidian_tile_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/blue_obsidian_tile_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/blue_obsidian_tile_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/blue_obsidian_tile_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/blue_obsidian_tile_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/blue_obsidian_tile_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/blue_obsidian_tile_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/blue_obsidian_tile_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/blue_obsidian_tile_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/blue_obsidian_tile_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/blue_obsidian_tile_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bone_block.json b/src/main/resources/assets/betternether/blockstates/bone_block.json new file mode 100644 index 0000000..bb8c68c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bone_block.json @@ -0,0 +1,14 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/bone_block" }, + { "model": "betternether:block/bone_block", "x": 180 }, + { "model": "betternether:block/bone_block", "y": 180 }, + { "model": "betternether:block/bone_block", "z": 180 }, + { "model": "betternether:block/bone_block", "x": 180, "y": 180 }, + { "model": "betternether:block/bone_block", "z": 180, "y": 180 }, + { "model": "betternether:block/bone_block", "x": 180, "z": 180 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bone_button.json b/src/main/resources/assets/betternether/blockstates/bone_button.json new file mode 100644 index 0000000..bf6977d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bone_button.json @@ -0,0 +1,28 @@ +{ + "variants": { + "face=floor,facing=east,powered=false": { "model": "betternether:block/bone_button", "y": 90 }, + "face=floor,facing=west,powered=false": { "model": "betternether:block/bone_button", "y": 270 }, + "face=floor,facing=south,powered=false": { "model": "betternether:block/bone_button", "y": 180 }, + "face=floor,facing=north,powered=false": { "model": "betternether:block/bone_button" }, + "face=wall,facing=east,powered=false": { "model": "betternether:block/bone_button", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=false": { "model": "betternether:block/bone_button", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=false": { "model": "betternether:block/bone_button", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=false": { "model": "betternether:block/bone_button", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=false": { "model": "betternether:block/bone_button", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=false": { "model": "betternether:block/bone_button", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=false": { "model": "betternether:block/bone_button", "x": 180 }, + "face=ceiling,facing=north,powered=false": { "model": "betternether:block/bone_button", "x": 180, "y": 180 }, + "face=floor,facing=east,powered=true": { "model": "betternether:block/bone_button_pressed", "y": 90 }, + "face=floor,facing=west,powered=true": { "model": "betternether:block/bone_button_pressed", "y": 270 }, + "face=floor,facing=south,powered=true": { "model": "betternether:block/bone_button_pressed", "y": 180 }, + "face=floor,facing=north,powered=true": { "model": "betternether:block/bone_button_pressed" }, + "face=wall,facing=east,powered=true": { "model": "betternether:block/bone_button_pressed", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=true": { "model": "betternether:block/bone_button_pressed", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=true": { "model": "betternether:block/bone_button_pressed", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=true": { "model": "betternether:block/bone_button_pressed", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=true": { "model": "betternether:block/bone_button_pressed", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=true": { "model": "betternether:block/bone_button_pressed", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=true": { "model": "betternether:block/bone_button_pressed", "x": 180 }, + "face=ceiling,facing=north,powered=true": { "model": "betternether:block/bone_button_pressed", "x": 180, "y": 180 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/bone_cincinnasite_door.json b/src/main/resources/assets/betternether/blockstates/bone_cincinnasite_door.json new file mode 100644 index 0000000..b92ec46 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bone_cincinnasite_door.json @@ -0,0 +1,68 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_cin_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_cin_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_cin_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_cin_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_cin_door_bottom_rh" }, + "facing=south,half=lower,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_cin_door_bottom_rh", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_cin_door_bottom_rh", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_cin_door_bottom_rh", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_cin_door_bottom_rh", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_cin_door_bottom_rh", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_cin_door_bottom_rh", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_cin_door_bottom_rh" }, + "facing=east,half=lower,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_cin_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_cin_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_cin_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_cin_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_cin_door_top" }, + "facing=south,half=upper,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_cin_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_cin_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_cin_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_cin_door_top_rh" }, + "facing=south,half=upper,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_cin_door_top_rh", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_cin_door_top_rh", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_cin_door_top_rh", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_cin_door_top_rh", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_cin_door_top_rh", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_cin_door_top_rh", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_cin_door_top_rh" }, + "facing=east,half=upper,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_cin_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_cin_door_top" }, + "facing=west,half=upper,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_cin_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_cin_door_top", "y": 180 }, + "facing=east,half=lower,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_cin_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_cin_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_cin_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_cin_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_cin_door_bottom_rh" }, + "facing=south,half=lower,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_cin_door_bottom_rh", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_cin_door_bottom_rh", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_cin_door_bottom_rh", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_cin_door_bottom_rh", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_cin_door_bottom_rh", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_cin_door_bottom_rh", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_cin_door_bottom_rh" }, + "facing=east,half=lower,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_cin_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_cin_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_cin_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_cin_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_cin_door_top" }, + "facing=south,half=upper,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_cin_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_cin_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_cin_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_cin_door_top_rh" }, + "facing=south,half=upper,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_cin_door_top_rh", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_cin_door_top_rh", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_cin_door_top_rh", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_cin_door_top_rh", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_cin_door_top_rh", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_cin_door_top_rh", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_cin_door_top_rh" }, + "facing=east,half=upper,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_cin_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_cin_door_top" }, + "facing=west,half=upper,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_cin_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_cin_door_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bone_grass.json b/src/main/resources/assets/betternether/blockstates/bone_grass.json new file mode 100644 index 0000000..034f9f9 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bone_grass.json @@ -0,0 +1,13 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/bone_grass_1" }, + { "model": "betternether:block/bone_grass_2" }, + { "model": "betternether:block/bone_grass_3" }, + { "model": "betternether:block/bone_grass_4" }, + { "model": "betternether:block/bone_grass_5" }, + { "model": "betternether:block/bone_grass_6" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/bone_mushroom.json b/src/main/resources/assets/betternether/blockstates/bone_mushroom.json new file mode 100644 index 0000000..465f39a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bone_mushroom.json @@ -0,0 +1,35 @@ +{ + "variants": { + "age=2,facing=up": [ + { "model": "betternether:block/bone_mushroom_floor" }, + { "model": "betternether:block/bone_mushroom_floor", "y": 90 }, + { "model": "betternether:block/bone_mushroom_floor", "y": 180 }, + { "model": "betternether:block/bone_mushroom_floor", "y": 270 } + ], + "age=2,facing=east": { "model": "betternether:block/bone_mushroom_wall", "y": 270 }, + "age=2,facing=south": { "model": "betternether:block/bone_mushroom_wall" }, + "age=2,facing=west": { "model": "betternether:block/bone_mushroom_wall", "y": 90 }, + "age=2,facing=north": { "model": "betternether:block/bone_mushroom_wall", "y": 180 }, + "age=1,facing=up": [ + { "model": "betternether:block/bone_mushroom_floor_pre" }, + { "model": "betternether:block/bone_mushroom_floor_pre", "y": 90 }, + { "model": "betternether:block/bone_mushroom_floor_pre", "y": 180 }, + { "model": "betternether:block/bone_mushroom_floor_pre", "y": 270 } + ], + "age=1,facing=east": { "model": "betternether:block/bone_mushroom_wall_pre", "y": 270 }, + "age=1,facing=south": { "model": "betternether:block/bone_mushroom_wall_pre" }, + "age=1,facing=west": { "model": "betternether:block/bone_mushroom_wall_pre", "y": 90 }, + "age=1,facing=north": { "model": "betternether:block/bone_mushroom_wall_pre", "y": 180 }, + "age=0,facing=up": [ + { "model": "betternether:block/bone_mushroom_floor_young" }, + { "model": "betternether:block/bone_mushroom_floor_young", "y": 90 }, + { "model": "betternether:block/bone_mushroom_floor_young", "y": 180 }, + { "model": "betternether:block/bone_mushroom_floor_young", "y": 270 } + ], + "age=0,facing=east": { "model": "betternether:block/bone_mushroom_wall_young", "y": 270 }, + "age=0,facing=south": { "model": "betternether:block/bone_mushroom_wall_young" }, + "age=0,facing=west": { "model": "betternether:block/bone_mushroom_wall_young", "y": 90 }, + "age=0,facing=north": { "model": "betternether:block/bone_mushroom_wall_young", "y": 180 }, + "facing=down": { "model": "betternether:block/bone_mushroom_floor" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bone_plate.json b/src/main/resources/assets/betternether/blockstates/bone_plate.json new file mode 100644 index 0000000..70e7de8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bone_plate.json @@ -0,0 +1,6 @@ +{ + "variants": { + "powered=false": { "model": "betternether:block/bone_pressure_plate_up" }, + "powered=true": { "model": "betternether:block/bone_pressure_plate_down" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bone_reed_door.json b/src/main/resources/assets/betternether/blockstates/bone_reed_door.json new file mode 100644 index 0000000..1221363 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bone_reed_door.json @@ -0,0 +1,68 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_reed_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_reed_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_reed_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_reed_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_reed_door_bottom_rh" }, + "facing=south,half=lower,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_reed_door_bottom_rh", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_reed_door_bottom_rh", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_reed_door_bottom_rh", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_reed_door_bottom_rh", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_reed_door_bottom_rh", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_reed_door_bottom_rh", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_reed_door_bottom_rh" }, + "facing=east,half=lower,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_reed_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_reed_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_reed_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_reed_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_reed_door_top" }, + "facing=south,half=upper,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_reed_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_reed_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false,powered=false": { "model": "betternether:block/bone_reed_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_reed_door_top_rh" }, + "facing=south,half=upper,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_reed_door_top_rh", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_reed_door_top_rh", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false,powered=false": { "model": "betternether:block/bone_reed_door_top_rh", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_reed_door_top_rh", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_reed_door_top_rh", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_reed_door_top_rh", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true,powered=false": { "model": "betternether:block/bone_reed_door_top_rh" }, + "facing=east,half=upper,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_reed_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_reed_door_top" }, + "facing=west,half=upper,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_reed_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true,powered=false": { "model": "betternether:block/bone_reed_door_top", "y": 180 }, + "facing=east,half=lower,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_reed_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_reed_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_reed_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_reed_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_reed_door_bottom_rh" }, + "facing=south,half=lower,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_reed_door_bottom_rh", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_reed_door_bottom_rh", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_reed_door_bottom_rh", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_reed_door_bottom_rh", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_reed_door_bottom_rh", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_reed_door_bottom_rh", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_reed_door_bottom_rh" }, + "facing=east,half=lower,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_reed_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_reed_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_reed_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_reed_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_reed_door_top" }, + "facing=south,half=upper,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_reed_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_reed_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false,powered=true": { "model": "betternether:block/bone_reed_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_reed_door_top_rh" }, + "facing=south,half=upper,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_reed_door_top_rh", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_reed_door_top_rh", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false,powered=true": { "model": "betternether:block/bone_reed_door_top_rh", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_reed_door_top_rh", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_reed_door_top_rh", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_reed_door_top_rh", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true,powered=true": { "model": "betternether:block/bone_reed_door_top_rh" }, + "facing=east,half=upper,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_reed_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_reed_door_top" }, + "facing=west,half=upper,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_reed_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true,powered=true": { "model": "betternether:block/bone_reed_door_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bone_slab.json b/src/main/resources/assets/betternether/blockstates/bone_slab.json new file mode 100644 index 0000000..caac9b6 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bone_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/bone_half_slab" }, + "type=top": { "model": "betternether:block/bone_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/bone_double_slab" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bone_stairs.json b/src/main/resources/assets/betternether/blockstates/bone_stairs.json new file mode 100644 index 0000000..cfa6f6a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bone_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/bone_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/bone_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/bone_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/bone_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/bone_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/bone_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/bone_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/bone_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/bone_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/bone_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/bone_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/bone_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/bone_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/bone_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/bone_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/bone_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/bone_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/bone_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/bone_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/bone_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/bone_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/bone_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/bone_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/bone_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/bone_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/bone_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/bone_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/bone_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/bone_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/bone_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/bone_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/bone_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/bone_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/bone_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/bone_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/bone_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/bone_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/bone_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/bone_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/bone_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bone_stalactite.json b/src/main/resources/assets/betternether/blockstates/bone_stalactite.json new file mode 100644 index 0000000..4f4f932 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bone_stalactite.json @@ -0,0 +1,13 @@ +{ + "variants": + { + "size=0": { "model": "betternether:block/bone_stalactite_0" }, + "size=1": { "model": "betternether:block/bone_stalactite_1" }, + "size=2": { "model": "betternether:block/bone_stalactite_2" }, + "size=3": { "model": "betternether:block/bone_stalactite_3" }, + "size=4": { "model": "betternether:block/bone_stalactite_4" }, + "size=5": { "model": "betternether:block/bone_stalactite_5" }, + "size=6": { "model": "betternether:block/bone_stalactite_6" }, + "size=7": { "model": "betternether:block/bone_stalactite_7" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/bone_tile.json b/src/main/resources/assets/betternether/blockstates/bone_tile.json new file mode 100644 index 0000000..8e2d536 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bone_tile.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/bone_tile" } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bone_wall.json b/src/main/resources/assets/betternether/blockstates/bone_wall.json new file mode 100644 index 0000000..0300020 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bone_wall.json @@ -0,0 +1,31 @@ +{ + "multipart": [ + { "when": { "up": "true" }, + "apply": { "model": "betternether:block/bone_post" } + }, + { "when": { "north": "low" }, + "apply": { "model": "betternether:block/bone_wall_ns", "uvlock": true } + }, + { "when": { "east": "low" }, + "apply": { "model": "betternether:block/bone_wall_ew", "y": 90, "uvlock": true } + }, + { "when": { "south": "low" }, + "apply": { "model": "betternether:block/bone_wall_ns", "y": 180, "uvlock": true } + }, + { "when": { "west": "low" }, + "apply": { "model": "betternether:block/bone_wall_ew", "y": 270, "uvlock": true } + }, + { "when": { "north": "tall" }, + "apply": { "model": "betternether:block/bone_wall_ns", "uvlock": true } + }, + { "when": { "east": "tall" }, + "apply": { "model": "betternether:block/bone_wall_ew", "y": 90, "uvlock": true } + }, + { "when": { "south": "tall" }, + "apply": { "model": "betternether:block/bone_wall_ns", "y": 180, "uvlock": true } + }, + { "when": { "west": "tall" }, + "apply": { "model": "betternether:block/bone_wall_ew", "y": 270, "uvlock": true } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/brick_pot.json b/src/main/resources/assets/betternether/blockstates/brick_pot.json new file mode 100644 index 0000000..205c191 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/brick_pot.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/brick_pot" } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bricks_fire_bowl.json b/src/main/resources/assets/betternether/blockstates/bricks_fire_bowl.json new file mode 100644 index 0000000..b435ea5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bricks_fire_bowl.json @@ -0,0 +1,6 @@ +{ + "variants": { + "fire=false": { "model": "betternether:block/bricks_fire_bowl_off" }, + "fire=true": { "model": "betternether:block/bricks_fire_bowl_on" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/bricks_fire_bowl_soul.json b/src/main/resources/assets/betternether/blockstates/bricks_fire_bowl_soul.json new file mode 100644 index 0000000..b8321e8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/bricks_fire_bowl_soul.json @@ -0,0 +1,6 @@ +{ + "variants": { + "fire=false": { "model": "betternether:block/bricks_fire_bowl_soul_off" }, + "fire=true": { "model": "betternether:block/bricks_fire_bowl_soul_on" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/brown_large_mushroom.json b/src/main/resources/assets/betternether/blockstates/brown_large_mushroom.json new file mode 100644 index 0000000..2afbbde --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/brown_large_mushroom.json @@ -0,0 +1,33 @@ +{ + "variants": { + "shape=top": { "model": "betternether:block/brown_mushroom_top_center" }, + "shape=side_n": { "model": "betternether:block/brown_mushroom_top_side" }, + "shape=side_s": { "model": "betternether:block/brown_mushroom_top_side", "y": 180, "uvlock": true }, + "shape=side_e": { "model": "betternether:block/brown_mushroom_top_side", "y": 90, "uvlock": true }, + "shape=side_w": { "model": "betternether:block/brown_mushroom_top_side", "y": 270, "uvlock": true }, + "shape=corner_n": { "model": "betternether:block/brown_mushroom_top_corner", "y": 90, "uvlock": true }, + "shape=corner_s": { "model": "betternether:block/brown_mushroom_top_corner", "y": 270, "uvlock": true }, + "shape=corner_e": { "model": "betternether:block/brown_mushroom_top_corner", "y": 180, "uvlock": true }, + "shape=corner_w": { "model": "betternether:block/brown_mushroom_top_corner" }, + "shape=middle": [ + { "model": "betternether:block/brown_mushroom_middle_01" }, + { "model": "betternether:block/brown_mushroom_middle_02" }, + { "model": "betternether:block/brown_mushroom_middle_03" }, + { "model": "betternether:block/brown_mushroom_middle_01", "y": 90, "uvlock": true }, + { "model": "betternether:block/brown_mushroom_middle_02", "y": 90, "uvlock": true }, + { "model": "betternether:block/brown_mushroom_middle_03", "y": 90, "uvlock": true }, + { "model": "betternether:block/brown_mushroom_middle_01", "y": 180, "uvlock": true }, + { "model": "betternether:block/brown_mushroom_middle_02", "y": 180, "uvlock": true }, + { "model": "betternether:block/brown_mushroom_middle_03", "y": 180, "uvlock": true }, + { "model": "betternether:block/brown_mushroom_middle_01", "y": 270, "uvlock": true }, + { "model": "betternether:block/brown_mushroom_middle_02", "y": 270, "uvlock": true }, + { "model": "betternether:block/brown_mushroom_middle_03", "y": 270, "uvlock": true } + ], + "shape=bottom": [ + { "model": "betternether:block/brown_mushroom_bottom" }, + { "model": "betternether:block/brown_mushroom_bottom", "y": 90, "uvlock": true }, + { "model": "betternether:block/brown_mushroom_bottom", "y": 180, "uvlock": true }, + { "model": "betternether:block/brown_mushroom_bottom", "y": 270, "uvlock": true } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/ceiling_mushrooms.json b/src/main/resources/assets/betternether/blockstates/ceiling_mushrooms.json new file mode 100644 index 0000000..ecf0165 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/ceiling_mushrooms.json @@ -0,0 +1,10 @@ +{ + "variants": { + "": [ + { "model": "betternether:block/ceiling_mushrooms" }, + { "model": "betternether:block/ceiling_mushrooms", "y": 90 }, + { "model": "betternether:block/ceiling_mushrooms", "y": 180 }, + { "model": "betternether:block/ceiling_mushrooms", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_acacia.json b/src/main/resources/assets/betternether/blockstates/chair_acacia.json new file mode 100644 index 0000000..64d4c45 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_acacia.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_acacia", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_acacia", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_acacia", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_acacia" }, + "top=true": { "model": "betternether:block/chair_acacia_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_anchor_tree.json b/src/main/resources/assets/betternether/blockstates/chair_anchor_tree.json new file mode 100644 index 0000000..5318be8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_anchor_tree.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_anchor_tree", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_anchor_tree", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_anchor_tree", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_anchor_tree" }, + "top=true": { "model": "betternether:block/chair_anchor_tree_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_birch.json b/src/main/resources/assets/betternether/blockstates/chair_birch.json new file mode 100644 index 0000000..68e518d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_birch.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_birch", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_birch", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_birch", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_birch" }, + "top=true": { "model": "betternether:block/chair_birch_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_cincinnasite.json b/src/main/resources/assets/betternether/blockstates/chair_cincinnasite.json new file mode 100644 index 0000000..3bd3dd1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_cincinnasite.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_cincinnasite", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_cincinnasite", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_cincinnasite", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_cincinnasite" }, + "top=true": { "model": "betternether:block/chair_cincinnasite_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_crimson.json b/src/main/resources/assets/betternether/blockstates/chair_crimson.json new file mode 100644 index 0000000..849c3cd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_crimson.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_crimson", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_crimson", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_crimson", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_crimson" }, + "top=true": { "model": "betternether:block/empty_crimson" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_dark_oak.json b/src/main/resources/assets/betternether/blockstates/chair_dark_oak.json new file mode 100644 index 0000000..e5c5930 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_dark_oak.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_dark_oak", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_dark_oak", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_dark_oak", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_dark_oak" }, + "top=true": { "model": "betternether:block/chair_dark_oak_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_jungle.json b/src/main/resources/assets/betternether/blockstates/chair_jungle.json new file mode 100644 index 0000000..fbe3336 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_jungle.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_jungle", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_jungle", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_jungle", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_jungle" }, + "top=true": { "model": "betternether:block/chair_jungle_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_mushroom.json b/src/main/resources/assets/betternether/blockstates/chair_mushroom.json new file mode 100644 index 0000000..8ed7a2f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_mushroom.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_mushroom", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_mushroom", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_mushroom", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_mushroom" }, + "top=true": { "model": "betternether:block/empty_mushroom" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_mushroom_fir.json b/src/main/resources/assets/betternether/blockstates/chair_mushroom_fir.json new file mode 100644 index 0000000..53d8425 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_mushroom_fir.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_mushroom_fir", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_mushroom_fir", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_mushroom_fir", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_mushroom_fir" }, + "top=true": { "model": "betternether:block/chair_mushroom_fir_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_nether_sakura.json b/src/main/resources/assets/betternether/blockstates/chair_nether_sakura.json new file mode 100644 index 0000000..b5cb9f5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_nether_sakura.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_nether_sakura", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_nether_sakura", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_nether_sakura", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_nether_sakura" }, + "top=true": { "model": "betternether:block/chair_nether_sakura_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_oak.json b/src/main/resources/assets/betternether/blockstates/chair_oak.json new file mode 100644 index 0000000..e900f40 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_oak.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_oak", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_oak", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_oak", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_oak" }, + "top=true": { "model": "betternether:block/chair_oak_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_reeds.json b/src/main/resources/assets/betternether/blockstates/chair_reeds.json new file mode 100644 index 0000000..0357fb4 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_reeds.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_reeds", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_reeds", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_reeds", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_reeds" }, + "top=true": { "model": "betternether:block/chair_reeds_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_rubeus.json b/src/main/resources/assets/betternether/blockstates/chair_rubeus.json new file mode 100644 index 0000000..eadc1de --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_rubeus.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_rubeus", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_rubeus", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_rubeus", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_rubeus" }, + "top=true": { "model": "betternether:block/chair_rubeus_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_spruce.json b/src/main/resources/assets/betternether/blockstates/chair_spruce.json new file mode 100644 index 0000000..436685a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_spruce.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_spruce", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_spruce", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_spruce", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_spruce" }, + "top=true": { "model": "betternether:block/chair_spruce_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_stalagnate.json b/src/main/resources/assets/betternether/blockstates/chair_stalagnate.json new file mode 100644 index 0000000..3ece46b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_stalagnate.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_stalagnate", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_stalagnate", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_stalagnate", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_stalagnate" }, + "top=true": { "model": "betternether:block/chair_stalagnate_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_warped.json b/src/main/resources/assets/betternether/blockstates/chair_warped.json new file mode 100644 index 0000000..d61b6b1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_warped.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_warped", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_warped", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_warped", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_warped" }, + "top=true": { "model": "betternether:block/empty_warped" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_wart.json b/src/main/resources/assets/betternether/blockstates/chair_wart.json new file mode 100644 index 0000000..1d4b8bb --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_wart.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_wart", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_wart", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_wart", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_wart" }, + "top=true": { "model": "betternether:block/chair_wart_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chair_willow.json b/src/main/resources/assets/betternether/blockstates/chair_willow.json new file mode 100644 index 0000000..cacfb26 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chair_willow.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=east,top=false": { "model": "betternether:block/chair_willow", "y": 90 }, + "facing=west,top=false": { "model": "betternether:block/chair_willow", "y": 270 }, + "facing=south,top=false": { "model": "betternether:block/chair_willow", "y": 180 }, + "facing=north,top=false": { "model": "betternether:block/chair_willow" }, + "top=true": { "model": "betternether:block/chair_willow_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chest_anchor_tree.json b/src/main/resources/assets/betternether/blockstates/chest_anchor_tree.json new file mode 100644 index 0000000..70beb45 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chest_anchor_tree.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/empty_anchor_tree" + } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chest_crimson.json b/src/main/resources/assets/betternether/blockstates/chest_crimson.json new file mode 100644 index 0000000..6c20865 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chest_crimson.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/empty_crimson" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/chest_mushroom.json b/src/main/resources/assets/betternether/blockstates/chest_mushroom.json new file mode 100644 index 0000000..3a8d772 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chest_mushroom.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/empty_mushroom" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/chest_mushroom_fir.json b/src/main/resources/assets/betternether/blockstates/chest_mushroom_fir.json new file mode 100644 index 0000000..dc86c4a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chest_mushroom_fir.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/empty_mushroom_fir" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/chest_nether_sakura.json b/src/main/resources/assets/betternether/blockstates/chest_nether_sakura.json new file mode 100644 index 0000000..8512515 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chest_nether_sakura.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/empty_nether_sakura" + } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chest_of_drawers.json b/src/main/resources/assets/betternether/blockstates/chest_of_drawers.json new file mode 100644 index 0000000..028f381 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chest_of_drawers.json @@ -0,0 +1,12 @@ +{ + "variants": { + "facing=north,open=true": { "model": "betternether:block/chest_of_drawers_open", "y": 180 }, + "facing=south,open=true": { "model": "betternether:block/chest_of_drawers_open" }, + "facing=east,open=true": { "model": "betternether:block/chest_of_drawers_open", "y": 270 }, + "facing=west,open=true": { "model": "betternether:block/chest_of_drawers_open", "y": 90 }, + "facing=north,open=false": { "model": "betternether:block/chest_of_drawers", "y": 180 }, + "facing=south,open=false": { "model": "betternether:block/chest_of_drawers" }, + "facing=east,open=false": { "model": "betternether:block/chest_of_drawers", "y": 270 }, + "facing=west,open=false": { "model": "betternether:block/chest_of_drawers", "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/chest_reed.json b/src/main/resources/assets/betternether/blockstates/chest_reed.json new file mode 100644 index 0000000..132d5eb --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chest_reed.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/empty_reed" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/chest_rubeus.json b/src/main/resources/assets/betternether/blockstates/chest_rubeus.json new file mode 100644 index 0000000..05b84bd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chest_rubeus.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/empty_rubeus" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/chest_stalagnate.json b/src/main/resources/assets/betternether/blockstates/chest_stalagnate.json new file mode 100644 index 0000000..8a5ccd8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chest_stalagnate.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/empty_stalagnate" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/chest_warped.json b/src/main/resources/assets/betternether/blockstates/chest_warped.json new file mode 100644 index 0000000..ad1a689 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chest_warped.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/empty_warped" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/chest_wart.json b/src/main/resources/assets/betternether/blockstates/chest_wart.json new file mode 100644 index 0000000..06a9df9 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chest_wart.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/empty_wart" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/chest_willow.json b/src/main/resources/assets/betternether/blockstates/chest_willow.json new file mode 100644 index 0000000..0e375b8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/chest_willow.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/empty_willow" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_anvil.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_anvil.json new file mode 100644 index 0000000..1c5d000 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_anvil.json @@ -0,0 +1,19 @@ +{ + "variants": { + "facing=east": { + "model": "betternether:block/cincinnasite_anvil", + "y": 270 + }, + "facing=north": { + "model": "betternether:block/cincinnasite_anvil", + "y": 180 + }, + "facing=south": { + "model": "betternether:block/cincinnasite_anvil" + }, + "facing=west": { + "model": "betternether:block/cincinnasite_anvil", + "y": 90 + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_bars.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_bars.json new file mode 100644 index 0000000..cb0853d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_bars.json @@ -0,0 +1,20 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/cincinnasite_bars_post" }}, + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/cincinnasite_bars_post", "uvlock": true } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/cincinnasite_bars_side", "uvlock": true } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/cincinnasite_bars_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/cincinnasite_bars_side_alt", "uvlock": true } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/cincinnasite_bars_side_alt", "y": 90, "uvlock": true } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_block.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_block.json new file mode 100644 index 0000000..a3c3ffa --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_block.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/cincinnasite_block" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_brick_plate.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_brick_plate.json new file mode 100644 index 0000000..224d899 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_brick_plate.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/cincinnasite_brick_plate" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_bricks.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_bricks.json new file mode 100644 index 0000000..eda934a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_bricks.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/cincinnasite_bricks" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_bricks_pillar.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_bricks_pillar.json new file mode 100644 index 0000000..337c0a7 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_bricks_pillar.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/cincinnasite_bricks_pillar" }, + "axis=z": { "model": "betternether:block/cincinnasite_bricks_pillar", "x": 90 }, + "axis=x": { "model": "betternether:block/cincinnasite_bricks_pillar", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_button.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_button.json new file mode 100644 index 0000000..30bc509 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_button.json @@ -0,0 +1,28 @@ +{ + "variants": { + "face=floor,facing=east,powered=false": { "model": "betternether:block/cincinnasite_button", "y": 90 }, + "face=floor,facing=west,powered=false": { "model": "betternether:block/cincinnasite_button", "y": 270 }, + "face=floor,facing=south,powered=false": { "model": "betternether:block/cincinnasite_button", "y": 180 }, + "face=floor,facing=north,powered=false": { "model": "betternether:block/cincinnasite_button" }, + "face=wall,facing=east,powered=false": { "model": "betternether:block/cincinnasite_button", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=false": { "model": "betternether:block/cincinnasite_button", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=false": { "model": "betternether:block/cincinnasite_button", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=false": { "model": "betternether:block/cincinnasite_button", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=false": { "model": "betternether:block/cincinnasite_button", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=false": { "model": "betternether:block/cincinnasite_button", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=false": { "model": "betternether:block/cincinnasite_button", "x": 180 }, + "face=ceiling,facing=north,powered=false": { "model": "betternether:block/cincinnasite_button", "x": 180, "y": 180 }, + "face=floor,facing=east,powered=true": { "model": "betternether:block/cincinnasite_button_pressed", "y": 90 }, + "face=floor,facing=west,powered=true": { "model": "betternether:block/cincinnasite_button_pressed", "y": 270 }, + "face=floor,facing=south,powered=true": { "model": "betternether:block/cincinnasite_button_pressed", "y": 180 }, + "face=floor,facing=north,powered=true": { "model": "betternether:block/cincinnasite_button_pressed" }, + "face=wall,facing=east,powered=true": { "model": "betternether:block/cincinnasite_button_pressed", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=true": { "model": "betternether:block/cincinnasite_button_pressed", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=true": { "model": "betternether:block/cincinnasite_button_pressed", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=true": { "model": "betternether:block/cincinnasite_button_pressed", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=true": { "model": "betternether:block/cincinnasite_button_pressed", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=true": { "model": "betternether:block/cincinnasite_button_pressed", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=true": { "model": "betternether:block/cincinnasite_button_pressed", "x": 180 }, + "face=ceiling,facing=north,powered=true": { "model": "betternether:block/cincinnasite_button_pressed", "x": 180, "y": 180 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_carved.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_carved.json new file mode 100644 index 0000000..e8d4370 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_carved.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/cincinnasite_carved" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_chain.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_chain.json new file mode 100644 index 0000000..82b17ef --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_chain.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "betternether:block/cincinnasite_chain", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "betternether:block/cincinnasite_chain" + }, + "axis=z": { + "model": "betternether:block/cincinnasite_chain", + "x": 90 + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_fire_bowl.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_fire_bowl.json new file mode 100644 index 0000000..d59d423 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_fire_bowl.json @@ -0,0 +1,6 @@ +{ + "variants": { + "fire=false": { "model": "betternether:block/cincinnasite_fire_bowl_off" }, + "fire=true": { "model": "betternether:block/cincinnasite_fire_bowl_on" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_fire_bowl_soul.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_fire_bowl_soul.json new file mode 100644 index 0000000..df7b67e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_fire_bowl_soul.json @@ -0,0 +1,6 @@ +{ + "variants": { + "fire=false": { "model": "betternether:block/cincinnasite_fire_bowl_soul_off" }, + "fire=true": { "model": "betternether:block/cincinnasite_fire_bowl_soul_on" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_forge.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_forge.json new file mode 100644 index 0000000..4ffd7a3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_forge.json @@ -0,0 +1,12 @@ +{ + "variants": { + "lit=false,facing=north": { "model": "betternether:block/cincinnasite_forge" }, + "lit=false,facing=south": { "model": "betternether:block/cincinnasite_forge", "y": 180 }, + "lit=false,facing=west": { "model": "betternether:block/cincinnasite_forge", "y": 270 }, + "lit=false,facing=east": { "model": "betternether:block/cincinnasite_forge", "y": 90 }, + "lit=true,facing=north": { "model": "betternether:block/cincinnasite_forge_on" }, + "lit=true,facing=south": { "model": "betternether:block/cincinnasite_forge_on", "y": 180 }, + "lit=true,facing=west": { "model": "betternether:block/cincinnasite_forge_on", "y": 270 }, + "lit=true,facing=east": { "model": "betternether:block/cincinnasite_forge_on", "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_forged.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_forged.json new file mode 100644 index 0000000..0685e6e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_forged.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/cincinnasite_forged" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_frame.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_frame.json new file mode 100644 index 0000000..962b211 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_frame.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/cincinnasite_frame" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_lantern.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_lantern.json new file mode 100644 index 0000000..64a2dfd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_lantern.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/cincinnasite_lantern" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_lantern_small.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_lantern_small.json new file mode 100644 index 0000000..97fe06d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_lantern_small.json @@ -0,0 +1,10 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/cincinnasite_lantern_wall", "y": 180 }, + "facing=south": { "model": "betternether:block/cincinnasite_lantern_wall" }, + "facing=east": { "model": "betternether:block/cincinnasite_lantern_wall", "y": 270 }, + "facing=west": { "model": "betternether:block/cincinnasite_lantern_wall", "y": 90 }, + "facing=up": { "model": "betternether:block/cincinnasite_lantern_floor" }, + "facing=down": { "model": "betternether:block/cincinnasite_lantern_ceil" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_ore.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_ore.json new file mode 100644 index 0000000..4230c02 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_ore.json @@ -0,0 +1,23 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/cincinnasite_ore" }, + { "model": "betternether:block/cincinnasite_ore", "y": 90 }, + { "model": "betternether:block/cincinnasite_ore", "y": 180 }, + { "model": "betternether:block/cincinnasite_ore", "y": 270 }, + { "model": "betternether:block/cincinnasite_ore", "x": 90 }, + { "model": "betternether:block/cincinnasite_ore", "x": 90, "y": 90 }, + { "model": "betternether:block/cincinnasite_ore", "x": 90, "y": 180 }, + { "model": "betternether:block/cincinnasite_ore", "x": 90, "y": 270 }, + { "model": "betternether:block/cincinnasite_ore", "x": 180 }, + { "model": "betternether:block/cincinnasite_ore", "x": 180, "y": 90 }, + { "model": "betternether:block/cincinnasite_ore", "x": 180, "y": 180 }, + { "model": "betternether:block/cincinnasite_ore", "x": 180, "y": 270 }, + { "model": "betternether:block/cincinnasite_ore", "x": 270 }, + { "model": "betternether:block/cincinnasite_ore", "x": 270, "y": 90 }, + { "model": "betternether:block/cincinnasite_ore", "x": 270, "y": 180 }, + { "model": "betternether:block/cincinnasite_ore", "x": 270, "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_pedestal.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_pedestal.json new file mode 100644 index 0000000..d88b562 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_pedestal.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/cincinnasite_pedestal" } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_pillar.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_pillar.json new file mode 100644 index 0000000..71a92e7 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_pillar.json @@ -0,0 +1,8 @@ +{ + "variants": { + "shape=top": { "model": "betternether:block/cincinnasite_pillar_top" }, + "shape=bottom": { "model": "betternether:block/cincinnasite_pillar_bottom" }, + "shape=middle": { "model": "betternether:block/cincinnasite_pillar_middle" }, + "shape=small": { "model": "betternether:block/cincinnasite_pillar_small" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_plate.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_plate.json new file mode 100644 index 0000000..073b710 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_plate.json @@ -0,0 +1,6 @@ +{ + "variants": { + "powered=false": { "model": "betternether:block/cincinnasite_pressure_plate_up" }, + "powered=true": { "model": "betternether:block/cincinnasite_pressure_plate_down" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_pot.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_pot.json new file mode 100644 index 0000000..6229107 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_pot.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/cincinnasite_pot" } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_slab.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_slab.json new file mode 100644 index 0000000..7a16373 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/cincinnasite_half_slab" }, + "type=top": { "model": "betternether:block/cincinnasite_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/cincinnasite_double_slab" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_stairs.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_stairs.json new file mode 100644 index 0000000..50ca80e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/cincinnasite_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/cincinnasite_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/cincinnasite_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/cincinnasite_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/cincinnasite_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/cincinnasite_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/cincinnasite_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/cincinnasite_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/cincinnasite_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/cincinnasite_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/cincinnasite_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/cincinnasite_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/cincinnasite_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/cincinnasite_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/cincinnasite_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/cincinnasite_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/cincinnasite_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/cincinnasite_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/cincinnasite_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/cincinnasite_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/cincinnasite_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/cincinnasite_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/cincinnasite_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/cincinnasite_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/cincinnasite_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/cincinnasite_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/cincinnasite_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/cincinnasite_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/cincinnasite_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/cincinnasite_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/cincinnasite_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/cincinnasite_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/cincinnasite_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/cincinnasite_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/cincinnasite_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/cincinnasite_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/cincinnasite_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/cincinnasite_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/cincinnasite_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/cincinnasite_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_tile_large.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_tile_large.json new file mode 100644 index 0000000..827716c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_tile_large.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/cincinnasite_tile_large" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_tile_small.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_tile_small.json new file mode 100644 index 0000000..67f262a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_tile_small.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/cincinnasite_tile_small" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/cincinnasite_wall.json b/src/main/resources/assets/betternether/blockstates/cincinnasite_wall.json new file mode 100644 index 0000000..e73101b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/cincinnasite_wall.json @@ -0,0 +1,31 @@ +{ + "multipart": [ + { "when": { "up": "true" }, + "apply": { "model": "betternether:block/cincinnasite_post" } + }, + { "when": { "north": "low" }, + "apply": { "model": "betternether:block/cincinnasite_wall_side", "uvlock": true } + }, + { "when": { "east": "low" }, + "apply": { "model": "betternether:block/cincinnasite_wall_side", "y": 90, "uvlock": true } + }, + { "when": { "south": "low" }, + "apply": { "model": "betternether:block/cincinnasite_wall_side", "y": 180, "uvlock": true } + }, + { "when": { "west": "low" }, + "apply": { "model": "betternether:block/cincinnasite_wall_side", "y": 270, "uvlock": true } + }, + { "when": { "north": "tall" }, + "apply": { "model": "betternether:block/cincinnasite_wall_side", "uvlock": true } + }, + { "when": { "east": "tall" }, + "apply": { "model": "betternether:block/cincinnasite_wall_side", "y": 90, "uvlock": true } + }, + { "when": { "south": "tall" }, + "apply": { "model": "betternether:block/cincinnasite_wall_side", "y": 180, "uvlock": true } + }, + { "when": { "west": "tall" }, + "apply": { "model": "betternether:block/cincinnasite_wall_side", "y": 270, "uvlock": true } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/common_bark.json b/src/main/resources/assets/betternether/blockstates/common_bark.json new file mode 100644 index 0000000..22d3ef7 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/common_bark.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/stalagnate_bark" }, + "axis=z": { "model": "betternether:block/stalagnate_bark", "x": 90 }, + "axis=x": { "model": "betternether:block/stalagnate_bark", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/common_bark_striped.json b/src/main/resources/assets/betternether/blockstates/common_bark_striped.json new file mode 100644 index 0000000..7e6dfdd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/common_bark_striped.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_bark_stalagnate" }, + "axis=z": { "model": "betternether:block/striped_bark_stalagnate", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_bark_stalagnate", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/common_button.json b/src/main/resources/assets/betternether/blockstates/common_button.json new file mode 100644 index 0000000..59794ff --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/common_button.json @@ -0,0 +1,28 @@ +{ + "variants": { + "face=floor,facing=east,powered=false": { "model": "betternether:block/stalagnate_button", "y": 90 }, + "face=floor,facing=west,powered=false": { "model": "betternether:block/stalagnate_button", "y": 270 }, + "face=floor,facing=south,powered=false": { "model": "betternether:block/stalagnate_button", "y": 180 }, + "face=floor,facing=north,powered=false": { "model": "betternether:block/stalagnate_button" }, + "face=wall,facing=east,powered=false": { "model": "betternether:block/stalagnate_button", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=false": { "model": "betternether:block/stalagnate_button", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=false": { "model": "betternether:block/stalagnate_button", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=false": { "model": "betternether:block/stalagnate_button", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=false": { "model": "betternether:block/stalagnate_button", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=false": { "model": "betternether:block/stalagnate_button", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=false": { "model": "betternether:block/stalagnate_button", "x": 180 }, + "face=ceiling,facing=north,powered=false": { "model": "betternether:block/stalagnate_button", "x": 180, "y": 180 }, + "face=floor,facing=east,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "y": 90 }, + "face=floor,facing=west,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "y": 270 }, + "face=floor,facing=south,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "y": 180 }, + "face=floor,facing=north,powered=true": { "model": "betternether:block/stalagnate_button_pressed" }, + "face=wall,facing=east,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "x": 180 }, + "face=ceiling,facing=north,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "x": 180, "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/common_door.json b/src/main/resources/assets/betternether/blockstates/common_door.json new file mode 100644 index 0000000..fc62aee --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/common_door.json @@ -0,0 +1,36 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge" }, + "facing=south,half=lower,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge" }, + "facing=east,half=lower,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_top" }, + "facing=south,half=upper,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_top_hinge" }, + "facing=south,half=upper,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_top_hinge", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_top_hinge", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_top_hinge", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_top_hinge", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_top_hinge", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_top_hinge", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_top_hinge" }, + "facing=east,half=upper,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_top" }, + "facing=west,half=upper,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/common_fence.json b/src/main/resources/assets/betternether/blockstates/common_fence.json new file mode 100644 index 0000000..b44fe52 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/common_fence.json @@ -0,0 +1,17 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/stalagnate_fence_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/stalagnate_fence_side", "uvlock": true } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/stalagnate_fence_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/stalagnate_fence_side", "y": 180, "uvlock": true } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/stalagnate_fence_side", "y": 270, "uvlock": true } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/common_gate.json b/src/main/resources/assets/betternether/blockstates/common_gate.json new file mode 100644 index 0000000..2521ddd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/common_gate.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=south,in_wall=false,open=false": { "model": "betternether:block/stalagnate_fence_gate_closed", "uvlock": true }, + "facing=west,in_wall=false,open=false": { "model": "betternether:block/stalagnate_fence_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=false": { "model": "betternether:block/stalagnate_fence_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=false": { "model": "betternether:block/stalagnate_fence_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=false,open=true": { "model": "betternether:block/stalagnate_fence_gate_open", "uvlock": true }, + "facing=west,in_wall=false,open=true": { "model": "betternether:block/stalagnate_fence_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=true": { "model": "betternether:block/stalagnate_fence_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=true": { "model": "betternether:block/stalagnate_fence_gate_open", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=false": { "model": "betternether:block/stalagnate_wall_gate_closed", "uvlock": true }, + "facing=west,in_wall=true,open=false": { "model": "betternether:block/stalagnate_wall_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=false": { "model": "betternether:block/stalagnate_wall_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=false": { "model": "betternether:block/stalagnate_wall_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=true": { "model": "betternether:block/stalagnate_wall_gate_open", "uvlock": true }, + "facing=west,in_wall=true,open=true": { "model": "betternether:block/stalagnate_wall_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=true": { "model": "betternether:block/stalagnate_wall_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=true": { "model": "betternether:block/stalagnate_wall_gate_open", "uvlock": true, "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/common_log.json b/src/main/resources/assets/betternether/blockstates/common_log.json new file mode 100644 index 0000000..4b9a2c3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/common_log.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/stalagnate_log" }, + "axis=z": { "model": "betternether:block/stalagnate_log", "x": 90 }, + "axis=x": { "model": "betternether:block/stalagnate_log", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/common_log_striped.json b/src/main/resources/assets/betternether/blockstates/common_log_striped.json new file mode 100644 index 0000000..0d6e88f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/common_log_striped.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_log_stalagnate" }, + "axis=z": { "model": "betternether:block/striped_log_stalagnate", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_log_stalagnate", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/common_planks.json b/src/main/resources/assets/betternether/blockstates/common_planks.json new file mode 100644 index 0000000..0874515 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/common_planks.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/stalagnate_planks" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/common_plate.json b/src/main/resources/assets/betternether/blockstates/common_plate.json new file mode 100644 index 0000000..f405300 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/common_plate.json @@ -0,0 +1,6 @@ +{ + "variants": { + "powered=false": { "model": "betternether:block/stalagnate_pressure_plate_up" }, + "powered=true": { "model": "betternether:block/stalagnate_pressure_plate_down" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/common_slab.json b/src/main/resources/assets/betternether/blockstates/common_slab.json new file mode 100644 index 0000000..c7a4b77 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/common_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/stalagnate_half_slab" }, + "type=top": { "model": "betternether:block/stalagnate_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/stalagnate_planks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/common_stairs.json b/src/main/resources/assets/betternether/blockstates/common_stairs.json new file mode 100644 index 0000000..e1ed7b0 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/common_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/stalagnate_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/stalagnate_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/stalagnate_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/stalagnate_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/stalagnate_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/stalagnate_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/stalagnate_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/stalagnate_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/common_trapdoor.json b/src/main/resources/assets/betternether/blockstates/common_trapdoor.json new file mode 100644 index 0000000..7de914e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/common_trapdoor.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=north,half=bottom,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor" }, + "facing=south,half=bottom,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "y": 180 }, + "facing=east,half=bottom,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "y": 90 }, + "facing=west,half=bottom,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "y": 270 }, + "facing=north,half=top,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 180 }, + "facing=south,half=top,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 180, "y": 180 }, + "facing=east,half=top,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 180, "y": 90 }, + "facing=west,half=top,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 180, "y": 270 }, + "facing=north,half=bottom,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 90 }, + "facing=south,half=bottom,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 90, "y": 180 }, + "facing=east,half=bottom,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 90, "y": 90 }, + "facing=west,half=bottom,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 90, "y": 270 }, + "facing=north,half=top,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 270, "y": 180 }, + "facing=south,half=top,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 270, "y": 0 }, + "facing=east,half=top,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 270, "y": 270 }, + "facing=west,half=top,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 270, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/crafting_table_anchor_tree.json b/src/main/resources/assets/betternether/blockstates/crafting_table_anchor_tree.json new file mode 100644 index 0000000..c53d7d9 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/crafting_table_anchor_tree.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/crafting_table_anchor_tree" + } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/crafting_table_crimson.json b/src/main/resources/assets/betternether/blockstates/crafting_table_crimson.json new file mode 100644 index 0000000..00fe49e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/crafting_table_crimson.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/crafting_table_crimson" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/crafting_table_mushroom.json b/src/main/resources/assets/betternether/blockstates/crafting_table_mushroom.json new file mode 100644 index 0000000..6f8abb9 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/crafting_table_mushroom.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/crafting_table_mushroom" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/crafting_table_mushroom_fir.json b/src/main/resources/assets/betternether/blockstates/crafting_table_mushroom_fir.json new file mode 100644 index 0000000..47e5a6d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/crafting_table_mushroom_fir.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/crafting_table_mushroom_fir" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/crafting_table_nether_sakura.json b/src/main/resources/assets/betternether/blockstates/crafting_table_nether_sakura.json new file mode 100644 index 0000000..32e62fa --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/crafting_table_nether_sakura.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/crafting_table_nether_sakura" + } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/crafting_table_reed.json b/src/main/resources/assets/betternether/blockstates/crafting_table_reed.json new file mode 100644 index 0000000..4cce680 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/crafting_table_reed.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/crafting_table_reed" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/crafting_table_rubeus.json b/src/main/resources/assets/betternether/blockstates/crafting_table_rubeus.json new file mode 100644 index 0000000..7ca46bd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/crafting_table_rubeus.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/crafting_table_rubeus" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/crafting_table_stalagnate.json b/src/main/resources/assets/betternether/blockstates/crafting_table_stalagnate.json new file mode 100644 index 0000000..eb20245 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/crafting_table_stalagnate.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/crafting_table_stalagnate" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/crafting_table_warped.json b/src/main/resources/assets/betternether/blockstates/crafting_table_warped.json new file mode 100644 index 0000000..3081e23 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/crafting_table_warped.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/crafting_table_warped" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/crafting_table_wart.json b/src/main/resources/assets/betternether/blockstates/crafting_table_wart.json new file mode 100644 index 0000000..b7fd5d7 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/crafting_table_wart.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/crafting_table_wart" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/crafting_table_willow.json b/src/main/resources/assets/betternether/blockstates/crafting_table_willow.json new file mode 100644 index 0000000..e38bd73 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/crafting_table_willow.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betternether:block/crafting_table_willow" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/crimson_ladder.json b/src/main/resources/assets/betternether/blockstates/crimson_ladder.json new file mode 100644 index 0000000..ad38f46 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/crimson_ladder.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/crimson_ladder" }, + "facing=east": { "model": "betternether:block/crimson_ladder", "y": 90 }, + "facing=south": { "model": "betternether:block/crimson_ladder", "y": 180 }, + "facing=west": { "model": "betternether:block/crimson_ladder", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/egg_plant.json b/src/main/resources/assets/betternether/blockstates/egg_plant.json new file mode 100644 index 0000000..15838c2 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/egg_plant.json @@ -0,0 +1,25 @@ +{ + "variants": + { + "destructed=false": [ + { "model": "betternether:block/egg_plant_01" }, + { "model": "betternether:block/egg_plant_01", "y": 90 }, + { "model": "betternether:block/egg_plant_01", "y": 180 }, + { "model": "betternether:block/egg_plant_01", "y": 270 }, + { "model": "betternether:block/egg_plant_02" }, + { "model": "betternether:block/egg_plant_02", "y": 90 }, + { "model": "betternether:block/egg_plant_02", "y": 180 }, + { "model": "betternether:block/egg_plant_02", "y": 270 }, + { "model": "betternether:block/egg_plant_03" }, + { "model": "betternether:block/egg_plant_03", "y": 90 }, + { "model": "betternether:block/egg_plant_03", "y": 180 }, + { "model": "betternether:block/egg_plant_03", "y": 270 } + ], + "destructed=true": [ + { "model": "betternether:block/egg_plant_destructed" }, + { "model": "betternether:block/egg_plant_destructed", "y": 90 }, + { "model": "betternether:block/egg_plant_destructed", "y": 180 }, + { "model": "betternether:block/egg_plant_destructed", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/eye_seed.json b/src/main/resources/assets/betternether/blockstates/eye_seed.json new file mode 100644 index 0000000..f1f8f84 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/eye_seed.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/eye_seed" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/eye_vine.json b/src/main/resources/assets/betternether/blockstates/eye_vine.json new file mode 100644 index 0000000..d177296 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/eye_vine.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/eye_vine" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/eyeball.json b/src/main/resources/assets/betternether/blockstates/eyeball.json new file mode 100644 index 0000000..76ce0ce --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/eyeball.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/block_eyeball" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/eyeball_small.json b/src/main/resources/assets/betternether/blockstates/eyeball_small.json new file mode 100644 index 0000000..eec3eca --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/eyeball_small.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/block_eyeball_small" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/farmland.json b/src/main/resources/assets/betternether/blockstates/farmland.json new file mode 100644 index 0000000..01b958c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/farmland.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/farmland" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/feather_fern.json b/src/main/resources/assets/betternether/blockstates/feather_fern.json new file mode 100644 index 0000000..6234786 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/feather_fern.json @@ -0,0 +1,24 @@ +{ + "variants": + { + "age=0": { "model": "betternether:block/feather_fern_3" }, + "age=1": [ + { "model": "betternether:block/feather_fern_2" }, + { "model": "betternether:block/feather_fern_2", "y": 90 }, + { "model": "betternether:block/feather_fern_2", "y": 180 }, + { "model": "betternether:block/feather_fern_2", "y": 270 } + ], + "age=2": [ + { "model": "betternether:block/feather_fern_1" }, + { "model": "betternether:block/feather_fern_1", "y": 90 }, + { "model": "betternether:block/feather_fern_1", "y": 180 }, + { "model": "betternether:block/feather_fern_1", "y": 270 } + ], + "age=3": [ + { "model": "betternether:block/feather_fern" }, + { "model": "betternether:block/feather_fern", "y": 90 }, + { "model": "betternether:block/feather_fern", "y": 180 }, + { "model": "betternether:block/feather_fern", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/geyser.json b/src/main/resources/assets/betternether/blockstates/geyser.json new file mode 100644 index 0000000..a580e8f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/geyser.json @@ -0,0 +1,11 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/geyser" }, + { "model": "betternether:block/geyser", "y": 90 }, + { "model": "betternether:block/geyser", "y": 180 }, + { "model": "betternether:block/geyser", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/giant_lucis.json b/src/main/resources/assets/betternether/blockstates/giant_lucis.json new file mode 100644 index 0000000..74d6c33 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/giant_lucis.json @@ -0,0 +1,122 @@ +{ + "multipart": [ + { + "when": { + "north": "true" + }, + "apply": { + "model": "betternether:block/giant_lucis_side" + } + }, + { + "when": { + "east": "true" + }, + "apply": { + "model": "betternether:block/giant_lucis_side", + "y": 90, + "uvlock": true + } + }, + { + "when": { + "south": "true" + }, + "apply": { + "model": "betternether:block/giant_lucis_side", + "y": 180, + "uvlock": true + } + }, + { + "when": { + "west": "true" + }, + "apply": { + "model": "betternether:block/giant_lucis_side", + "y": 270, + "uvlock": true + } + }, + { + "when": { + "up": "true" + }, + "apply": [ + { "model": "betternether:block/giant_lucis_top", "x": 270 }, + { "model": "betternether:block/giant_lucis_top", "x": 270, "y": 90 }, + { "model": "betternether:block/giant_lucis_top", "x": 270, "y": 180 }, + { "model": "betternether:block/giant_lucis_top", "x": 270, "y": 270 } + ] + }, + { + "when": { + "down": "true" + }, + "apply": [ + { "model": "betternether:block/giant_lucis_bottom", "x": 90 }, + { "model": "betternether:block/giant_lucis_bottom", "x": 90, "y": 90 }, + { "model": "betternether:block/giant_lucis_bottom", "x": 90, "y": 180 }, + { "model": "betternether:block/giant_lucis_bottom", "x": 90, "y": 270 } + ] + }, + { + "when": { + "north": "false" + }, + "apply": { + "model": "betternether:block/giant_lucis_bottom" + } + }, + { + "when": { + "east": "false" + }, + "apply": { + "model": "betternether:block/giant_lucis_bottom", + "y": 90, + "uvlock": false + } + }, + { + "when": { + "south": "false" + }, + "apply": { + "model": "betternether:block/giant_lucis_bottom", + "y": 180, + "uvlock": false + } + }, + { + "when": { + "west": "false" + }, + "apply": { + "model": "betternether:block/giant_lucis_bottom", + "y": 270, + "uvlock": false + } + }, + { + "when": { + "up": "false" + }, + "apply": { + "model": "betternether:block/giant_lucis_bottom", + "x": 270, + "uvlock": false + } + }, + { + "when": { + "down": "false" + }, + "apply": { + "model": "betternether:block/giant_lucis_bottom", + "x": 90, + "uvlock": false + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/giant_mold.json b/src/main/resources/assets/betternether/blockstates/giant_mold.json new file mode 100644 index 0000000..18a3c1e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/giant_mold.json @@ -0,0 +1,16 @@ +{ + "variants": { + "shape=top": { "model": "betternether:block/giant_mold_top" }, + "shape=middle": [ + { "model": "betternether:block/giant_mold_stem" }, + { "model": "betternether:block/giant_mold_stem" }, + { "model": "betternether:block/giant_mold_stem" }, + { "model": "betternether:block/giant_mold_stem" }, + { "model": "betternether:block/giant_mold_stem_2" }, + { "model": "betternether:block/giant_mold_stem_2", "y": 90 }, + { "model": "betternether:block/giant_mold_stem_2", "y": 180 }, + { "model": "betternether:block/giant_mold_stem_2", "y": 270 } + ], + "shape=bottom": { "model": "betternether:block/giant_mold_bottom" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/giant_mold_sapling.json b/src/main/resources/assets/betternether/blockstates/giant_mold_sapling.json new file mode 100644 index 0000000..aa00f4b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/giant_mold_sapling.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/giant_mold_sapling" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/glowstone_stalactite.json b/src/main/resources/assets/betternether/blockstates/glowstone_stalactite.json new file mode 100644 index 0000000..7dea002 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/glowstone_stalactite.json @@ -0,0 +1,13 @@ +{ + "variants": + { + "size=0": { "model": "betternether:block/glowstone_stalactite_0" }, + "size=1": { "model": "betternether:block/glowstone_stalactite_1" }, + "size=2": { "model": "betternether:block/glowstone_stalactite_2" }, + "size=3": { "model": "betternether:block/glowstone_stalactite_3" }, + "size=4": { "model": "betternether:block/glowstone_stalactite_4" }, + "size=5": { "model": "betternether:block/glowstone_stalactite_5" }, + "size=6": { "model": "betternether:block/glowstone_stalactite_6" }, + "size=7": { "model": "betternether:block/glowstone_stalactite_7" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/golden_lumabus_seed.json b/src/main/resources/assets/betternether/blockstates/golden_lumabus_seed.json new file mode 100644 index 0000000..d794d00 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/golden_lumabus_seed.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/golden_lumabus_seed" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/golden_lumabus_vine.json b/src/main/resources/assets/betternether/blockstates/golden_lumabus_vine.json new file mode 100644 index 0000000..d3ce99e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/golden_lumabus_vine.json @@ -0,0 +1,15 @@ +{ + "variants": { + "shape=top": { "model": "betternether:block/golden_lumabus_roots" }, + "shape=middle": [ + { "model": "betternether:block/golden_lumabus_vine" }, + { "model": "betternether:block/golden_lumabus_vine_mirrored" } + ], + "shape=bottom": [ + { "model": "betternether:block/golden_lumabus_bulb_1" }, + { "model": "betternether:block/golden_lumabus_bulb_2" }, + { "model": "betternether:block/golden_lumabus_bulb_3" }, + { "model": "betternether:block/golden_lumabus_bulb_4" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/golden_vine.json b/src/main/resources/assets/betternether/blockstates/golden_vine.json new file mode 100644 index 0000000..3465220 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/golden_vine.json @@ -0,0 +1,13 @@ +{ + "variants": + { + "bottom=false": [ + { "model": "betternether:block/golden_vine_1" }, + { "model": "betternether:block/golden_vine_2" } + ], + "bottom=true": [ + { "model": "betternether:block/golden_vine_bottom_1" }, + { "model": "betternether:block/golden_vine_bottom_2" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/gray_mold.json b/src/main/resources/assets/betternether/blockstates/gray_mold.json new file mode 100644 index 0000000..b924545 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/gray_mold.json @@ -0,0 +1,11 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/gray_mold" }, + { "model": "betternether:block/gray_mold", "y": 90 }, + { "model": "betternether:block/gray_mold", "y": 180 }, + { "model": "betternether:block/gray_mold", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/hook_mushroom.json b/src/main/resources/assets/betternether/blockstates/hook_mushroom.json new file mode 100644 index 0000000..70b6a7f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/hook_mushroom.json @@ -0,0 +1,19 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/hook_mushroom_1" }, + { "model": "betternether:block/hook_mushroom_1", "y": 90 }, + { "model": "betternether:block/hook_mushroom_1", "y": 180 }, + { "model": "betternether:block/hook_mushroom_1", "y": 270 }, + { "model": "betternether:block/hook_mushroom_2" }, + { "model": "betternether:block/hook_mushroom_2", "y": 90 }, + { "model": "betternether:block/hook_mushroom_2", "y": 180 }, + { "model": "betternether:block/hook_mushroom_2", "y": 270 }, + { "model": "betternether:block/hook_mushroom_3" }, + { "model": "betternether:block/hook_mushroom_3", "y": 90 }, + { "model": "betternether:block/hook_mushroom_3", "y": 180 }, + { "model": "betternether:block/hook_mushroom_3", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/ink_bush.json b/src/main/resources/assets/betternether/blockstates/ink_bush.json new file mode 100644 index 0000000..a21e2c4 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/ink_bush.json @@ -0,0 +1,24 @@ +{ + "variants": + { + "age=0": { "model": "betternether:block/ink_bush_0" }, + "age=1": [ + { "model": "betternether:block/ink_bush_1" }, + { "model": "betternether:block/ink_bush_1", "y": 90 }, + { "model": "betternether:block/ink_bush_1", "y": 180 }, + { "model": "betternether:block/ink_bush_1", "y": 270 } + ], + "age=2": [ + { "model": "betternether:block/ink_bush_2" }, + { "model": "betternether:block/ink_bush_2", "y": 90 }, + { "model": "betternether:block/ink_bush_2", "y": 180 }, + { "model": "betternether:block/ink_bush_2", "y": 270 } + ], + "age=3": [ + { "model": "betternether:block/ink_bush_3" }, + { "model": "betternether:block/ink_bush_3", "y": 90 }, + { "model": "betternether:block/ink_bush_3", "y": 180 }, + { "model": "betternether:block/ink_bush_3", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/ink_bush_seed.json b/src/main/resources/assets/betternether/blockstates/ink_bush_seed.json new file mode 100644 index 0000000..ac13a63 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/ink_bush_seed.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/ink_bush_seed" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/jellyfish_mushroom.json b/src/main/resources/assets/betternether/blockstates/jellyfish_mushroom.json new file mode 100644 index 0000000..606b92d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/jellyfish_mushroom.json @@ -0,0 +1,13 @@ +{ + "variants": { + "shape=top,visual=normal": { "model": "betternether:block/jellyfish_mushroom_top" }, + "shape=top,visual=sepia": { "model": "betternether:block/jellyfish_mushroom_top_sepia" }, + "shape=top,visual=poor": { "model": "betternether:block/jellyfish_mushroom_top_poor" }, + "shape=middle,visual=normal": { "model": "betternether:block/jellyfish_mushroom_bottom" }, + "shape=middle,visual=sepia": { "model": "betternether:block/jellyfish_mushroom_bottom_sepia" }, + "shape=middle,visual=poor": { "model": "betternether:block/jellyfish_mushroom_bottom_poor" }, + "shape=bottom,visual=normal": { "model": "betternether:block/jellyfish_mushroom_small" }, + "shape=bottom,visual=sepia": { "model": "betternether:block/jellyfish_mushroom_small_sepia" }, + "shape=bottom,visual=poor": { "model": "betternether:block/jellyfish_mushroom_small_poor" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/jellyfish_mushroom_sapling.json b/src/main/resources/assets/betternether/blockstates/jellyfish_mushroom_sapling.json new file mode 100644 index 0000000..d51360e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/jellyfish_mushroom_sapling.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/jellyfish_mushroom_sapling" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/jungle_grass.json b/src/main/resources/assets/betternether/blockstates/jungle_grass.json new file mode 100644 index 0000000..c20e715 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/jungle_grass.json @@ -0,0 +1,11 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/jungle_grass" }, + { "model": "betternether:block/jungle_grass", "y": 90 }, + { "model": "betternether:block/jungle_grass", "y": 180 }, + { "model": "betternether:block/jungle_grass", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/jungle_moss.json b/src/main/resources/assets/betternether/blockstates/jungle_moss.json new file mode 100644 index 0000000..b0f58b4 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/jungle_moss.json @@ -0,0 +1,36 @@ +{ + "variants": { + "facing=north": [ + { "model": "betternether:block/jungle_moss_1", "y": 180 }, + { "model": "betternether:block/jungle_moss_2", "y": 180 }, + { "model": "betternether:block/jungle_moss_3", "y": 180 }, + { "model": "betternether:block/jungle_moss_4", "y": 180 }, + { "model": "betternether:block/jungle_moss_5", "y": 180 }, + { "model": "betternether:block/jungle_moss_6", "y": 180 } + ], + "facing=south": [ + { "model": "betternether:block/jungle_moss_1" }, + { "model": "betternether:block/jungle_moss_2" }, + { "model": "betternether:block/jungle_moss_3" }, + { "model": "betternether:block/jungle_moss_4" }, + { "model": "betternether:block/jungle_moss_5" }, + { "model": "betternether:block/jungle_moss_6" } + ], + "facing=east": [ + { "model": "betternether:block/jungle_moss_1", "y": 270 }, + { "model": "betternether:block/jungle_moss_2", "y": 270 }, + { "model": "betternether:block/jungle_moss_3", "y": 270 }, + { "model": "betternether:block/jungle_moss_4", "y": 270 }, + { "model": "betternether:block/jungle_moss_5", "y": 270 }, + { "model": "betternether:block/jungle_moss_6", "y": 270 } + ], + "facing=west": [ + { "model": "betternether:block/jungle_moss_1", "y": 90 }, + { "model": "betternether:block/jungle_moss_2", "y": 90 }, + { "model": "betternether:block/jungle_moss_3", "y": 90 }, + { "model": "betternether:block/jungle_moss_4", "y": 90 }, + { "model": "betternether:block/jungle_moss_5", "y": 90 }, + { "model": "betternether:block/jungle_moss_6", "y": 90 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/jungle_plant.json b/src/main/resources/assets/betternether/blockstates/jungle_plant.json new file mode 100644 index 0000000..716c784 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/jungle_plant.json @@ -0,0 +1,14 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/jungle_plant_1_a", "weight": 10 }, + { "model": "betternether:block/jungle_plant_1_b", "weight": 10 }, + { "model": "betternether:block/jungle_plant_2" }, + { "model": "betternether:block/jungle_plant_2", "y": 90 }, + { "model": "betternether:block/jungle_plant_2", "y": 180 }, + { "model": "betternether:block/jungle_plant_2", "y": 270 }, + { "model": "betternether:block/jungle_plant_3", "weight": 2 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/lucis_mushroom.json b/src/main/resources/assets/betternether/blockstates/lucis_mushroom.json new file mode 100644 index 0000000..758e0d2 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/lucis_mushroom.json @@ -0,0 +1,16 @@ +{ + "variants": { + "facing=north,shape=corner": { "model": "betternether:block/glowmushroom_corner" }, + "facing=south,shape=corner": { "model": "betternether:block/glowmushroom_corner", "y": 180 }, + "facing=east,shape=corner": { "model": "betternether:block/glowmushroom_corner", "y": 90 }, + "facing=west,shape=corner": { "model": "betternether:block/glowmushroom_corner", "y": 270 }, + "facing=north,shape=side": { "model": "betternether:block/glowmushroom_side", "y": 180 }, + "facing=south,shape=side": { "model": "betternether:block/glowmushroom_side" }, + "facing=east,shape=side": { "model": "betternether:block/glowmushroom_side", "y": 270 }, + "facing=west,shape=side": { "model": "betternether:block/glowmushroom_side", "y": 90 }, + "facing=north,shape=center": { "model": "betternether:block/glowmushroom_center" }, + "facing=south,shape=center": { "model": "betternether:block/glowmushroom_center" }, + "facing=east,shape=center": { "model": "betternether:block/glowmushroom_center" }, + "facing=west,shape=center": { "model": "betternether:block/glowmushroom_center" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/lucis_spore.json b/src/main/resources/assets/betternether/blockstates/lucis_spore.json new file mode 100644 index 0000000..eac2988 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/lucis_spore.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/glowmushroom_spore", "y": 180 }, + "facing=south": { "model": "betternether:block/glowmushroom_spore" }, + "facing=east": { "model": "betternether:block/glowmushroom_spore", "y": 270 }, + "facing=west": { "model": "betternether:block/glowmushroom_spore", "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/lumabus_seed.json b/src/main/resources/assets/betternether/blockstates/lumabus_seed.json new file mode 100644 index 0000000..37900ee --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/lumabus_seed.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/lumabus_seed" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/lumabus_vine.json b/src/main/resources/assets/betternether/blockstates/lumabus_vine.json new file mode 100644 index 0000000..fc9094c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/lumabus_vine.json @@ -0,0 +1,15 @@ +{ + "variants": { + "shape=top": { "model": "betternether:block/lumabus_roots" }, + "shape=middle": [ + { "model": "betternether:block/lumabus_vine" }, + { "model": "betternether:block/lumabus_vine_mirrored" } + ], + "shape=bottom": [ + { "model": "betternether:block/lumabus_bulb_1" }, + { "model": "betternether:block/lumabus_bulb_2" }, + { "model": "betternether:block/lumabus_bulb_3" }, + { "model": "betternether:block/lumabus_bulb_4" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/magma_flower.json b/src/main/resources/assets/betternether/blockstates/magma_flower.json new file mode 100644 index 0000000..04d0ffb --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/magma_flower.json @@ -0,0 +1,32 @@ +{ + "variants": { + "age=0": + [ + { "model": "betternether:block/magma_flower_04" }, + { "model": "betternether:block/magma_flower_04", "y": 90 }, + { "model": "betternether:block/magma_flower_04", "y": 180 }, + { "model": "betternether:block/magma_flower_04", "y": 270 } + ], + "age=1": + [ + { "model": "betternether:block/magma_flower_03" }, + { "model": "betternether:block/magma_flower_03", "y": 90 }, + { "model": "betternether:block/magma_flower_03", "y": 180 }, + { "model": "betternether:block/magma_flower_03", "y": 270 } + ], + "age=2": + [ + { "model": "betternether:block/magma_flower_02" }, + { "model": "betternether:block/magma_flower_02", "y": 90 }, + { "model": "betternether:block/magma_flower_02", "y": 180 }, + { "model": "betternether:block/magma_flower_02", "y": 270 } + ], + "age=3": + [ + { "model": "betternether:block/magma_flower_01" }, + { "model": "betternether:block/magma_flower_01", "y": 90 }, + { "model": "betternether:block/magma_flower_01", "y": 180 }, + { "model": "betternether:block/magma_flower_01", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/moss_cover.json b/src/main/resources/assets/betternether/blockstates/moss_cover.json new file mode 100644 index 0000000..095f70d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/moss_cover.json @@ -0,0 +1,23 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/moss_cover" }, + { "model": "betternether:block/moss_cover", "y": 90 }, + { "model": "betternether:block/moss_cover", "y": 180 }, + { "model": "betternether:block/moss_cover", "y": 270 }, + { "model": "betternether:block/moss_cover_2" }, + { "model": "betternether:block/moss_cover_2", "y": 90 }, + { "model": "betternether:block/moss_cover_2", "y": 180 }, + { "model": "betternether:block/moss_cover_2", "y": 270 }, + { "model": "betternether:block/moss_cover_3" }, + { "model": "betternether:block/moss_cover_3", "y": 90 }, + { "model": "betternether:block/moss_cover_3", "y": 180 }, + { "model": "betternether:block/moss_cover_3", "y": 270 }, + { "model": "betternether:block/moss_cover_4" }, + { "model": "betternether:block/moss_cover_4", "y": 90 }, + { "model": "betternether:block/moss_cover_4", "y": 180 }, + { "model": "betternether:block/moss_cover_4", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_button.json b/src/main/resources/assets/betternether/blockstates/mushroom_button.json new file mode 100644 index 0000000..f20714d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_button.json @@ -0,0 +1,28 @@ +{ + "variants": { + "face=floor,facing=east,powered=false": { "model": "betternether:block/mushroom_button", "y": 90 }, + "face=floor,facing=west,powered=false": { "model": "betternether:block/mushroom_button", "y": 270 }, + "face=floor,facing=south,powered=false": { "model": "betternether:block/mushroom_button", "y": 180 }, + "face=floor,facing=north,powered=false": { "model": "betternether:block/mushroom_button" }, + "face=wall,facing=east,powered=false": { "model": "betternether:block/mushroom_button", "x": 90, "y": 90 }, + "face=wall,facing=west,powered=false": { "model": "betternether:block/mushroom_button", "x": 90, "y": 270 }, + "face=wall,facing=south,powered=false": { "model": "betternether:block/mushroom_button", "x": 90, "y": 180 }, + "face=wall,facing=north,powered=false": { "model": "betternether:block/mushroom_button", "x": 90 }, + "face=ceiling,facing=east,powered=false": { "model": "betternether:block/mushroom_button", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=false": { "model": "betternether:block/mushroom_button", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=false": { "model": "betternether:block/mushroom_button", "x": 180 }, + "face=ceiling,facing=north,powered=false": { "model": "betternether:block/mushroom_button", "x": 180, "y": 180 }, + "face=floor,facing=east,powered=true": { "model": "betternether:block/mushroom_button_pressed", "y": 90 }, + "face=floor,facing=west,powered=true": { "model": "betternether:block/mushroom_button_pressed", "y": 270 }, + "face=floor,facing=south,powered=true": { "model": "betternether:block/mushroom_button_pressed", "y": 180 }, + "face=floor,facing=north,powered=true": { "model": "betternether:block/mushroom_button_pressed" }, + "face=wall,facing=east,powered=true": { "model": "betternether:block/mushroom_button_pressed", "x": 90, "y": 90 }, + "face=wall,facing=west,powered=true": { "model": "betternether:block/mushroom_button_pressed", "x": 90, "y": 270 }, + "face=wall,facing=south,powered=true": { "model": "betternether:block/mushroom_button_pressed", "x": 90, "y": 180 }, + "face=wall,facing=north,powered=true": { "model": "betternether:block/mushroom_button_pressed", "x": 90 }, + "face=ceiling,facing=east,powered=true": { "model": "betternether:block/mushroom_button_pressed", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=true": { "model": "betternether:block/mushroom_button_pressed", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=true": { "model": "betternether:block/mushroom_button_pressed", "x": 180 }, + "face=ceiling,facing=north,powered=true": { "model": "betternether:block/mushroom_button_pressed", "x": 180, "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_door.json b/src/main/resources/assets/betternether/blockstates/mushroom_door.json new file mode 100644 index 0000000..9efcbf5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_door.json @@ -0,0 +1,36 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false": { "model": "betternether:block/mushroom_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false": { "model": "betternether:block/mushroom_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false": { "model": "betternether:block/mushroom_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false": { "model": "betternether:block/mushroom_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false": { "model": "betternether:block/mushroom_door_bottom_hinge" }, + "facing=south,half=lower,hinge=right,open=false": { "model": "betternether:block/mushroom_door_bottom_hinge", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false": { "model": "betternether:block/mushroom_door_bottom_hinge", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false": { "model": "betternether:block/mushroom_door_bottom_hinge", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true": { "model": "betternether:block/mushroom_door_bottom_hinge", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true": { "model": "betternether:block/mushroom_door_bottom_hinge", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true": { "model": "betternether:block/mushroom_door_bottom_hinge", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true": { "model": "betternether:block/mushroom_door_bottom_hinge" }, + "facing=east,half=lower,hinge=right,open=true": { "model": "betternether:block/mushroom_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true": { "model": "betternether:block/mushroom_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true": { "model": "betternether:block/mushroom_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true": { "model": "betternether:block/mushroom_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false": { "model": "betternether:block/mushroom_door_top" }, + "facing=south,half=upper,hinge=left,open=false": { "model": "betternether:block/mushroom_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false": { "model": "betternether:block/mushroom_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false": { "model": "betternether:block/mushroom_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false": { "model": "betternether:block/mushroom_door_top_hinge" }, + "facing=south,half=upper,hinge=right,open=false": { "model": "betternether:block/mushroom_door_top_hinge", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false": { "model": "betternether:block/mushroom_door_top_hinge", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false": { "model": "betternether:block/mushroom_door_top_hinge", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true": { "model": "betternether:block/mushroom_door_top_hinge", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true": { "model": "betternether:block/mushroom_door_top_hinge", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true": { "model": "betternether:block/mushroom_door_top_hinge", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true": { "model": "betternether:block/mushroom_door_top_hinge" }, + "facing=east,half=upper,hinge=right,open=true": { "model": "betternether:block/mushroom_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true": { "model": "betternether:block/mushroom_door_top" }, + "facing=west,half=upper,hinge=right,open=true": { "model": "betternether:block/mushroom_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true": { "model": "betternether:block/mushroom_door_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fence.json b/src/main/resources/assets/betternether/blockstates/mushroom_fence.json new file mode 100644 index 0000000..e09e112 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fence.json @@ -0,0 +1,17 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/mushroom_fence_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/mushroom_fence_side", "uvlock": true } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/mushroom_fence_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/mushroom_fence_side", "y": 180, "uvlock": true } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/mushroom_fence_side", "y": 270, "uvlock": true } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir.json new file mode 100644 index 0000000..f37dd3f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir.json @@ -0,0 +1,67 @@ +{ + "variants": + { + "shape=bottom": [ + { "model": "betternether:block/mushroom_fir_trunk_bottom" }, + { "model": "betternether:block/mushroom_fir_trunk_bottom", "y": 90 }, + { "model": "betternether:block/mushroom_fir_trunk_bottom", "y": 180 }, + { "model": "betternether:block/mushroom_fir_trunk_bottom", "y": 270 } + ], + "shape=middle": [ + { "model": "betternether:block/mushroom_fir_trunk_middle" }, + { "model": "betternether:block/mushroom_fir_trunk_middle_2" }, + { "model": "betternether:block/mushroom_fir_trunk_middle_2", "y": 90 }, + { "model": "betternether:block/mushroom_fir_trunk_middle_2", "y": 180 }, + { "model": "betternether:block/mushroom_fir_trunk_middle_2", "y": 270 }, + { "model": "betternether:block/mushroom_fir_trunk_middle_3" }, + { "model": "betternether:block/mushroom_fir_trunk_middle_3", "y": 90 }, + { "model": "betternether:block/mushroom_fir_trunk_middle_3", "y": 180 }, + { "model": "betternether:block/mushroom_fir_trunk_middle_3", "y": 270 } + ], + "shape=top": [ + { "model": "betternether:block/mushroom_fir_trunk_top" }, + { "model": "betternether:block/mushroom_fir_trunk_top_2" }, + { "model": "betternether:block/mushroom_fir_trunk_top_2", "y": 90 }, + { "model": "betternether:block/mushroom_fir_trunk_top_2", "y": 180 }, + { "model": "betternether:block/mushroom_fir_trunk_top_2", "y": 270 } + ], + "shape=side_big_n": [ + { "model": "betternether:block/mushroom_fir_branch" }, + { "model": "betternether:block/mushroom_fir_branch_2" } + ], + "shape=side_big_s": [ + { "model": "betternether:block/mushroom_fir_branch", "y": 180 }, + { "model": "betternether:block/mushroom_fir_branch_2", "y": 180 } + ], + "shape=side_big_e": [ + { "model": "betternether:block/mushroom_fir_branch", "y": 90 }, + { "model": "betternether:block/mushroom_fir_branch_2", "y": 90 } + ], + "shape=side_big_w": [ + { "model": "betternether:block/mushroom_fir_branch", "y": 270 }, + { "model": "betternether:block/mushroom_fir_branch_2", "y": 270 } + ], + "shape=side_small_n": [ + { "model": "betternether:block/mushroom_fir_branch_small" }, + { "model": "betternether:block/mushroom_fir_branch_small_2" } + ], + "shape=side_small_s": [ + { "model": "betternether:block/mushroom_fir_branch_small", "y": 180 }, + { "model": "betternether:block/mushroom_fir_branch_small_2", "y": 180 } + ], + "shape=side_small_e": [ + { "model": "betternether:block/mushroom_fir_branch_small", "y": 90 }, + { "model": "betternether:block/mushroom_fir_branch_small_2", "y": 90 } + ], + "shape=side_small_w": [ + { "model": "betternether:block/mushroom_fir_branch_small", "y": 270 }, + { "model": "betternether:block/mushroom_fir_branch_small_2", "y": 270 } + ], + "shape=end": [ + { "model": "betternether:block/mushroom_fir_end" }, + { "model": "betternether:block/mushroom_fir_end", "y": 90 }, + { "model": "betternether:block/mushroom_fir_end", "y": 180 }, + { "model": "betternether:block/mushroom_fir_end", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_button.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_button.json new file mode 100644 index 0000000..0b3b8d5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_button.json @@ -0,0 +1,28 @@ +{ + "variants": { + "face=floor,facing=east,powered=false": { "model": "betternether:block/mushroom_fir_button", "y": 90 }, + "face=floor,facing=west,powered=false": { "model": "betternether:block/mushroom_fir_button", "y": 270 }, + "face=floor,facing=south,powered=false": { "model": "betternether:block/mushroom_fir_button", "y": 180 }, + "face=floor,facing=north,powered=false": { "model": "betternether:block/mushroom_fir_button" }, + "face=wall,facing=east,powered=false": { "model": "betternether:block/mushroom_fir_button", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=false": { "model": "betternether:block/mushroom_fir_button", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=false": { "model": "betternether:block/mushroom_fir_button", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=false": { "model": "betternether:block/mushroom_fir_button", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=false": { "model": "betternether:block/mushroom_fir_button", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=false": { "model": "betternether:block/mushroom_fir_button", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=false": { "model": "betternether:block/mushroom_fir_button", "x": 180 }, + "face=ceiling,facing=north,powered=false": { "model": "betternether:block/mushroom_fir_button", "x": 180, "y": 180 }, + "face=floor,facing=east,powered=true": { "model": "betternether:block/mushroom_fir_button_pressed", "y": 90 }, + "face=floor,facing=west,powered=true": { "model": "betternether:block/mushroom_fir_button_pressed", "y": 270 }, + "face=floor,facing=south,powered=true": { "model": "betternether:block/mushroom_fir_button_pressed", "y": 180 }, + "face=floor,facing=north,powered=true": { "model": "betternether:block/mushroom_fir_button_pressed" }, + "face=wall,facing=east,powered=true": { "model": "betternether:block/mushroom_fir_button_pressed", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=true": { "model": "betternether:block/mushroom_fir_button_pressed", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=true": { "model": "betternether:block/mushroom_fir_button_pressed", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=true": { "model": "betternether:block/mushroom_fir_button_pressed", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=true": { "model": "betternether:block/mushroom_fir_button_pressed", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=true": { "model": "betternether:block/mushroom_fir_button_pressed", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=true": { "model": "betternether:block/mushroom_fir_button_pressed", "x": 180 }, + "face=ceiling,facing=north,powered=true": { "model": "betternether:block/mushroom_fir_button_pressed", "x": 180, "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_door.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_door.json new file mode 100644 index 0000000..cfca15a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_door.json @@ -0,0 +1,36 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false": { "model": "betternether:block/mushroom_fir_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false": { "model": "betternether:block/mushroom_fir_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false": { "model": "betternether:block/mushroom_fir_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false": { "model": "betternether:block/mushroom_fir_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false": { "model": "betternether:block/mushroom_fir_door_bottom_rh" }, + "facing=south,half=lower,hinge=right,open=false": { "model": "betternether:block/mushroom_fir_door_bottom_rh", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false": { "model": "betternether:block/mushroom_fir_door_bottom_rh", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false": { "model": "betternether:block/mushroom_fir_door_bottom_rh", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true": { "model": "betternether:block/mushroom_fir_door_bottom_rh", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true": { "model": "betternether:block/mushroom_fir_door_bottom_rh", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true": { "model": "betternether:block/mushroom_fir_door_bottom_rh", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true": { "model": "betternether:block/mushroom_fir_door_bottom_rh" }, + "facing=east,half=lower,hinge=right,open=true": { "model": "betternether:block/mushroom_fir_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true": { "model": "betternether:block/mushroom_fir_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true": { "model": "betternether:block/mushroom_fir_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true": { "model": "betternether:block/mushroom_fir_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false": { "model": "betternether:block/mushroom_fir_door_top" }, + "facing=south,half=upper,hinge=left,open=false": { "model": "betternether:block/mushroom_fir_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false": { "model": "betternether:block/mushroom_fir_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false": { "model": "betternether:block/mushroom_fir_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false": { "model": "betternether:block/mushroom_fir_door_top_rh" }, + "facing=south,half=upper,hinge=right,open=false": { "model": "betternether:block/mushroom_fir_door_top_rh", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false": { "model": "betternether:block/mushroom_fir_door_top_rh", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false": { "model": "betternether:block/mushroom_fir_door_top_rh", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true": { "model": "betternether:block/mushroom_fir_door_top_rh", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true": { "model": "betternether:block/mushroom_fir_door_top_rh", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true": { "model": "betternether:block/mushroom_fir_door_top_rh", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true": { "model": "betternether:block/mushroom_fir_door_top_rh" }, + "facing=east,half=upper,hinge=right,open=true": { "model": "betternether:block/mushroom_fir_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true": { "model": "betternether:block/mushroom_fir_door_top" }, + "facing=west,half=upper,hinge=right,open=true": { "model": "betternether:block/mushroom_fir_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true": { "model": "betternether:block/mushroom_fir_door_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_fence.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_fence.json new file mode 100644 index 0000000..7940237 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_fence.json @@ -0,0 +1,17 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/mushroom_fir_fence_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/mushroom_fir_fence_side", "uvlock": true } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/mushroom_fir_fence_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/mushroom_fir_fence_side", "y": 180, "uvlock": true } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/mushroom_fir_fence_side", "y": 270, "uvlock": true } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_gate.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_gate.json new file mode 100644 index 0000000..0a54cbb --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_gate.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=south,in_wall=false,open=false": { "model": "betternether:block/mushroom_fir_fence_gate_closed", "uvlock": true }, + "facing=west,in_wall=false,open=false": { "model": "betternether:block/mushroom_fir_fence_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=false": { "model": "betternether:block/mushroom_fir_fence_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=false": { "model": "betternether:block/mushroom_fir_fence_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=false,open=true": { "model": "betternether:block/mushroom_fir_fence_gate_open", "uvlock": true }, + "facing=west,in_wall=false,open=true": { "model": "betternether:block/mushroom_fir_fence_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=true": { "model": "betternether:block/mushroom_fir_fence_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=true": { "model": "betternether:block/mushroom_fir_fence_gate_open", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=false": { "model": "betternether:block/mushroom_fir_wall_gate_closed", "uvlock": true }, + "facing=west,in_wall=true,open=false": { "model": "betternether:block/mushroom_fir_wall_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=false": { "model": "betternether:block/mushroom_fir_wall_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=false": { "model": "betternether:block/mushroom_fir_wall_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=true": { "model": "betternether:block/mushroom_fir_wall_gate_open", "uvlock": true }, + "facing=west,in_wall=true,open=true": { "model": "betternether:block/mushroom_fir_wall_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=true": { "model": "betternether:block/mushroom_fir_wall_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=true": { "model": "betternether:block/mushroom_fir_wall_gate_open", "uvlock": true, "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_ladder.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_ladder.json new file mode 100644 index 0000000..4524a17 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_ladder.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/mushroom_fir_ladder" }, + "facing=east": { "model": "betternether:block/mushroom_fir_ladder", "y": 90 }, + "facing=south": { "model": "betternether:block/mushroom_fir_ladder", "y": 180 }, + "facing=west": { "model": "betternether:block/mushroom_fir_ladder", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_log.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_log.json new file mode 100644 index 0000000..01ca441 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_log.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/mushroom_fir_log" }, + "axis=z": { "model": "betternether:block/mushroom_fir_log", "x": 90 }, + "axis=x": { "model": "betternether:block/mushroom_fir_log", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_planks.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_planks.json new file mode 100644 index 0000000..c7f791f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_planks.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/mushroom_fir_planks" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_plate.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_plate.json new file mode 100644 index 0000000..fb0ffcd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_plate.json @@ -0,0 +1,6 @@ +{ + "variants": { + "powered=false": { "model": "betternether:block/mushroom_fir_pressure_plate_up" }, + "powered=true": { "model": "betternether:block/mushroom_fir_pressure_plate_down" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_sapling.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_sapling.json new file mode 100644 index 0000000..2ce0262 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_sapling.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/mushroom_fir_sapling" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_slab.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_slab.json new file mode 100644 index 0000000..65d9db0 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/mushroom_fir_half_slab" }, + "type=top": { "model": "betternether:block/mushroom_fir_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/mushroom_fir_planks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_stairs.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_stairs.json new file mode 100644 index 0000000..358ac32 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/mushroom_fir_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/mushroom_fir_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/mushroom_fir_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/mushroom_fir_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/mushroom_fir_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/mushroom_fir_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/mushroom_fir_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/mushroom_fir_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/mushroom_fir_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/mushroom_fir_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/mushroom_fir_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/mushroom_fir_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/mushroom_fir_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/mushroom_fir_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/mushroom_fir_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/mushroom_fir_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/mushroom_fir_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/mushroom_fir_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/mushroom_fir_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/mushroom_fir_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/mushroom_fir_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/mushroom_fir_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/mushroom_fir_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/mushroom_fir_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/mushroom_fir_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/mushroom_fir_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/mushroom_fir_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/mushroom_fir_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/mushroom_fir_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/mushroom_fir_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/mushroom_fir_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/mushroom_fir_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/mushroom_fir_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/mushroom_fir_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/mushroom_fir_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/mushroom_fir_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/mushroom_fir_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/mushroom_fir_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/mushroom_fir_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/mushroom_fir_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_stem.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_stem.json new file mode 100644 index 0000000..8e77ef3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_stem.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/mushroom_fir_trunk_middle" }, + "axis=z": { "model": "betternether:block/mushroom_fir_trunk_middle", "x": 90 }, + "axis=x": { "model": "betternether:block/mushroom_fir_trunk_middle", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_trapdoor.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_trapdoor.json new file mode 100644 index 0000000..d5ae8d1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_trapdoor.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=north,half=bottom,open=false": { "model": "betternether:block/mushroom_fir_trapdoor" }, + "facing=south,half=bottom,open=false": { "model": "betternether:block/mushroom_fir_trapdoor", "y": 180 }, + "facing=east,half=bottom,open=false": { "model": "betternether:block/mushroom_fir_trapdoor", "y": 90 }, + "facing=west,half=bottom,open=false": { "model": "betternether:block/mushroom_fir_trapdoor", "y": 270 }, + "facing=north,half=top,open=false": { "model": "betternether:block/mushroom_fir_trapdoor", "x": 180 }, + "facing=south,half=top,open=false": { "model": "betternether:block/mushroom_fir_trapdoor", "x": 180, "y": 180 }, + "facing=east,half=top,open=false": { "model": "betternether:block/mushroom_fir_trapdoor", "x": 180, "y": 90 }, + "facing=west,half=top,open=false": { "model": "betternether:block/mushroom_fir_trapdoor", "x": 180, "y": 270 }, + "facing=north,half=bottom,open=true": { "model": "betternether:block/mushroom_fir_trapdoor", "x": 90 }, + "facing=south,half=bottom,open=true": { "model": "betternether:block/mushroom_fir_trapdoor", "x": 90, "y": 180 }, + "facing=east,half=bottom,open=true": { "model": "betternether:block/mushroom_fir_trapdoor", "x": 90, "y": 90 }, + "facing=west,half=bottom,open=true": { "model": "betternether:block/mushroom_fir_trapdoor", "x": 90, "y": 270 }, + "facing=north,half=top,open=true": { "model": "betternether:block/mushroom_fir_trapdoor", "x": 270, "y": 180 }, + "facing=south,half=top,open=true": { "model": "betternether:block/mushroom_fir_trapdoor", "x": 270, "y": 0 }, + "facing=east,half=top,open=true": { "model": "betternether:block/mushroom_fir_trapdoor", "x": 270, "y": 270 }, + "facing=west,half=top,open=true": { "model": "betternether:block/mushroom_fir_trapdoor", "x": 270, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_fir_wood.json b/src/main/resources/assets/betternether/blockstates/mushroom_fir_wood.json new file mode 100644 index 0000000..ce3c430 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_fir_wood.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/mushroom_fir_wood" }, + "axis=z": { "model": "betternether:block/mushroom_fir_wood", "x": 90 }, + "axis=x": { "model": "betternether:block/mushroom_fir_wood", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_gate.json b/src/main/resources/assets/betternether/blockstates/mushroom_gate.json new file mode 100644 index 0000000..20eb481 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_gate.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=south,in_wall=false,open=false": { "model": "betternether:block/mushroom_fence_gate_closed", "uvlock": true }, + "facing=west,in_wall=false,open=false": { "model": "betternether:block/mushroom_fence_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=false": { "model": "betternether:block/mushroom_fence_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=false": { "model": "betternether:block/mushroom_fence_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=false,open=true": { "model": "betternether:block/mushroom_fence_gate_open", "uvlock": true }, + "facing=west,in_wall=false,open=true": { "model": "betternether:block/mushroom_fence_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=true": { "model": "betternether:block/mushroom_fence_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=true": { "model": "betternether:block/mushroom_fence_gate_open", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=false": { "model": "betternether:block/mushroom_wall_gate_closed", "uvlock": true }, + "facing=west,in_wall=true,open=false": { "model": "betternether:block/mushroom_wall_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=false": { "model": "betternether:block/mushroom_wall_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=false": { "model": "betternether:block/mushroom_wall_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=true": { "model": "betternether:block/mushroom_wall_gate_open", "uvlock": true }, + "facing=west,in_wall=true,open=true": { "model": "betternether:block/mushroom_wall_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=true": { "model": "betternether:block/mushroom_wall_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=true": { "model": "betternether:block/mushroom_wall_gate_open", "uvlock": true, "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_grass.json b/src/main/resources/assets/betternether/blockstates/mushroom_grass.json new file mode 100644 index 0000000..e85d248 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_grass.json @@ -0,0 +1,11 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/mushroom_grass" }, + { "model": "betternether:block/mushroom_grass", "y": 90 }, + { "model": "betternether:block/mushroom_grass", "y": 180 }, + { "model": "betternether:block/mushroom_grass", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_ladder.json b/src/main/resources/assets/betternether/blockstates/mushroom_ladder.json new file mode 100644 index 0000000..37ed4df --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_ladder.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/mushroom_ladder" }, + "facing=east": { "model": "betternether:block/mushroom_ladder", "y": 90 }, + "facing=south": { "model": "betternether:block/mushroom_ladder", "y": 180 }, + "facing=west": { "model": "betternether:block/mushroom_ladder", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_planks.json b/src/main/resources/assets/betternether/blockstates/mushroom_planks.json new file mode 100644 index 0000000..987c9d6 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_planks.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/mushroom_planks" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_plate.json b/src/main/resources/assets/betternether/blockstates/mushroom_plate.json new file mode 100644 index 0000000..5c45d69 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_plate.json @@ -0,0 +1,6 @@ +{ + "variants": { + "powered=false": { "model": "betternether:block/mushroom_pressure_plate_up" }, + "powered=true": { "model": "betternether:block/mushroom_pressure_plate_down" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_slab.json b/src/main/resources/assets/betternether/blockstates/mushroom_slab.json new file mode 100644 index 0000000..a34f11a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/mushroom_half_slab" }, + "type=top": { "model": "betternether:block/mushroom_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/mushroom_planks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_stairs.json b/src/main/resources/assets/betternether/blockstates/mushroom_stairs.json new file mode 100644 index 0000000..6d35661 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/mushroom_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/mushroom_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/mushroom_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/mushroom_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/mushroom_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/mushroom_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/mushroom_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/mushroom_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/mushroom_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/mushroom_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/mushroom_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/mushroom_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/mushroom_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/mushroom_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/mushroom_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/mushroom_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/mushroom_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/mushroom_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/mushroom_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/mushroom_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/mushroom_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/mushroom_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/mushroom_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/mushroom_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/mushroom_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/mushroom_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/mushroom_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/mushroom_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/mushroom_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/mushroom_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/mushroom_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/mushroom_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/mushroom_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/mushroom_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/mushroom_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/mushroom_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/mushroom_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/mushroom_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/mushroom_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/mushroom_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_stem.json b/src/main/resources/assets/betternether/blockstates/mushroom_stem.json new file mode 100644 index 0000000..545ee9b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_stem.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/mushroom_stem" }, + "axis=z": { "model": "betternether:block/mushroom_stem", "x": 90 }, + "axis=x": { "model": "betternether:block/mushroom_stem", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/mushroom_trapdoor.json b/src/main/resources/assets/betternether/blockstates/mushroom_trapdoor.json new file mode 100644 index 0000000..7eb0eaa --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/mushroom_trapdoor.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=north,half=bottom,open=false": { "model": "betternether:block/mushroom_trapdoor" }, + "facing=south,half=bottom,open=false": { "model": "betternether:block/mushroom_trapdoor", "y": 180 }, + "facing=east,half=bottom,open=false": { "model": "betternether:block/mushroom_trapdoor", "y": 90 }, + "facing=west,half=bottom,open=false": { "model": "betternether:block/mushroom_trapdoor", "y": 270 }, + "facing=north,half=top,open=false": { "model": "betternether:block/mushroom_trapdoor", "x": 180 }, + "facing=south,half=top,open=false": { "model": "betternether:block/mushroom_trapdoor", "x": 180, "y": 180 }, + "facing=east,half=top,open=false": { "model": "betternether:block/mushroom_trapdoor", "x": 180, "y": 90 }, + "facing=west,half=top,open=false": { "model": "betternether:block/mushroom_trapdoor", "x": 180, "y": 270 }, + "facing=north,half=bottom,open=true": { "model": "betternether:block/mushroom_trapdoor", "x": 90 }, + "facing=south,half=bottom,open=true": { "model": "betternether:block/mushroom_trapdoor", "x": 90, "y": 180 }, + "facing=east,half=bottom,open=true": { "model": "betternether:block/mushroom_trapdoor", "x": 90, "y": 90 }, + "facing=west,half=bottom,open=true": { "model": "betternether:block/mushroom_trapdoor", "x": 90, "y": 270 }, + "facing=north,half=top,open=true": { "model": "betternether:block/mushroom_trapdoor", "x": 270, "y": 180 }, + "facing=south,half=top,open=true": { "model": "betternether:block/mushroom_trapdoor", "x": 270, "y": 0 }, + "facing=east,half=top,open=true": { "model": "betternether:block/mushroom_trapdoor", "x": 270, "y": 270 }, + "facing=west,half=top,open=true": { "model": "betternether:block/mushroom_trapdoor", "x": 270, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/neon_equisetum.json b/src/main/resources/assets/betternether/blockstates/neon_equisetum.json new file mode 100644 index 0000000..7be592c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/neon_equisetum.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "shape=bottom": { "model": "betternether:block/neon_equisetum_bottom" }, + "shape=middle": { "model": "betternether:block/neon_equisetum_middle" }, + "shape=top": { "model": "betternether:block/neon_equisetum_top" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/nether_brewing_stand.json b/src/main/resources/assets/betternether/blockstates/nether_brewing_stand.json new file mode 100644 index 0000000..b749ada --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_brewing_stand.json @@ -0,0 +1,23 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/nether_brewing_stand" }}, + { "when": { "has_bottle_0": "true" }, + "apply": { "model": "betternether:block/nether_brewing_stand_bottle0" } + }, + { "when": { "has_bottle_1": "true" }, + "apply": { "model": "betternether:block/nether_brewing_stand_bottle1" } + }, + { "when": { "has_bottle_2": "true" }, + "apply": { "model": "betternether:block/nether_brewing_stand_bottle2" } + }, + { "when": { "has_bottle_0": "false" }, + "apply": { "model": "betternether:block/nether_brewing_stand_empty0" } + }, + { "when": { "has_bottle_1": "false" }, + "apply": { "model": "betternether:block/nether_brewing_stand_empty1" } + }, + { "when": { "has_bottle_2": "false" }, + "apply": { "model": "betternether:block/nether_brewing_stand_empty2" } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_brick_tile_large.json b/src/main/resources/assets/betternether/blockstates/nether_brick_tile_large.json new file mode 100644 index 0000000..df4cb5e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_brick_tile_large.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/nether_brick_tile_large" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/nether_brick_tile_slab.json b/src/main/resources/assets/betternether/blockstates/nether_brick_tile_slab.json new file mode 100644 index 0000000..d187286 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_brick_tile_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/nether_brick_tile_half_slab" }, + "type=top": { "model": "betternether:block/nether_brick_tile_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/nether_brick_tile_double_slab" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_brick_tile_slab_double.json b/src/main/resources/assets/betternether/blockstates/nether_brick_tile_slab_double.json new file mode 100644 index 0000000..55324f6 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_brick_tile_slab_double.json @@ -0,0 +1,7 @@ +{ + "variants": + { + "half=top": { "model": "betternether:block/nether_brick_tile_double_slab" }, + "half=bottom": { "model": "betternether:block/nether_brick_tile_double_slab" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_brick_tile_small.json b/src/main/resources/assets/betternether/blockstates/nether_brick_tile_small.json new file mode 100644 index 0000000..7637b19 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_brick_tile_small.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/nether_brick_tile_small" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/nether_brick_tile_stairs.json b/src/main/resources/assets/betternether/blockstates/nether_brick_tile_stairs.json new file mode 100644 index 0000000..228d6c0 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_brick_tile_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/nether_brick_tile_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/nether_brick_tile_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/nether_brick_tile_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/nether_brick_tile_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/nether_brick_tile_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/nether_brick_tile_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/nether_brick_tile_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/nether_brick_tile_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/nether_brick_tile_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/nether_brick_tile_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/nether_brick_tile_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/nether_brick_tile_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/nether_brick_tile_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/nether_brick_tile_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/nether_brick_tile_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/nether_brick_tile_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/nether_brick_tile_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/nether_brick_tile_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/nether_brick_tile_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/nether_brick_tile_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/nether_brick_tile_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/nether_brick_tile_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/nether_brick_tile_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/nether_brick_tile_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/nether_brick_tile_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/nether_brick_tile_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/nether_brick_tile_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/nether_brick_tile_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/nether_brick_tile_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/nether_brick_tile_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/nether_brick_tile_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/nether_brick_tile_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/nether_brick_tile_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/nether_brick_tile_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/nether_brick_tile_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/nether_brick_tile_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/nether_brick_tile_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/nether_brick_tile_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/nether_brick_tile_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/nether_brick_tile_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_brick_wall.json b/src/main/resources/assets/betternether/blockstates/nether_brick_wall.json new file mode 100644 index 0000000..6d1bcca --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_brick_wall.json @@ -0,0 +1,31 @@ +{ + "multipart": [ + { "when": { "up": "true" }, + "apply": { "model": "betternether:block/nether_brick_post" } + }, + { "when": { "north": "low" }, + "apply": { "model": "betternether:block/nether_brick_wall_ns", "uvlock": true } + }, + { "when": { "east": "low" }, + "apply": { "model": "betternether:block/nether_brick_wall_ew", "y": 90, "uvlock": true } + }, + { "when": { "south": "low" }, + "apply": { "model": "betternether:block/nether_brick_wall_ns", "y": 180, "uvlock": true } + }, + { "when": { "west": "low" }, + "apply": { "model": "betternether:block/nether_brick_wall_ew", "y": 270, "uvlock": true } + }, + { "when": { "north": "tall" }, + "apply": { "model": "betternether:block/nether_brick_wall_ns", "uvlock": true } + }, + { "when": { "east": "tall" }, + "apply": { "model": "betternether:block/nether_brick_wall_ew", "y": 90, "uvlock": true } + }, + { "when": { "south": "tall" }, + "apply": { "model": "betternether:block/nether_brick_wall_ns", "y": 180, "uvlock": true } + }, + { "when": { "west": "tall" }, + "apply": { "model": "betternether:block/nether_brick_wall_ew", "y": 270, "uvlock": true } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/nether_cactus.json b/src/main/resources/assets/betternether/blockstates/nether_cactus.json new file mode 100644 index 0000000..04d28e0 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_cactus.json @@ -0,0 +1,6 @@ +{ + "variants": { + "top=false": { "model": "betternether:block/nether_cactus_middle" }, + "top=true": { "model": "betternether:block/nether_cactus_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_grass.json b/src/main/resources/assets/betternether/blockstates/nether_grass.json new file mode 100644 index 0000000..f771a23 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_grass.json @@ -0,0 +1,10 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/nether_grass_1" }, + { "model": "betternether:block/nether_grass_2" }, + { "model": "betternether:block/nether_grass_3" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/nether_lapis_ore.json b/src/main/resources/assets/betternether/blockstates/nether_lapis_ore.json new file mode 100644 index 0000000..49b01c2 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_lapis_ore.json @@ -0,0 +1,23 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/nether_lapis_ore" }, + { "model": "betternether:block/nether_lapis_ore", "y": 90 }, + { "model": "betternether:block/nether_lapis_ore", "y": 180 }, + { "model": "betternether:block/nether_lapis_ore", "y": 270 }, + { "model": "betternether:block/nether_lapis_ore", "x": 90 }, + { "model": "betternether:block/nether_lapis_ore", "x": 90, "y": 90 }, + { "model": "betternether:block/nether_lapis_ore", "x": 90, "y": 180 }, + { "model": "betternether:block/nether_lapis_ore", "x": 90, "y": 270 }, + { "model": "betternether:block/nether_lapis_ore", "x": 180 }, + { "model": "betternether:block/nether_lapis_ore", "x": 180, "y": 90 }, + { "model": "betternether:block/nether_lapis_ore", "x": 180, "y": 180 }, + { "model": "betternether:block/nether_lapis_ore", "x": 180, "y": 270 }, + { "model": "betternether:block/nether_lapis_ore", "x": 270 }, + { "model": "betternether:block/nether_lapis_ore", "x": 270, "y": 90 }, + { "model": "betternether:block/nether_lapis_ore", "x": 270, "y": 180 }, + { "model": "betternether:block/nether_lapis_ore", "x": 270, "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/nether_mycelium.json b/src/main/resources/assets/betternether/blockstates/nether_mycelium.json new file mode 100644 index 0000000..b001713 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_mycelium.json @@ -0,0 +1,17 @@ +{ + "variants": + { + "blue=false": [ + { "model": "betternether:block/nether_mycelium" }, + { "model": "betternether:block/nether_mycelium", "y": 90 }, + { "model": "betternether:block/nether_mycelium", "y": 180 }, + { "model": "betternether:block/nether_mycelium", "y": 270 } + ], + "blue=true": [ + { "model": "betternether:block/nether_mycelium_blue" }, + { "model": "betternether:block/nether_mycelium_blue", "y": 90 }, + { "model": "betternether:block/nether_mycelium_blue", "y": 180 }, + { "model": "betternether:block/nether_mycelium_blue", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/nether_reed.json b/src/main/resources/assets/betternether/blockstates/nether_reed.json new file mode 100644 index 0000000..91688a3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_reed.json @@ -0,0 +1,7 @@ +{ + "variants": + { + "top=true": { "model": "betternether:block/nether_reed_top" }, + "top=false": { "model": "betternether:block/nether_reed" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/nether_ruby_block.json b/src/main/resources/assets/betternether/blockstates/nether_ruby_block.json new file mode 100644 index 0000000..656f80a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_ruby_block.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/nether_ruby_block" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/nether_ruby_ore.json b/src/main/resources/assets/betternether/blockstates/nether_ruby_ore.json new file mode 100644 index 0000000..15b791a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_ruby_ore.json @@ -0,0 +1,23 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/nether_ruby_ore" }, + { "model": "betternether:block/nether_ruby_ore", "y": 90 }, + { "model": "betternether:block/nether_ruby_ore", "y": 180 }, + { "model": "betternether:block/nether_ruby_ore", "y": 270 }, + { "model": "betternether:block/nether_ruby_ore", "x": 90 }, + { "model": "betternether:block/nether_ruby_ore", "x": 90, "y": 90 }, + { "model": "betternether:block/nether_ruby_ore", "x": 90, "y": 180 }, + { "model": "betternether:block/nether_ruby_ore", "x": 90, "y": 270 }, + { "model": "betternether:block/nether_ruby_ore", "x": 180 }, + { "model": "betternether:block/nether_ruby_ore", "x": 180, "y": 90 }, + { "model": "betternether:block/nether_ruby_ore", "x": 180, "y": 180 }, + { "model": "betternether:block/nether_ruby_ore", "x": 180, "y": 270 }, + { "model": "betternether:block/nether_ruby_ore", "x": 270 }, + { "model": "betternether:block/nether_ruby_ore", "x": 270, "y": 90 }, + { "model": "betternether:block/nether_ruby_ore", "x": 270, "y": 180 }, + { "model": "betternether:block/nether_ruby_ore", "x": 270, "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/nether_ruby_slab.json b/src/main/resources/assets/betternether/blockstates/nether_ruby_slab.json new file mode 100644 index 0000000..a777e27 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_ruby_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/ruby_half_slab" }, + "type=top": { "model": "betternether:block/ruby_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/ruby_slab_double" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_ruby_stairs.json b/src/main/resources/assets/betternether/blockstates/nether_ruby_stairs.json new file mode 100644 index 0000000..cd87923 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_ruby_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/ruby_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/ruby_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/ruby_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/ruby_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/ruby_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/ruby_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/ruby_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/ruby_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/ruby_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/ruby_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/ruby_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/ruby_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/ruby_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/ruby_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/ruby_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/ruby_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/ruby_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/ruby_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/ruby_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/ruby_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/ruby_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/ruby_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/ruby_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/ruby_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/ruby_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/ruby_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/ruby_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/ruby_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/ruby_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/ruby_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/ruby_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/ruby_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/ruby_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/ruby_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/ruby_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/ruby_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/ruby_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/ruby_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/ruby_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/ruby_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_bark.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_bark.json new file mode 100644 index 0000000..25c2bcb --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_bark.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/nether_sakura_bark" }, + "axis=z": { "model": "betternether:block/nether_sakura_bark", "x": 90 }, + "axis=x": { "model": "betternether:block/nether_sakura_bark", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_button.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_button.json new file mode 100644 index 0000000..fe18738 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_button.json @@ -0,0 +1,28 @@ +{ + "variants": { + "face=floor,facing=east,powered=false": { "model": "betternether:block/nether_sakura_button", "y": 90 }, + "face=floor,facing=west,powered=false": { "model": "betternether:block/nether_sakura_button", "y": 270 }, + "face=floor,facing=south,powered=false": { "model": "betternether:block/nether_sakura_button", "y": 180 }, + "face=floor,facing=north,powered=false": { "model": "betternether:block/nether_sakura_button" }, + "face=wall,facing=east,powered=false": { "model": "betternether:block/nether_sakura_button", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=false": { "model": "betternether:block/nether_sakura_button", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=false": { "model": "betternether:block/nether_sakura_button", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=false": { "model": "betternether:block/nether_sakura_button", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=false": { "model": "betternether:block/nether_sakura_button", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=false": { "model": "betternether:block/nether_sakura_button", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=false": { "model": "betternether:block/nether_sakura_button", "x": 180 }, + "face=ceiling,facing=north,powered=false": { "model": "betternether:block/nether_sakura_button", "x": 180, "y": 180 }, + "face=floor,facing=east,powered=true": { "model": "betternether:block/nether_sakura_button_pressed", "y": 90 }, + "face=floor,facing=west,powered=true": { "model": "betternether:block/nether_sakura_button_pressed", "y": 270 }, + "face=floor,facing=south,powered=true": { "model": "betternether:block/nether_sakura_button_pressed", "y": 180 }, + "face=floor,facing=north,powered=true": { "model": "betternether:block/nether_sakura_button_pressed" }, + "face=wall,facing=east,powered=true": { "model": "betternether:block/nether_sakura_button_pressed", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=true": { "model": "betternether:block/nether_sakura_button_pressed", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=true": { "model": "betternether:block/nether_sakura_button_pressed", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=true": { "model": "betternether:block/nether_sakura_button_pressed", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=true": { "model": "betternether:block/nether_sakura_button_pressed", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=true": { "model": "betternether:block/nether_sakura_button_pressed", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=true": { "model": "betternether:block/nether_sakura_button_pressed", "x": 180 }, + "face=ceiling,facing=north,powered=true": { "model": "betternether:block/nether_sakura_button_pressed", "x": 180, "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_door.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_door.json new file mode 100644 index 0000000..70abc55 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_door.json @@ -0,0 +1,36 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false": { "model": "betternether:block/nether_sakura_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false": { "model": "betternether:block/nether_sakura_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false": { "model": "betternether:block/nether_sakura_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false": { "model": "betternether:block/nether_sakura_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false": { "model": "betternether:block/nether_sakura_door_bottom_hinge" }, + "facing=south,half=lower,hinge=right,open=false": { "model": "betternether:block/nether_sakura_door_bottom_hinge", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false": { "model": "betternether:block/nether_sakura_door_bottom_hinge", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false": { "model": "betternether:block/nether_sakura_door_bottom_hinge", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true": { "model": "betternether:block/nether_sakura_door_bottom_hinge", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true": { "model": "betternether:block/nether_sakura_door_bottom_hinge", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true": { "model": "betternether:block/nether_sakura_door_bottom_hinge", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true": { "model": "betternether:block/nether_sakura_door_bottom_hinge" }, + "facing=east,half=lower,hinge=right,open=true": { "model": "betternether:block/nether_sakura_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true": { "model": "betternether:block/nether_sakura_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true": { "model": "betternether:block/nether_sakura_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true": { "model": "betternether:block/nether_sakura_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false": { "model": "betternether:block/nether_sakura_door_top" }, + "facing=south,half=upper,hinge=left,open=false": { "model": "betternether:block/nether_sakura_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false": { "model": "betternether:block/nether_sakura_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false": { "model": "betternether:block/nether_sakura_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false": { "model": "betternether:block/nether_sakura_door_top_hinge" }, + "facing=south,half=upper,hinge=right,open=false": { "model": "betternether:block/nether_sakura_door_top_hinge", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false": { "model": "betternether:block/nether_sakura_door_top_hinge", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false": { "model": "betternether:block/nether_sakura_door_top_hinge", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true": { "model": "betternether:block/nether_sakura_door_top_hinge", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true": { "model": "betternether:block/nether_sakura_door_top_hinge", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true": { "model": "betternether:block/nether_sakura_door_top_hinge", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true": { "model": "betternether:block/nether_sakura_door_top_hinge" }, + "facing=east,half=upper,hinge=right,open=true": { "model": "betternether:block/nether_sakura_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true": { "model": "betternether:block/nether_sakura_door_top" }, + "facing=west,half=upper,hinge=right,open=true": { "model": "betternether:block/nether_sakura_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true": { "model": "betternether:block/nether_sakura_door_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_fence.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_fence.json new file mode 100644 index 0000000..37d5fd6 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_fence.json @@ -0,0 +1,17 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/nether_sakura_fence_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/nether_sakura_fence_side", "uvlock": true } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/nether_sakura_fence_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/nether_sakura_fence_side", "y": 180, "uvlock": true } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/nether_sakura_fence_side", "y": 270, "uvlock": true } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_gate.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_gate.json new file mode 100644 index 0000000..424acb6 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_gate.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=south,in_wall=false,open=false": { "model": "betternether:block/nether_sakura_fence_gate_closed", "uvlock": true }, + "facing=west,in_wall=false,open=false": { "model": "betternether:block/nether_sakura_fence_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=false": { "model": "betternether:block/nether_sakura_fence_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=false": { "model": "betternether:block/nether_sakura_fence_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=false,open=true": { "model": "betternether:block/nether_sakura_fence_gate_open", "uvlock": true }, + "facing=west,in_wall=false,open=true": { "model": "betternether:block/nether_sakura_fence_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=true": { "model": "betternether:block/nether_sakura_fence_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=true": { "model": "betternether:block/nether_sakura_fence_gate_open", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=false": { "model": "betternether:block/nether_sakura_wall_gate_closed", "uvlock": true }, + "facing=west,in_wall=true,open=false": { "model": "betternether:block/nether_sakura_wall_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=false": { "model": "betternether:block/nether_sakura_wall_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=false": { "model": "betternether:block/nether_sakura_wall_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=true": { "model": "betternether:block/nether_sakura_wall_gate_open", "uvlock": true }, + "facing=west,in_wall=true,open=true": { "model": "betternether:block/nether_sakura_wall_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=true": { "model": "betternether:block/nether_sakura_wall_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=true": { "model": "betternether:block/nether_sakura_wall_gate_open", "uvlock": true, "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_ladder.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_ladder.json new file mode 100644 index 0000000..4ea1c14 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_ladder.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/nether_sakura_ladder" }, + "facing=east": { "model": "betternether:block/nether_sakura_ladder", "y": 90 }, + "facing=south": { "model": "betternether:block/nether_sakura_ladder", "y": 180 }, + "facing=west": { "model": "betternether:block/nether_sakura_ladder", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_leaves.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_leaves.json new file mode 100644 index 0000000..13ff2eb --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_leaves.json @@ -0,0 +1,35 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/nether_sakura_leaves" }, + { "model": "betternether:block/nether_sakura_leaves", "y": 90 }, + { "model": "betternether:block/nether_sakura_leaves", "y": 180 }, + { "model": "betternether:block/nether_sakura_leaves", "y": 270 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_1" }, + { "model": "betternether:block/nether_sakura_leaves_flowers_1", "y": 90 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_1", "y": 180 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_1", "y": 270 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_2" }, + { "model": "betternether:block/nether_sakura_leaves_flowers_2", "y": 90 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_2", "y": 180 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_2", "y": 270 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_3" }, + { "model": "betternether:block/nether_sakura_leaves_flowers_3", "y": 90 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_3", "y": 180 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_3", "y": 270 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_4" }, + { "model": "betternether:block/nether_sakura_leaves_flowers_4", "y": 90 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_4", "y": 180 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_4", "y": 270 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_5" }, + { "model": "betternether:block/nether_sakura_leaves_flowers_5", "y": 90 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_5", "y": 180 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_5", "y": 270 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_6" }, + { "model": "betternether:block/nether_sakura_leaves_flowers_6", "y": 90 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_6", "y": 180 }, + { "model": "betternether:block/nether_sakura_leaves_flowers_6", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_log.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_log.json new file mode 100644 index 0000000..4f64fb9 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_log.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/nether_sakura_log" }, + "axis=z": { "model": "betternether:block/nether_sakura_log", "x": 90 }, + "axis=x": { "model": "betternether:block/nether_sakura_log", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_planks.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_planks.json new file mode 100644 index 0000000..42d9f78 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_planks.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/nether_sakura_planks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_plate.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_plate.json new file mode 100644 index 0000000..283381b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_plate.json @@ -0,0 +1,6 @@ +{ + "variants": { + "powered=false": { "model": "betternether:block/nether_sakura_pressure_plate_up" }, + "powered=true": { "model": "betternether:block/nether_sakura_pressure_plate_down" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_sapling.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_sapling.json new file mode 100644 index 0000000..0cec07e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_sapling.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/nether_sakura_sapling" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_slab.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_slab.json new file mode 100644 index 0000000..04e9084 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/nether_sakura_half_slab" }, + "type=top": { "model": "betternether:block/nether_sakura_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/nether_sakura_planks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_stairs.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_stairs.json new file mode 100644 index 0000000..2c2693e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/nether_sakura_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/nether_sakura_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/nether_sakura_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/nether_sakura_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/nether_sakura_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/nether_sakura_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/nether_sakura_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/nether_sakura_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/nether_sakura_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/nether_sakura_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/nether_sakura_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/nether_sakura_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/nether_sakura_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/nether_sakura_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/nether_sakura_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/nether_sakura_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/nether_sakura_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/nether_sakura_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/nether_sakura_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/nether_sakura_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/nether_sakura_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/nether_sakura_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/nether_sakura_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/nether_sakura_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/nether_sakura_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/nether_sakura_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/nether_sakura_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/nether_sakura_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/nether_sakura_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/nether_sakura_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/nether_sakura_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/nether_sakura_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/nether_sakura_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/nether_sakura_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/nether_sakura_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/nether_sakura_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/nether_sakura_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/nether_sakura_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/nether_sakura_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/nether_sakura_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/nether_sakura_trapdoor.json b/src/main/resources/assets/betternether/blockstates/nether_sakura_trapdoor.json new file mode 100644 index 0000000..885fcb2 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/nether_sakura_trapdoor.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=north,half=bottom,open=false": { "model": "betternether:block/nether_sakura_trapdoor" }, + "facing=south,half=bottom,open=false": { "model": "betternether:block/nether_sakura_trapdoor", "y": 180 }, + "facing=east,half=bottom,open=false": { "model": "betternether:block/nether_sakura_trapdoor", "y": 90 }, + "facing=west,half=bottom,open=false": { "model": "betternether:block/nether_sakura_trapdoor", "y": 270 }, + "facing=north,half=top,open=false": { "model": "betternether:block/nether_sakura_trapdoor", "x": 180 }, + "facing=south,half=top,open=false": { "model": "betternether:block/nether_sakura_trapdoor", "x": 180, "y": 180 }, + "facing=east,half=top,open=false": { "model": "betternether:block/nether_sakura_trapdoor", "x": 180, "y": 90 }, + "facing=west,half=top,open=false": { "model": "betternether:block/nether_sakura_trapdoor", "x": 180, "y": 270 }, + "facing=north,half=bottom,open=true": { "model": "betternether:block/nether_sakura_trapdoor", "x": 90 }, + "facing=south,half=bottom,open=true": { "model": "betternether:block/nether_sakura_trapdoor", "x": 90, "y": 180 }, + "facing=east,half=bottom,open=true": { "model": "betternether:block/nether_sakura_trapdoor", "x": 90, "y": 90 }, + "facing=west,half=bottom,open=true": { "model": "betternether:block/nether_sakura_trapdoor", "x": 90, "y": 270 }, + "facing=north,half=top,open=true": { "model": "betternether:block/nether_sakura_trapdoor", "x": 270, "y": 180 }, + "facing=south,half=top,open=true": { "model": "betternether:block/nether_sakura_trapdoor", "x": 270, "y": 0 }, + "facing=east,half=top,open=true": { "model": "betternether:block/nether_sakura_trapdoor", "x": 270, "y": 270 }, + "facing=west,half=top,open=true": { "model": "betternether:block/nether_sakura_trapdoor", "x": 270, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/netherite_fire_bowl.json b/src/main/resources/assets/betternether/blockstates/netherite_fire_bowl.json new file mode 100644 index 0000000..b750303 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/netherite_fire_bowl.json @@ -0,0 +1,6 @@ +{ + "variants": { + "fire=false": { "model": "betternether:block/netherite_fire_bowl_off" }, + "fire=true": { "model": "betternether:block/netherite_fire_bowl_on" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/netherite_fire_bowl_soul.json b/src/main/resources/assets/betternether/blockstates/netherite_fire_bowl_soul.json new file mode 100644 index 0000000..1ebd59c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/netherite_fire_bowl_soul.json @@ -0,0 +1,6 @@ +{ + "variants": { + "fire=false": { "model": "betternether:block/netherite_fire_bowl_soul_off" }, + "fire=true": { "model": "betternether:block/netherite_fire_bowl_soul_on" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/netherrack_furnace.json b/src/main/resources/assets/betternether/blockstates/netherrack_furnace.json new file mode 100644 index 0000000..dc963cd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/netherrack_furnace.json @@ -0,0 +1,12 @@ +{ + "variants": { + "lit=false,facing=north": { "model": "betternether:block/netherrack_furnace" }, + "lit=false,facing=south": { "model": "betternether:block/netherrack_furnace", "y": 180 }, + "lit=false,facing=west": { "model": "betternether:block/netherrack_furnace", "y": 270 }, + "lit=false,facing=east": { "model": "betternether:block/netherrack_furnace", "y": 90 }, + "lit=true,facing=north": { "model": "betternether:block/netherrack_furnace_on" }, + "lit=true,facing=south": { "model": "betternether:block/netherrack_furnace_on", "y": 180 }, + "lit=true,facing=west": { "model": "betternether:block/netherrack_furnace_on", "y": 270 }, + "lit=true,facing=east": { "model": "betternether:block/netherrack_furnace_on", "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/netherrack_moss.json b/src/main/resources/assets/betternether/blockstates/netherrack_moss.json new file mode 100644 index 0000000..50bd682 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/netherrack_moss.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/netherrack_moss" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/netherrack_stalactite.json b/src/main/resources/assets/betternether/blockstates/netherrack_stalactite.json new file mode 100644 index 0000000..02e9634 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/netherrack_stalactite.json @@ -0,0 +1,13 @@ +{ + "variants": + { + "size=0": { "model": "betternether:block/stalactite_0" }, + "size=1": { "model": "betternether:block/stalactite_1" }, + "size=2": { "model": "betternether:block/stalactite_2" }, + "size=3": { "model": "betternether:block/stalactite_3" }, + "size=4": { "model": "betternether:block/stalactite_4" }, + "size=5": { "model": "betternether:block/stalactite_5" }, + "size=6": { "model": "betternether:block/stalactite_6" }, + "size=7": { "model": "betternether:block/stalactite_7" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/obsidian_bricks.json b/src/main/resources/assets/betternether/blockstates/obsidian_bricks.json new file mode 100644 index 0000000..da5807a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/obsidian_bricks.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/obsidian_bricks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/obsidian_bricks_slab.json b/src/main/resources/assets/betternether/blockstates/obsidian_bricks_slab.json new file mode 100644 index 0000000..dedfa33 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/obsidian_bricks_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/obsidian_bricks_half_slab" }, + "type=top": { "model": "betternether:block/obsidian_bricks_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/obsidian_bricks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/obsidian_bricks_stairs.json b/src/main/resources/assets/betternether/blockstates/obsidian_bricks_stairs.json new file mode 100644 index 0000000..c12988a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/obsidian_bricks_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/obsidian_bricks_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/obsidian_bricks_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/obsidian_bricks_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/obsidian_bricks_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/obsidian_bricks_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/obsidian_bricks_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/obsidian_bricks_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/obsidian_bricks_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/obsidian_bricks_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/obsidian_bricks_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/obsidian_bricks_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/obsidian_bricks_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/obsidian_bricks_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/obsidian_bricks_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/obsidian_bricks_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/obsidian_bricks_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/obsidian_bricks_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/obsidian_bricks_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/obsidian_bricks_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/obsidian_bricks_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/obsidian_bricks_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/obsidian_bricks_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/obsidian_bricks_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/obsidian_bricks_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/obsidian_bricks_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/obsidian_bricks_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/obsidian_bricks_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/obsidian_bricks_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/obsidian_bricks_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/obsidian_bricks_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/obsidian_bricks_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/obsidian_bricks_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/obsidian_bricks_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/obsidian_bricks_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/obsidian_bricks_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/obsidian_bricks_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/obsidian_bricks_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/obsidian_bricks_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/obsidian_bricks_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/obsidian_bricks_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/obsidian_glass.json b/src/main/resources/assets/betternether/blockstates/obsidian_glass.json new file mode 100644 index 0000000..8c60ef1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/obsidian_glass.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/obsidian_glass" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/obsidian_glass_pane.json b/src/main/resources/assets/betternether/blockstates/obsidian_glass_pane.json new file mode 100644 index 0000000..3d0247a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/obsidian_glass_pane.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/obsidian_glass_pane_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/obsidian_glass_pane_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/obsidian_glass_pane_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/obsidian_glass_pane_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/obsidian_glass_pane_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/obsidian_glass_pane_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/obsidian_glass_pane_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/obsidian_glass_pane_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/obsidian_glass_pane_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/obsidian_tile.json b/src/main/resources/assets/betternether/blockstates/obsidian_tile.json new file mode 100644 index 0000000..cd144cf --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/obsidian_tile.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/obsidian_tile" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/obsidian_tile_slab.json b/src/main/resources/assets/betternether/blockstates/obsidian_tile_slab.json new file mode 100644 index 0000000..f045343 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/obsidian_tile_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/obsidian_tile_half_slab" }, + "type=top": { "model": "betternether:block/obsidian_tile_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/obsidian_tile_small" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/obsidian_tile_small.json b/src/main/resources/assets/betternether/blockstates/obsidian_tile_small.json new file mode 100644 index 0000000..5ef0bee --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/obsidian_tile_small.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/obsidian_tile_small" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/obsidian_tile_stairs.json b/src/main/resources/assets/betternether/blockstates/obsidian_tile_stairs.json new file mode 100644 index 0000000..47a68b4 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/obsidian_tile_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/obsidian_tile_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/obsidian_tile_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/obsidian_tile_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/obsidian_tile_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/obsidian_tile_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/obsidian_tile_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/obsidian_tile_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/obsidian_tile_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/obsidian_tile_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/obsidian_tile_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/obsidian_tile_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/obsidian_tile_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/obsidian_tile_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/obsidian_tile_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/obsidian_tile_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/obsidian_tile_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/obsidian_tile_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/obsidian_tile_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/obsidian_tile_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/obsidian_tile_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/obsidian_tile_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/obsidian_tile_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/obsidian_tile_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/obsidian_tile_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/obsidian_tile_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/obsidian_tile_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/obsidian_tile_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/obsidian_tile_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/obsidian_tile_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/obsidian_tile_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/obsidian_tile_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/obsidian_tile_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/obsidian_tile_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/obsidian_tile_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/obsidian_tile_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/obsidian_tile_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/obsidian_tile_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/obsidian_tile_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/obsidian_tile_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/obsidian_tile_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/orange_mushroom.json b/src/main/resources/assets/betternether/blockstates/orange_mushroom.json new file mode 100644 index 0000000..44018e4 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/orange_mushroom.json @@ -0,0 +1,29 @@ +{ + "variants": + { + "age=0": [ + { "model": "betternether:block/orange_mushroom_04" }, + { "model": "betternether:block/orange_mushroom_04", "y": 90 }, + { "model": "betternether:block/orange_mushroom_04", "y": 180 }, + { "model": "betternether:block/orange_mushroom_04", "y": 270 } + ], + "age=1": [ + { "model": "betternether:block/orange_mushroom_03" }, + { "model": "betternether:block/orange_mushroom_03", "y": 90 }, + { "model": "betternether:block/orange_mushroom_03", "y": 180 }, + { "model": "betternether:block/orange_mushroom_03", "y": 270 } + ], + "age=2": [ + { "model": "betternether:block/orange_mushroom_02" }, + { "model": "betternether:block/orange_mushroom_02", "y": 90 }, + { "model": "betternether:block/orange_mushroom_02", "y": 180 }, + { "model": "betternether:block/orange_mushroom_02", "y": 270 } + ], + "age=3": [ + { "model": "betternether:block/orange_mushroom_01" }, + { "model": "betternether:block/orange_mushroom_01", "y": 90 }, + { "model": "betternether:block/orange_mushroom_01", "y": 180 }, + { "model": "betternether:block/orange_mushroom_01", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/pig_statue_respawner.json b/src/main/resources/assets/betternether/blockstates/pig_statue_respawner.json new file mode 100644 index 0000000..93e5b0e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/pig_statue_respawner.json @@ -0,0 +1,9 @@ +{ + "variants": { + "facing=north,top=false": { "model": "betternether:block/pig_statue_respawner", "y": 90 }, + "facing=south,top=false": { "model": "betternether:block/pig_statue_respawner", "y": 270 }, + "facing=west,top=false": { "model": "betternether:block/pig_statue_respawner" }, + "facing=east,top=false": { "model": "betternether:block/pig_statue_respawner", "y": 180 }, + "top=true": { "model": "betternether:block/pig_statue_respawner_top" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/potted_plant.json b/src/main/resources/assets/betternether/blockstates/potted_plant.json new file mode 100644 index 0000000..d5749ab --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/potted_plant.json @@ -0,0 +1,71 @@ +{ + "variants": { + "plant=agave": { "model": "betternether:block/potted_agave" }, + "plant=barrel_cactus": { "model": "betternether:block/potted_cactus_barrel" }, + "plant=black_apple": [ + { "model": "betternether:block/potted_black_apple" }, + { "model": "betternether:block/potted_black_apple", "y": 90 }, + { "model": "betternether:block/potted_black_apple", "y": 180 }, + { "model": "betternether:block/potted_black_apple", "y": 270 } + ], + "plant=black_bush": { "model": "betternether:block/potted_black_bush" }, + "plant=egg_plant": { "model": "betternether:block/potted_egg_plant" }, + "plant=ink_bush": [ + { "model": "betternether:block/potted_ink_bush" }, + { "model": "betternether:block/potted_ink_bush", "y": 90 }, + { "model": "betternether:block/potted_ink_bush", "y": 180 }, + { "model": "betternether:block/potted_ink_bush", "y": 270 } + ], + "plant=reeds": { "model": "betternether:block/potted_reeds" }, + "plant=nether_cactus": { "model": "betternether:block/potted_nether_cactus" }, + "plant=nether_grass": [ + { "model": "betternether:block/potted_nether_grass_1" }, + { "model": "betternether:block/potted_nether_grass_2" }, + { "model": "betternether:block/potted_nether_grass_3" } + ], + "plant=orange_mushroom": [ + { "model": "betternether:block/potted_orange_mushroom_01" }, + { "model": "betternether:block/potted_orange_mushroom_02" }, + { "model": "betternether:block/potted_orange_mushroom_03" } + ], + "plant=red_mold": [ + { "model": "betternether:block/potted_red_mold" }, + { "model": "betternether:block/potted_red_mold", "y": 90 }, + { "model": "betternether:block/potted_red_mold", "y": 180 }, + { "model": "betternether:block/potted_red_mold", "y": 270 } + ], + "plant=gray_mold": [ + { "model": "betternether:block/potted_gray_mold" }, + { "model": "betternether:block/potted_gray_mold", "y": 90 }, + { "model": "betternether:block/potted_gray_mold", "y": 180 }, + { "model": "betternether:block/potted_gray_mold", "y": 270 } + ], + "plant=magma_flower": [ + { "model": "betternether:block/potted_magma_flower" }, + { "model": "betternether:block/potted_magma_flower", "y": 90 }, + { "model": "betternether:block/potted_magma_flower", "y": 180 }, + { "model": "betternether:block/potted_magma_flower", "y": 270 } + ], + "plant=nether_wart": { "model": "betternether:block/potted_wart" }, + "plant=willow": [ + { "model": "betternether:block/potted_willow" }, + { "model": "betternether:block/potted_willow", "y": 90 }, + { "model": "betternether:block/potted_willow", "y": 180 }, + { "model": "betternether:block/potted_willow", "y": 270 } + ], + "plant=smoker": [ + { "model": "betternether:block/potted_smoker" }, + { "model": "betternether:block/potted_smoker", "y": 90 }, + { "model": "betternether:block/potted_smoker", "y": 180 }, + { "model": "betternether:block/potted_smoker", "y": 270 } + ], + "plant=wart": { "model": "betternether:block/potted_mc_wart" }, + + "plant=jungle_plant": { "model": "betternether:block/potted_jungle_plant" }, + "plant=jellyfish_mushroom": { "model": "betternether:block/potted_jellyfish_mushroom" }, + "plant=swamp_grass": { "model": "betternether:block/potted_swamp_grass" }, + "plant=soul_grass": { "model": "betternether:block/potted_soul_grass" }, + "plant=bone_grass": { "model": "betternether:block/potted_bone_grass" }, + "plant=bone_mushroom": { "model": "betternether:block/potted_bone_mushroom" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass.json b/src/main/resources/assets/betternether/blockstates/quartz_glass.json new file mode 100644 index 0000000..2287530 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_black.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_black.json new file mode 100644 index 0000000..a8c3670 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_black.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_black" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_blue.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_blue.json new file mode 100644 index 0000000..f174e57 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_blue.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_blue" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_brown.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_brown.json new file mode 100644 index 0000000..950c527 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_brown.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_brown" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_cyan.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_cyan.json new file mode 100644 index 0000000..1bfba01 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_cyan.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_cyan" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed.json new file mode 100644 index 0000000..4c5be72 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_black.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_black.json new file mode 100644 index 0000000..739afbe --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_black.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_black" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_blue.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_blue.json new file mode 100644 index 0000000..ddad823 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_blue.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_blue" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_brown.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_brown.json new file mode 100644 index 0000000..81afad2 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_brown.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_brown" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_cyan.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_cyan.json new file mode 100644 index 0000000..f23c9c7 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_cyan.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_cyan" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_gray.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_gray.json new file mode 100644 index 0000000..19e4dd3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_gray.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_gray" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_green.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_green.json new file mode 100644 index 0000000..84616ef --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_green.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_green" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_light_blue.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_light_blue.json new file mode 100644 index 0000000..85d9c4a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_light_blue.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_light_blue" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_light_gray.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_light_gray.json new file mode 100644 index 0000000..7c4c44e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_light_gray.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_light_gray" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_lime.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_lime.json new file mode 100644 index 0000000..4b8e445 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_lime.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_lime" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_magenta.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_magenta.json new file mode 100644 index 0000000..8f5604b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_magenta.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_magenta" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_orange.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_orange.json new file mode 100644 index 0000000..6ac79af --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_orange.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_orange" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane.json new file mode 100644 index 0000000..51c1a01 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane.json @@ -0,0 +1,58 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_side_alt", "y": 90, "uvlock": true } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_black.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_black.json new file mode 100644 index 0000000..3e93cc3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_black.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_black_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_blue.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_blue.json new file mode 100644 index 0000000..b674e65 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_blue.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_blue_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_brown.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_brown.json new file mode 100644 index 0000000..c5c5ffc --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_brown.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_brown_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_cyan.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_cyan.json new file mode 100644 index 0000000..5f85d29 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_cyan.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_cyan_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_gray.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_gray.json new file mode 100644 index 0000000..1a19a61 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_gray.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_gray_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_green.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_green.json new file mode 100644 index 0000000..f8944be --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_green.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_green_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_light_blue.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_light_blue.json new file mode 100644 index 0000000..1025905 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_light_blue.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_blue_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_light_gray.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_light_gray.json new file mode 100644 index 0000000..afaab90 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_light_gray.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_light_gray_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_lime.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_lime.json new file mode 100644 index 0000000..655c423 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_lime.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_lime_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_magenta.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_magenta.json new file mode 100644 index 0000000..512add6 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_magenta.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_magenta_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_orange.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_orange.json new file mode 100644 index 0000000..35042c5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_orange.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_orange_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_pink.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_pink.json new file mode 100644 index 0000000..48b0d7c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_pink.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_pink_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_purple.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_purple.json new file mode 100644 index 0000000..a2e0fc3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_purple.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_purple_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_red.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_red.json new file mode 100644 index 0000000..85f5f40 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_red.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_red_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_white.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_white.json new file mode 100644 index 0000000..0fbaebe --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_white.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_white_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_yellow.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_yellow.json new file mode 100644 index 0000000..df56163 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pane_yellow.json @@ -0,0 +1,59 @@ +{ + "multipart": [ + { "when": { "north": false, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": false, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": false, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": true, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": true, "east": true, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": true, "east": true, "south": false, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": false, "east": true, "south": true, "west": false }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": false, "east": false, "south": true, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": true, "east": false, "south": false, "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_post" } + }, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_framed_pane_yellow_side_alt", "y": 90, "uvlock": true } + } + ] +} + diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pink.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pink.json new file mode 100644 index 0000000..1a99b86 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_pink.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_pink" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_purple.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_purple.json new file mode 100644 index 0000000..a3f249a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_purple.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_purple" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_red.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_red.json new file mode 100644 index 0000000..2792c15 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_red.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_red" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_white.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_white.json new file mode 100644 index 0000000..6579fa8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_white.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_white" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_yellow.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_yellow.json new file mode 100644 index 0000000..b40b4f1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_framed_yellow.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_framed_yellow" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_gray.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_gray.json new file mode 100644 index 0000000..291ab86 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_gray.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_gray" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_green.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_green.json new file mode 100644 index 0000000..e276851 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_green.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_green" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_light_blue.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_light_blue.json new file mode 100644 index 0000000..3317815 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_light_blue.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_light_blue" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_light_gray.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_light_gray.json new file mode 100644 index 0000000..356285a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_light_gray.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_light_gray" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_lime.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_lime.json new file mode 100644 index 0000000..c7e2ec3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_lime.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_lime" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_magenta.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_magenta.json new file mode 100644 index 0000000..4c2da51 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_magenta.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_magenta" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_orange.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_orange.json new file mode 100644 index 0000000..e6b8ca5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_orange.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_orange" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane.json new file mode 100644 index 0000000..c34827a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_black.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_black.json new file mode 100644 index 0000000..968daa0 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_black.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_black_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_black_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_black_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_black_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_black_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_black_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_black_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_black_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_black_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_blue.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_blue.json new file mode 100644 index 0000000..4f937fd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_blue.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_blue_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_blue_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_blue_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_blue_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_blue_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_blue_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_blue_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_blue_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_blue_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_brown.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_brown.json new file mode 100644 index 0000000..5d62855 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_brown.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_brown_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_brown_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_brown_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_brown_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_brown_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_brown_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_brown_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_brown_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_brown_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_cyan.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_cyan.json new file mode 100644 index 0000000..38aafce --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_cyan.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_cyan_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_cyan_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_cyan_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_cyan_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_cyan_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_cyan_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_cyan_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_cyan_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_cyan_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_gray.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_gray.json new file mode 100644 index 0000000..d7e38c0 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_gray.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_gray_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_gray_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_gray_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_gray_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_gray_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_gray_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_gray_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_gray_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_gray_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_green.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_green.json new file mode 100644 index 0000000..81ee069 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_green.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_green_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_green_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_green_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_green_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_green_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_green_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_green_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_green_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_green_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_light_blue.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_light_blue.json new file mode 100644 index 0000000..60465f2 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_light_blue.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_light_blue_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_blue_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_blue_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_blue_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_blue_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_blue_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_blue_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_blue_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_blue_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_light_gray.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_light_gray.json new file mode 100644 index 0000000..4ab2a55 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_light_gray.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_light_gray_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_gray_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_gray_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_gray_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_gray_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_gray_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_gray_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_gray_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_light_gray_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_lime.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_lime.json new file mode 100644 index 0000000..682da50 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_lime.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_lime_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_lime_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_lime_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_lime_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_lime_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_lime_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_lime_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_lime_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_lime_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_magenta.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_magenta.json new file mode 100644 index 0000000..55fe36d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_magenta.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_magenta_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_magenta_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_magenta_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_magenta_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_magenta_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_magenta_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_magenta_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_magenta_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_magenta_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_orange.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_orange.json new file mode 100644 index 0000000..28bbf46 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_orange.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_orange_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_orange_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_orange_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_orange_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_orange_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_orange_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_orange_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_orange_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_orange_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_pink.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_pink.json new file mode 100644 index 0000000..8202022 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_pink.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_pink_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_pink_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_pink_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_pink_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_pink_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_pink_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_pink_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_pink_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_pink_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_purple.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_purple.json new file mode 100644 index 0000000..ee00226 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_purple.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_purple_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_purple_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_purple_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_purple_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_purple_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_purple_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_purple_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_purple_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_purple_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_red.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_red.json new file mode 100644 index 0000000..a5805a1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_red.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_red_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_red_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_red_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_red_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_red_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_red_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_red_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_red_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_red_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_white.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_white.json new file mode 100644 index 0000000..12a9509 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_white.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_white_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_white_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_white_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_white_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_white_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_white_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_white_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_white_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_white_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_yellow.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_yellow.json new file mode 100644 index 0000000..c5682a4 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pane_yellow.json @@ -0,0 +1,29 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/quartz_glass_pane_yellow_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_yellow_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_yellow_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_yellow_side_alt" } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/quartz_glass_pane_yellow_side_alt", "y": 90 } + }, + { "when": { "north": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_yellow_noside" } + }, + { "when": { "east": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_yellow_noside_alt" } + }, + { "when": { "south": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_yellow_noside_alt", "y": 90 } + }, + { "when": { "west": false }, + "apply": { "model": "betternether:block/quartz_glass_pane_yellow_noside", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_pink.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_pink.json new file mode 100644 index 0000000..7e62ed1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_pink.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_pink" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_purple.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_purple.json new file mode 100644 index 0000000..806c0d8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_purple.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_purple" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_red.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_red.json new file mode 100644 index 0000000..d20f80e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_red.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_red" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_white.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_white.json new file mode 100644 index 0000000..7526b59 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_white.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_white" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_glass_yellow.json b/src/main/resources/assets/betternether/blockstates/quartz_glass_yellow.json new file mode 100644 index 0000000..20b91ce --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_glass_yellow.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/quartz_glass_yellow" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/quartz_stained_glass_pane.json b/src/main/resources/assets/betternether/blockstates/quartz_stained_glass_pane.json new file mode 100644 index 0000000..0a36adb --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/quartz_stained_glass_pane.json @@ -0,0 +1,97 @@ +{ + "forge_marker": 1, + "defaults": { + "textures": { + "edge": "betternether:block/blocks/quartz_glass", + "pane": "betternether:block/blocks/quartz_glass" + }, + "model": "betternether:block/quartz_glass_pane_post", + "uvlock": true + }, + "variants": { + "north": [{ + "true": { + "submodel": { + "nside": { + "model": "betternether:block/quartz_glass_pane_side" + } + } + }, + "false": { + "submodel": { + "nsidens": { + "model": "betternether:block/quartz_glass_pane_noside" + } + } + } + }], + "south": [{ + "true": { + "submodel": { + "sside": { + "model": "betternether:block/quartz_glass_pane_side_alt" + } + } + }, + "false": { + "submodel": { + "ssidens": { + "model": "betternether:block/quartz_glass_pane_noside_alt", + "y": 90 + } + } + } + }], + "east": [{ + "true": { + "submodel": { + "eside": { + "model": "betternether:block/quartz_glass_pane_side", + "y": 90 + } + } + }, + "false": { + "submodel": { + "esidens": { + "model": "betternether:block/quartz_glass_pane_noside_alt" + } + } + } + }], + "west": [{ + "true": { + "submodel": { + "wside": { + "model": "betternether:block/quartz_glass_pane_side_alt", + "y": 90 + } + } + }, + "false": { + "submodel": { + "wsidens": { + "model": "betternether:block/quartz_glass_pane_noside", + "y": 270 + } + } + } + }], + "color=black": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_black" } }], + "color=blue": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_blue" } }], + "color=brown": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_brown" } }], + "color=cyan": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_cyan" } }], + "color=gray": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_gray" } }], + "color=green": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_green" } }], + "color=light_blue": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_light_blue" } }], + "color=lime": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_lime" } }], + "color=magenta": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_magenta" } }], + "color=orange": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_orange" } }], + "color=pink": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_pink" } }], + "color=purple": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_purple" } }], + "color=red": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_red" } }], + "color=silver": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_silver" } }], + "color=white": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_white" } }], + "color=yellow": [{ "textures": { "pane": "betternether:block/blocks/quartz_stained_glass_yellow" } }] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/red_large_mushroom.json b/src/main/resources/assets/betternether/blockstates/red_large_mushroom.json new file mode 100644 index 0000000..65d0906 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/red_large_mushroom.json @@ -0,0 +1,7 @@ +{ + "variants": { + "shape=top": { "model": "betternether:block/red_mushroom_top" }, + "shape=middle": { "model": "betternether:block/red_mushroom_middle" }, + "shape=bottom": { "model": "betternether:block/red_mushroom_bottom" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/red_mold.json b/src/main/resources/assets/betternether/blockstates/red_mold.json new file mode 100644 index 0000000..1ee8971 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/red_mold.json @@ -0,0 +1,19 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/red_mold_01" }, + { "model": "betternether:block/red_mold_01", "y": 90 }, + { "model": "betternether:block/red_mold_01", "y": 180 }, + { "model": "betternether:block/red_mold_01", "y": 270 }, + { "model": "betternether:block/red_mold_02" }, + { "model": "betternether:block/red_mold_02", "y": 90 }, + { "model": "betternether:block/red_mold_02", "y": 180 }, + { "model": "betternether:block/red_mold_02", "y": 270 }, + { "model": "betternether:block/red_mold_03" }, + { "model": "betternether:block/red_mold_03", "y": 90 }, + { "model": "betternether:block/red_mold_03", "y": 180 }, + { "model": "betternether:block/red_mold_03", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/reeds_block.json b/src/main/resources/assets/betternether/blockstates/reeds_block.json new file mode 100644 index 0000000..30940c3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/reeds_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/reeds_block" }, + "axis=z": { "model": "betternether:block/reeds_block", "x": 90 }, + "axis=x": { "model": "betternether:block/reeds_block", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/reeds_button.json b/src/main/resources/assets/betternether/blockstates/reeds_button.json new file mode 100644 index 0000000..1e4fb5d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/reeds_button.json @@ -0,0 +1,28 @@ +{ + "variants": { + "face=floor,facing=east,powered=false": { "model": "betternether:block/reeds_button", "y": 90 }, + "face=floor,facing=west,powered=false": { "model": "betternether:block/reeds_button", "y": 270 }, + "face=floor,facing=south,powered=false": { "model": "betternether:block/reeds_button", "y": 180 }, + "face=floor,facing=north,powered=false": { "model": "betternether:block/reeds_button" }, + "face=wall,facing=east,powered=false": { "model": "betternether:block/reeds_button", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=false": { "model": "betternether:block/reeds_button", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=false": { "model": "betternether:block/reeds_button", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=false": { "model": "betternether:block/reeds_button", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=false": { "model": "betternether:block/reeds_button", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=false": { "model": "betternether:block/reeds_button", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=false": { "model": "betternether:block/reeds_button", "x": 180 }, + "face=ceiling,facing=north,powered=false": { "model": "betternether:block/reeds_button", "x": 180, "y": 180 }, + "face=floor,facing=east,powered=true": { "model": "betternether:block/reeds_button_pressed", "y": 90 }, + "face=floor,facing=west,powered=true": { "model": "betternether:block/reeds_button_pressed", "y": 270 }, + "face=floor,facing=south,powered=true": { "model": "betternether:block/reeds_button_pressed", "y": 180 }, + "face=floor,facing=north,powered=true": { "model": "betternether:block/reeds_button_pressed" }, + "face=wall,facing=east,powered=true": { "model": "betternether:block/reeds_button_pressed", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=true": { "model": "betternether:block/reeds_button_pressed", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=true": { "model": "betternether:block/reeds_button_pressed", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=true": { "model": "betternether:block/reeds_button_pressed", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=true": { "model": "betternether:block/reeds_button_pressed", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=true": { "model": "betternether:block/reeds_button_pressed", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=true": { "model": "betternether:block/reeds_button_pressed", "x": 180 }, + "face=ceiling,facing=north,powered=true": { "model": "betternether:block/reeds_button_pressed", "x": 180, "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/reeds_door.json b/src/main/resources/assets/betternether/blockstates/reeds_door.json new file mode 100644 index 0000000..6181545 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/reeds_door.json @@ -0,0 +1,36 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false": { "model": "betternether:block/reeds_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false": { "model": "betternether:block/reeds_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false": { "model": "betternether:block/reeds_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false": { "model": "betternether:block/reeds_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false": { "model": "betternether:block/reeds_door_bottom_hinge" }, + "facing=south,half=lower,hinge=right,open=false": { "model": "betternether:block/reeds_door_bottom_hinge", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false": { "model": "betternether:block/reeds_door_bottom_hinge", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false": { "model": "betternether:block/reeds_door_bottom_hinge", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true": { "model": "betternether:block/reeds_door_bottom_hinge", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true": { "model": "betternether:block/reeds_door_bottom_hinge", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true": { "model": "betternether:block/reeds_door_bottom_hinge", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true": { "model": "betternether:block/reeds_door_bottom_hinge" }, + "facing=east,half=lower,hinge=right,open=true": { "model": "betternether:block/reeds_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true": { "model": "betternether:block/reeds_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true": { "model": "betternether:block/reeds_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true": { "model": "betternether:block/reeds_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false": { "model": "betternether:block/reeds_door_top" }, + "facing=south,half=upper,hinge=left,open=false": { "model": "betternether:block/reeds_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false": { "model": "betternether:block/reeds_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false": { "model": "betternether:block/reeds_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false": { "model": "betternether:block/reeds_door_top_hinge" }, + "facing=south,half=upper,hinge=right,open=false": { "model": "betternether:block/reeds_door_top_hinge", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false": { "model": "betternether:block/reeds_door_top_hinge", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false": { "model": "betternether:block/reeds_door_top_hinge", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true": { "model": "betternether:block/reeds_door_top_hinge", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true": { "model": "betternether:block/reeds_door_top_hinge", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true": { "model": "betternether:block/reeds_door_top_hinge", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true": { "model": "betternether:block/reeds_door_top_hinge" }, + "facing=east,half=upper,hinge=right,open=true": { "model": "betternether:block/reeds_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true": { "model": "betternether:block/reeds_door_top" }, + "facing=west,half=upper,hinge=right,open=true": { "model": "betternether:block/reeds_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true": { "model": "betternether:block/reeds_door_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/reeds_fence.json b/src/main/resources/assets/betternether/blockstates/reeds_fence.json new file mode 100644 index 0000000..6bd47c0 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/reeds_fence.json @@ -0,0 +1,17 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/reeds_fence_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/reeds_fence_side" } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/reeds_fence_side", "y": 90 } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/reeds_fence_side", "y": 180 } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/reeds_fence_side", "y": 270 } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/reeds_gate.json b/src/main/resources/assets/betternether/blockstates/reeds_gate.json new file mode 100644 index 0000000..220d47d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/reeds_gate.json @@ -0,0 +1,36 @@ +{ + "variants": { + "facing=south,in_wall=false,open=false,powered=false": { "model": "betternether:block/reeds_fence_gate_closed", "uvlock": true }, + "facing=west,in_wall=false,open=false,powered=false": { "model": "betternether:block/reeds_fence_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=false,powered=false": { "model": "betternether:block/reeds_fence_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=false,powered=false": { "model": "betternether:block/reeds_fence_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=false,open=true,powered=false": { "model": "betternether:block/reeds_fence_gate_open", "uvlock": true }, + "facing=west,in_wall=false,open=true,powered=false": { "model": "betternether:block/reeds_fence_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=true,powered=false": { "model": "betternether:block/reeds_fence_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=true,powered=false": { "model": "betternether:block/reeds_fence_gate_open", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=false,powered=false": { "model": "betternether:block/reeds_wall_gate_closed", "uvlock": true }, + "facing=west,in_wall=true,open=false,powered=false": { "model": "betternether:block/reeds_wall_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=false,powered=false": { "model": "betternether:block/reeds_wall_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=false,powered=false": { "model": "betternether:block/reeds_wall_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=true,powered=false": { "model": "betternether:block/reeds_wall_gate_open", "uvlock": true }, + "facing=west,in_wall=true,open=true,powered=false": { "model": "betternether:block/reeds_wall_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=true,powered=false": { "model": "betternether:block/reeds_wall_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=true,powered=false": { "model": "betternether:block/reeds_wall_gate_open", "uvlock": true, "y": 270 }, + "facing=south,in_wall=false,open=false,powered=true": { "model": "betternether:block/reeds_fence_gate_closed", "uvlock": true }, + "facing=west,in_wall=false,open=false,powered=true": { "model": "betternether:block/reeds_fence_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=false,powered=true": { "model": "betternether:block/reeds_fence_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=false,powered=true": { "model": "betternether:block/reeds_fence_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=false,open=true,powered=true": { "model": "betternether:block/reeds_fence_gate_open", "uvlock": true }, + "facing=west,in_wall=false,open=true,powered=true": { "model": "betternether:block/reeds_fence_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=true,powered=true": { "model": "betternether:block/reeds_fence_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=true,powered=true": { "model": "betternether:block/reeds_fence_gate_open", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=false,powered=true": { "model": "betternether:block/reeds_wall_gate_closed", "uvlock": true }, + "facing=west,in_wall=true,open=false,powered=true": { "model": "betternether:block/reeds_wall_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=false,powered=true": { "model": "betternether:block/reeds_wall_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=false,powered=true": { "model": "betternether:block/reeds_wall_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=true,powered=true": { "model": "betternether:block/reeds_wall_gate_open", "uvlock": true }, + "facing=west,in_wall=true,open=true,powered=true": { "model": "betternether:block/reeds_wall_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=true,powered=true": { "model": "betternether:block/reeds_wall_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=true,powered=true": { "model": "betternether:block/reeds_wall_gate_open", "uvlock": true, "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/reeds_ladder.json b/src/main/resources/assets/betternether/blockstates/reeds_ladder.json new file mode 100644 index 0000000..a64fd33 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/reeds_ladder.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/reeds_ladder" }, + "facing=east": { "model": "betternether:block/reeds_ladder", "y": 90 }, + "facing=south": { "model": "betternether:block/reeds_ladder", "y": 180 }, + "facing=west": { "model": "betternether:block/reeds_ladder", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/reeds_plate.json b/src/main/resources/assets/betternether/blockstates/reeds_plate.json new file mode 100644 index 0000000..e033b99 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/reeds_plate.json @@ -0,0 +1,6 @@ +{ + "variants": { + "powered=false": { "model": "betternether:block/reeds_pressure_plate_up" }, + "powered=true": { "model": "betternether:block/reeds_pressure_plate_down" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/reeds_slab.json b/src/main/resources/assets/betternether/blockstates/reeds_slab.json new file mode 100644 index 0000000..ad5f67f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/reeds_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/reeds_half_slab" }, + "type=top": { "model": "betternether:block/reeds_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/reeds_block" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/reeds_stairs.json b/src/main/resources/assets/betternether/blockstates/reeds_stairs.json new file mode 100644 index 0000000..dcace9d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/reeds_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/reeds_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/reeds_stairs", "y": 180 }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/reeds_stairs", "y": 90 }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/reeds_stairs", "y": 270 }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/reeds_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/reeds_outer_stairs", "y": 180 }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/reeds_outer_stairs", "y": 90 }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/reeds_outer_stairs", "y": 270 }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/reeds_outer_stairs", "y": 270 }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/reeds_outer_stairs", "y": 90 }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/reeds_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/reeds_outer_stairs", "y": 180 }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/reeds_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/reeds_inner_stairs", "y": 180 }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/reeds_inner_stairs", "y": 90 }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/reeds_inner_stairs", "y": 270 }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/reeds_inner_stairs", "y": 270 }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/reeds_inner_stairs", "y": 90 }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/reeds_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/reeds_inner_stairs", "y": 180 }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/reeds_stairs", "x": 180 }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/reeds_stairs", "x": 180, "y": 180 }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/reeds_stairs", "x": 180, "y": 90 }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/reeds_stairs", "x": 180, "y": 270 }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/reeds_outer_stairs", "x": 180, "y": 90 }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/reeds_outer_stairs", "x": 180, "y": 270 }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/reeds_outer_stairs", "x": 180, "y": 180 }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/reeds_outer_stairs", "x": 180 }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/reeds_outer_stairs", "x": 180 }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/reeds_outer_stairs", "x": 180, "y": 180 }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/reeds_outer_stairs", "x": 180, "y": 90 }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/reeds_outer_stairs", "x": 180, "y": 270 }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/reeds_inner_stairs", "x": 180, "y": 90 }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/reeds_inner_stairs", "x": 180, "y": 270 }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/reeds_inner_stairs", "x": 180, "y": 180 }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/reeds_inner_stairs", "x": 180 }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/reeds_inner_stairs", "x": 180 }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/reeds_inner_stairs", "x": 180, "y": 180 }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/reeds_inner_stairs", "x": 180, "y": 90 }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/reeds_inner_stairs", "x": 180, "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/reeds_trapdoor.json b/src/main/resources/assets/betternether/blockstates/reeds_trapdoor.json new file mode 100644 index 0000000..4768ffb --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/reeds_trapdoor.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=north,half=bottom,open=false": { "model": "betternether:block/reeds_trapdoor" }, + "facing=south,half=bottom,open=false": { "model": "betternether:block/reeds_trapdoor", "y": 180 }, + "facing=east,half=bottom,open=false": { "model": "betternether:block/reeds_trapdoor", "y": 90 }, + "facing=west,half=bottom,open=false": { "model": "betternether:block/reeds_trapdoor", "y": 270 }, + "facing=north,half=top,open=false": { "model": "betternether:block/reeds_trapdoor", "x": 180 }, + "facing=south,half=top,open=false": { "model": "betternether:block/reeds_trapdoor", "x": 180, "y": 180 }, + "facing=east,half=top,open=false": { "model": "betternether:block/reeds_trapdoor", "x": 180, "y": 90 }, + "facing=west,half=top,open=false": { "model": "betternether:block/reeds_trapdoor", "x": 180, "y": 270 }, + "facing=north,half=bottom,open=true": { "model": "betternether:block/reeds_trapdoor", "x": 90 }, + "facing=south,half=bottom,open=true": { "model": "betternether:block/reeds_trapdoor", "x": 90, "y": 180 }, + "facing=east,half=bottom,open=true": { "model": "betternether:block/reeds_trapdoor", "x": 90, "y": 90 }, + "facing=west,half=bottom,open=true": { "model": "betternether:block/reeds_trapdoor", "x": 90, "y": 270 }, + "facing=north,half=top,open=true": { "model": "betternether:block/reeds_trapdoor", "x": 270, "y": 180 }, + "facing=south,half=top,open=true": { "model": "betternether:block/reeds_trapdoor", "x": 270, "y": 0 }, + "facing=east,half=top,open=true": { "model": "betternether:block/reeds_trapdoor", "x": 270, "y": 270 }, + "facing=west,half=top,open=true": { "model": "betternether:block/reeds_trapdoor", "x": 270, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_cincinnasite.json b/src/main/resources/assets/betternether/blockstates/roof_tile_cincinnasite.json new file mode 100644 index 0000000..300c6bc --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_cincinnasite.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/roof_tile_cincinnasite" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_cincinnasite_slab.json b/src/main/resources/assets/betternether/blockstates/roof_tile_cincinnasite_slab.json new file mode 100644 index 0000000..0986e55 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_cincinnasite_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/roof_tile_cincinnasite_slab" }, + "type=top": { "model": "betternether:block/roof_tile_cincinnasite_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/roof_tile_cincinnasite" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_cincinnasite_stairs.json b/src/main/resources/assets/betternether/blockstates/roof_tile_cincinnasite_stairs.json new file mode 100644 index 0000000..7ff43b5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_cincinnasite_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_cincinnasite_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_cincinnasite_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_cincinnasite_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_cincinnasite_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/roof_tile_cincinnasite_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/roof_tile_cincinnasite_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/roof_tile_cincinnasite_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/roof_tile_cincinnasite_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_cincinnasite_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_cincinnasite_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_nether_bricks.json b/src/main/resources/assets/betternether/blockstates/roof_tile_nether_bricks.json new file mode 100644 index 0000000..50baefc --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_nether_bricks.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/roof_tile_nether_bricks" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_nether_bricks_slab.json b/src/main/resources/assets/betternether/blockstates/roof_tile_nether_bricks_slab.json new file mode 100644 index 0000000..7ed8c2f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_nether_bricks_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/roof_tile_nether_bricks_slab" }, + "type=top": { "model": "betternether:block/roof_tile_nether_bricks_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/roof_tile_nether_bricks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_nether_bricks_stairs.json b/src/main/resources/assets/betternether/blockstates/roof_tile_nether_bricks_stairs.json new file mode 100644 index 0000000..e67e55e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_nether_bricks_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_nether_bricks_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_nether_bricks_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_nether_bricks_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_nether_bricks_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/roof_tile_nether_bricks_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/roof_tile_nether_bricks_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/roof_tile_nether_bricks_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/roof_tile_nether_bricks_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_nether_bricks_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_nether_bricks_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_reeds.json b/src/main/resources/assets/betternether/blockstates/roof_tile_reeds.json new file mode 100644 index 0000000..25347db --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_reeds.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/roof_tile_reeds" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_reeds_slab.json b/src/main/resources/assets/betternether/blockstates/roof_tile_reeds_slab.json new file mode 100644 index 0000000..1de0f1c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_reeds_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/roof_tile_reeds_slab" }, + "type=top": { "model": "betternether:block/roof_tile_reeds_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/roof_tile_reeds" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_reeds_stairs.json b/src/main/resources/assets/betternether/blockstates/roof_tile_reeds_stairs.json new file mode 100644 index 0000000..b50ce66 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_reeds_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_reeds_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_reeds_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_reeds_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_reeds_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_reeds_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_reeds_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_reeds_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_reeds_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/roof_tile_reeds_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/roof_tile_reeds_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/roof_tile_reeds_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/roof_tile_reeds_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_reeds_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_reeds_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_stalagnate.json b/src/main/resources/assets/betternether/blockstates/roof_tile_stalagnate.json new file mode 100644 index 0000000..27d8b14 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_stalagnate.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/roof_tile_stalagnate" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_stalagnate_slab.json b/src/main/resources/assets/betternether/blockstates/roof_tile_stalagnate_slab.json new file mode 100644 index 0000000..1148418 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_stalagnate_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/roof_tile_stalagnate_slab" }, + "type=top": { "model": "betternether:block/roof_tile_stalagnate_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/roof_tile_stalagnate" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_stalagnate_stairs.json b/src/main/resources/assets/betternether/blockstates/roof_tile_stalagnate_stairs.json new file mode 100644 index 0000000..4c203e8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_stalagnate_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_stalagnate_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_stalagnate_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_stalagnate_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_stalagnate_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/roof_tile_stalagnate_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/roof_tile_stalagnate_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/roof_tile_stalagnate_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/roof_tile_stalagnate_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_stalagnate_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_stalagnate_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_wart.json b/src/main/resources/assets/betternether/blockstates/roof_tile_wart.json new file mode 100644 index 0000000..a4961eb --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_wart.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/roof_tile_wart" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_wart_slab.json b/src/main/resources/assets/betternether/blockstates/roof_tile_wart_slab.json new file mode 100644 index 0000000..67aefd7 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_wart_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/roof_tile_wart_slab" }, + "type=top": { "model": "betternether:block/roof_tile_wart_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/roof_tile_wart" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_wart_stairs.json b/src/main/resources/assets/betternether/blockstates/roof_tile_wart_stairs.json new file mode 100644 index 0000000..2fc0187 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_wart_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_wart_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_wart_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_wart_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_wart_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_wart_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_wart_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_wart_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_wart_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_wart_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_wart_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_wart_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_wart_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_wart_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_wart_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_wart_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_wart_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_wart_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_wart_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_wart_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_wart_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/roof_tile_wart_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/roof_tile_wart_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/roof_tile_wart_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/roof_tile_wart_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_wart_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_wart_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_wart_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_wart_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_wart_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_wart_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_wart_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_wart_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_wart_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_wart_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_wart_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_wart_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_wart_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_wart_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_wart_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_wart_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_willow.json b/src/main/resources/assets/betternether/blockstates/roof_tile_willow.json new file mode 100644 index 0000000..8fa4707 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_willow.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/roof_tile_willow" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_willow_slab.json b/src/main/resources/assets/betternether/blockstates/roof_tile_willow_slab.json new file mode 100644 index 0000000..1b20793 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_willow_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/roof_tile_willow_slab" }, + "type=top": { "model": "betternether:block/roof_tile_willow_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/roof_tile_willow" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/roof_tile_willow_stairs.json b/src/main/resources/assets/betternether/blockstates/roof_tile_willow_stairs.json new file mode 100644 index 0000000..613dba4 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/roof_tile_willow_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_willow_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_willow_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_willow_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/roof_tile_willow_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_willow_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_willow_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_willow_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/roof_tile_willow_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_willow_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_willow_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_willow_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/roof_tile_willow_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_willow_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_willow_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_willow_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/roof_tile_willow_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_willow_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_willow_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_willow_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/roof_tile_willow_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/roof_tile_willow_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/roof_tile_willow_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/roof_tile_willow_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/roof_tile_willow_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_willow_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_willow_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_willow_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/roof_tile_willow_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_willow_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_willow_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_willow_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/roof_tile_willow_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_willow_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_willow_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_willow_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/roof_tile_willow_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_willow_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_willow_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_willow_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/roof_tile_willow_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_bark.json b/src/main/resources/assets/betternether/blockstates/rubeus_bark.json new file mode 100644 index 0000000..ca21f4e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_bark.json @@ -0,0 +1,13 @@ +{ + "variants": { + "shape=bottom,axis=y": { "model": "betternether:block/rubeus_bark" }, + "shape=bottom,axis=z": { "model": "betternether:block/rubeus_bark", "x": 90 }, + "shape=bottom,axis=x": { "model": "betternether:block/rubeus_bark", "x": 90, "y": 90 }, + "shape=middle,axis=y": { "model": "betternether:block/rubeus_bark_blend" }, + "shape=middle,axis=z": { "model": "betternether:block/rubeus_bark_blend", "x": 90 }, + "shape=middle,axis=x": { "model": "betternether:block/rubeus_bark_blend", "x": 90, "y": 90 }, + "shape=top,axis=y": { "model": "betternether:block/rubeus_bark_top" }, + "shape=top,axis=z": { "model": "betternether:block/rubeus_bark_top", "x": 90 }, + "shape=top,axis=x": { "model": "betternether:block/rubeus_bark_top", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_button.json b/src/main/resources/assets/betternether/blockstates/rubeus_button.json new file mode 100644 index 0000000..99147ed --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_button.json @@ -0,0 +1,28 @@ +{ + "variants": { + "face=floor,facing=east,powered=false": { "model": "betternether:block/rubeus_button", "y": 90 }, + "face=floor,facing=west,powered=false": { "model": "betternether:block/rubeus_button", "y": 270 }, + "face=floor,facing=south,powered=false": { "model": "betternether:block/rubeus_button", "y": 180 }, + "face=floor,facing=north,powered=false": { "model": "betternether:block/rubeus_button" }, + "face=wall,facing=east,powered=false": { "model": "betternether:block/rubeus_button", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=false": { "model": "betternether:block/rubeus_button", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=false": { "model": "betternether:block/rubeus_button", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=false": { "model": "betternether:block/rubeus_button", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=false": { "model": "betternether:block/rubeus_button", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=false": { "model": "betternether:block/rubeus_button", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=false": { "model": "betternether:block/rubeus_button", "x": 180 }, + "face=ceiling,facing=north,powered=false": { "model": "betternether:block/rubeus_button", "x": 180, "y": 180 }, + "face=floor,facing=east,powered=true": { "model": "betternether:block/rubeus_button_pressed", "y": 90 }, + "face=floor,facing=west,powered=true": { "model": "betternether:block/rubeus_button_pressed", "y": 270 }, + "face=floor,facing=south,powered=true": { "model": "betternether:block/rubeus_button_pressed", "y": 180 }, + "face=floor,facing=north,powered=true": { "model": "betternether:block/rubeus_button_pressed" }, + "face=wall,facing=east,powered=true": { "model": "betternether:block/rubeus_button_pressed", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=true": { "model": "betternether:block/rubeus_button_pressed", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=true": { "model": "betternether:block/rubeus_button_pressed", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=true": { "model": "betternether:block/rubeus_button_pressed", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=true": { "model": "betternether:block/rubeus_button_pressed", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=true": { "model": "betternether:block/rubeus_button_pressed", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=true": { "model": "betternether:block/rubeus_button_pressed", "x": 180 }, + "face=ceiling,facing=north,powered=true": { "model": "betternether:block/rubeus_button_pressed", "x": 180, "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_cone.json b/src/main/resources/assets/betternether/blockstates/rubeus_cone.json new file mode 100644 index 0000000..4ff62bc --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_cone.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/rubeus_cone" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_door.json b/src/main/resources/assets/betternether/blockstates/rubeus_door.json new file mode 100644 index 0000000..04238c7 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_door.json @@ -0,0 +1,36 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false": { "model": "betternether:block/rubeus_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false": { "model": "betternether:block/rubeus_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false": { "model": "betternether:block/rubeus_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false": { "model": "betternether:block/rubeus_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false": { "model": "betternether:block/rubeus_door_bottom_hinge" }, + "facing=south,half=lower,hinge=right,open=false": { "model": "betternether:block/rubeus_door_bottom_hinge", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false": { "model": "betternether:block/rubeus_door_bottom_hinge", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false": { "model": "betternether:block/rubeus_door_bottom_hinge", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true": { "model": "betternether:block/rubeus_door_bottom_hinge", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true": { "model": "betternether:block/rubeus_door_bottom_hinge", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true": { "model": "betternether:block/rubeus_door_bottom_hinge", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true": { "model": "betternether:block/rubeus_door_bottom_hinge" }, + "facing=east,half=lower,hinge=right,open=true": { "model": "betternether:block/rubeus_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true": { "model": "betternether:block/rubeus_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true": { "model": "betternether:block/rubeus_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true": { "model": "betternether:block/rubeus_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false": { "model": "betternether:block/rubeus_door_top" }, + "facing=south,half=upper,hinge=left,open=false": { "model": "betternether:block/rubeus_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false": { "model": "betternether:block/rubeus_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false": { "model": "betternether:block/rubeus_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false": { "model": "betternether:block/rubeus_door_top_hinge" }, + "facing=south,half=upper,hinge=right,open=false": { "model": "betternether:block/rubeus_door_top_hinge", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false": { "model": "betternether:block/rubeus_door_top_hinge", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false": { "model": "betternether:block/rubeus_door_top_hinge", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true": { "model": "betternether:block/rubeus_door_top_hinge", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true": { "model": "betternether:block/rubeus_door_top_hinge", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true": { "model": "betternether:block/rubeus_door_top_hinge", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true": { "model": "betternether:block/rubeus_door_top_hinge" }, + "facing=east,half=upper,hinge=right,open=true": { "model": "betternether:block/rubeus_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true": { "model": "betternether:block/rubeus_door_top" }, + "facing=west,half=upper,hinge=right,open=true": { "model": "betternether:block/rubeus_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true": { "model": "betternether:block/rubeus_door_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_fence.json b/src/main/resources/assets/betternether/blockstates/rubeus_fence.json new file mode 100644 index 0000000..e0b429b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_fence.json @@ -0,0 +1,17 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/rubeus_fence_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/rubeus_fence_side", "uvlock": true } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/rubeus_fence_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/rubeus_fence_side", "y": 180, "uvlock": true } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/rubeus_fence_side", "y": 270, "uvlock": true } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_gate.json b/src/main/resources/assets/betternether/blockstates/rubeus_gate.json new file mode 100644 index 0000000..032eff5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_gate.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=south,in_wall=false,open=false": { "model": "betternether:block/rubeus_fence_gate_closed", "uvlock": true }, + "facing=west,in_wall=false,open=false": { "model": "betternether:block/rubeus_fence_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=false": { "model": "betternether:block/rubeus_fence_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=false": { "model": "betternether:block/rubeus_fence_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=false,open=true": { "model": "betternether:block/rubeus_fence_gate_open", "uvlock": true }, + "facing=west,in_wall=false,open=true": { "model": "betternether:block/rubeus_fence_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=true": { "model": "betternether:block/rubeus_fence_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=true": { "model": "betternether:block/rubeus_fence_gate_open", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=false": { "model": "betternether:block/rubeus_wall_gate_closed", "uvlock": true }, + "facing=west,in_wall=true,open=false": { "model": "betternether:block/rubeus_wall_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=false": { "model": "betternether:block/rubeus_wall_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=false": { "model": "betternether:block/rubeus_wall_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=true": { "model": "betternether:block/rubeus_wall_gate_open", "uvlock": true }, + "facing=west,in_wall=true,open=true": { "model": "betternether:block/rubeus_wall_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=true": { "model": "betternether:block/rubeus_wall_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=true": { "model": "betternether:block/rubeus_wall_gate_open", "uvlock": true, "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_ladder.json b/src/main/resources/assets/betternether/blockstates/rubeus_ladder.json new file mode 100644 index 0000000..9850c7b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_ladder.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/rubeus_ladder" }, + "facing=east": { "model": "betternether:block/rubeus_ladder", "y": 90 }, + "facing=south": { "model": "betternether:block/rubeus_ladder", "y": 180 }, + "facing=west": { "model": "betternether:block/rubeus_ladder", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_leaves.json b/src/main/resources/assets/betternether/blockstates/rubeus_leaves.json new file mode 100644 index 0000000..ac4c18b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_leaves.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/rubeus_leaves" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_log.json b/src/main/resources/assets/betternether/blockstates/rubeus_log.json new file mode 100644 index 0000000..66e1088 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_log.json @@ -0,0 +1,13 @@ +{ + "variants": { + "shape=bottom,axis=y": { "model": "betternether:block/rubeus_log" }, + "shape=bottom,axis=z": { "model": "betternether:block/rubeus_log", "x": 90 }, + "shape=bottom,axis=x": { "model": "betternether:block/rubeus_log", "x": 90, "y": 90 }, + "shape=middle,axis=y": { "model": "betternether:block/rubeus_log_blend" }, + "shape=middle,axis=z": { "model": "betternether:block/rubeus_log_blend", "x": 90 }, + "shape=middle,axis=x": { "model": "betternether:block/rubeus_log_blend", "x": 90, "y": 90 }, + "shape=top,axis=y": { "model": "betternether:block/rubeus_log_top" }, + "shape=top,axis=z": { "model": "betternether:block/rubeus_log_top", "x": 90 }, + "shape=top,axis=x": { "model": "betternether:block/rubeus_log_top", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_planks.json b/src/main/resources/assets/betternether/blockstates/rubeus_planks.json new file mode 100644 index 0000000..7efb39f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_planks.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/rubeus_planks" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_plate.json b/src/main/resources/assets/betternether/blockstates/rubeus_plate.json new file mode 100644 index 0000000..65c1b32 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_plate.json @@ -0,0 +1,6 @@ +{ + "variants": { + "powered=false": { "model": "betternether:block/rubeus_pressure_plate_up" }, + "powered=true": { "model": "betternether:block/rubeus_pressure_plate_down" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_sapling.json b/src/main/resources/assets/betternether/blockstates/rubeus_sapling.json new file mode 100644 index 0000000..95bb031 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_sapling.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/rubeus_sapling" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_slab.json b/src/main/resources/assets/betternether/blockstates/rubeus_slab.json new file mode 100644 index 0000000..30b4f9f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/rubeus_half_slab" }, + "type=top": { "model": "betternether:block/rubeus_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/rubeus_planks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_stairs.json b/src/main/resources/assets/betternether/blockstates/rubeus_stairs.json new file mode 100644 index 0000000..4b8827e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/rubeus_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/rubeus_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/rubeus_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/rubeus_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/rubeus_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/rubeus_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/rubeus_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/rubeus_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/rubeus_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/rubeus_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/rubeus_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/rubeus_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/rubeus_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/rubeus_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/rubeus_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/rubeus_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/rubeus_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/rubeus_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/rubeus_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/rubeus_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/rubeus_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/rubeus_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/rubeus_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/rubeus_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/rubeus_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/rubeus_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/rubeus_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/rubeus_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/rubeus_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/rubeus_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/rubeus_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/rubeus_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/rubeus_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/rubeus_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/rubeus_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/rubeus_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/rubeus_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/rubeus_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/rubeus_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/rubeus_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/rubeus_trapdoor.json b/src/main/resources/assets/betternether/blockstates/rubeus_trapdoor.json new file mode 100644 index 0000000..e37a3b7 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/rubeus_trapdoor.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=north,half=bottom,open=false": { "model": "betternether:block/rubeus_trapdoor" }, + "facing=south,half=bottom,open=false": { "model": "betternether:block/rubeus_trapdoor", "y": 180 }, + "facing=east,half=bottom,open=false": { "model": "betternether:block/rubeus_trapdoor", "y": 90 }, + "facing=west,half=bottom,open=false": { "model": "betternether:block/rubeus_trapdoor", "y": 270 }, + "facing=north,half=top,open=false": { "model": "betternether:block/rubeus_trapdoor", "x": 180 }, + "facing=south,half=top,open=false": { "model": "betternether:block/rubeus_trapdoor", "x": 180, "y": 180 }, + "facing=east,half=top,open=false": { "model": "betternether:block/rubeus_trapdoor", "x": 180, "y": 90 }, + "facing=west,half=top,open=false": { "model": "betternether:block/rubeus_trapdoor", "x": 180, "y": 270 }, + "facing=north,half=bottom,open=true": { "model": "betternether:block/rubeus_trapdoor", "x": 90 }, + "facing=south,half=bottom,open=true": { "model": "betternether:block/rubeus_trapdoor", "x": 90, "y": 180 }, + "facing=east,half=bottom,open=true": { "model": "betternether:block/rubeus_trapdoor", "x": 90, "y": 90 }, + "facing=west,half=bottom,open=true": { "model": "betternether:block/rubeus_trapdoor", "x": 90, "y": 270 }, + "facing=north,half=top,open=true": { "model": "betternether:block/rubeus_trapdoor", "x": 270, "y": 180 }, + "facing=south,half=top,open=true": { "model": "betternether:block/rubeus_trapdoor", "x": 270, "y": 0 }, + "facing=east,half=top,open=true": { "model": "betternether:block/rubeus_trapdoor", "x": 270, "y": 270 }, + "facing=west,half=top,open=true": { "model": "betternether:block/rubeus_trapdoor", "x": 270, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/sepia_bone_grass.json b/src/main/resources/assets/betternether/blockstates/sepia_bone_grass.json new file mode 100644 index 0000000..6d16b70 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/sepia_bone_grass.json @@ -0,0 +1,13 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/sepia_bone_grass_1" }, + { "model": "betternether:block/sepia_bone_grass_2" }, + { "model": "betternether:block/sepia_bone_grass_3" }, + { "model": "betternether:block/sepia_bone_grass_4" }, + { "model": "betternether:block/sepia_bone_grass_5" }, + { "model": "betternether:block/sepia_bone_grass_6" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/sepia_mushroom_grass.json b/src/main/resources/assets/betternether/blockstates/sepia_mushroom_grass.json new file mode 100644 index 0000000..5771082 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/sepia_mushroom_grass.json @@ -0,0 +1,11 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/sepia_mushroom_grass" }, + { "model": "betternether:block/sepia_mushroom_grass", "y": 90 }, + { "model": "betternether:block/sepia_mushroom_grass", "y": 180 }, + { "model": "betternether:block/sepia_mushroom_grass", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/sign_anchor_tree.json b/src/main/resources/assets/betternether/blockstates/sign_anchor_tree.json new file mode 100644 index 0000000..6600ba1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/sign_anchor_tree.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/empty_anchor_tree" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/sign_mushroom.json b/src/main/resources/assets/betternether/blockstates/sign_mushroom.json new file mode 100644 index 0000000..e554e85 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/sign_mushroom.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/empty_mushroom" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/sign_mushroom_fir.json b/src/main/resources/assets/betternether/blockstates/sign_mushroom_fir.json new file mode 100644 index 0000000..34502d9 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/sign_mushroom_fir.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/empty_mushroom_fir" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/sign_nether_sakura.json b/src/main/resources/assets/betternether/blockstates/sign_nether_sakura.json new file mode 100644 index 0000000..ab63266 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/sign_nether_sakura.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/empty_nether_sakura" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/sign_reed.json b/src/main/resources/assets/betternether/blockstates/sign_reed.json new file mode 100644 index 0000000..18d0569 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/sign_reed.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/empty_reed" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/sign_rubeus.json b/src/main/resources/assets/betternether/blockstates/sign_rubeus.json new file mode 100644 index 0000000..e03d5bd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/sign_rubeus.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/empty_rubeus" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/sign_stalagnate.json b/src/main/resources/assets/betternether/blockstates/sign_stalagnate.json new file mode 100644 index 0000000..82a69c3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/sign_stalagnate.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/empty_stalagnate" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/sign_wart.json b/src/main/resources/assets/betternether/blockstates/sign_wart.json new file mode 100644 index 0000000..cde69f0 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/sign_wart.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/empty_wart" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/sign_willow.json b/src/main/resources/assets/betternether/blockstates/sign_willow.json new file mode 100644 index 0000000..b4d9ed5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/sign_willow.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betternether:block/empty_willow" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/smoker.json b/src/main/resources/assets/betternether/blockstates/smoker.json new file mode 100644 index 0000000..045786a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/smoker.json @@ -0,0 +1,17 @@ +{ + "variants": { + "shape=top": { "model": "betternether:block/smoker_top" }, + "shape=middle": [ + { "model": "betternether:block/smoker_middle" }, + { "model": "betternether:block/smoker_middle", "y": 90 }, + { "model": "betternether:block/smoker_middle", "y": 180 }, + { "model": "betternether:block/smoker_middle", "y": 270 } + ], + "shape=bottom": [ + { "model": "betternether:block/smoker_bottom" }, + { "model": "betternether:block/smoker_bottom", "y": 90 }, + { "model": "betternether:block/smoker_bottom", "y": 180 }, + { "model": "betternether:block/smoker_bottom", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/soul_grass.json b/src/main/resources/assets/betternether/blockstates/soul_grass.json new file mode 100644 index 0000000..814e1b4 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_grass.json @@ -0,0 +1,11 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/soul_grass_1" }, + { "model": "betternether:block/soul_grass_2" }, + { "model": "betternether:block/soul_grass_3" }, + { "model": "betternether:block/soul_grass_4" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/soul_lily.json b/src/main/resources/assets/betternether/blockstates/soul_lily.json new file mode 100644 index 0000000..1dcac15 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_lily.json @@ -0,0 +1,20 @@ +{ + "variants": + { + "shape=small": { "model": "betternether:block/soul_lily_small" }, + "shape=medium_bottom": { "model": "betternether:block/soul_lily_medium" }, + "shape=medium_top": { "model": "betternether:block/soul_lily_medium_top" }, + "shape=big_bottom": { "model": "betternether:block/soul_lily_big_bottom" }, + "shape=big_middle": [ + { "model": "betternether:block/soul_lily_big_middle" }, + { "model": "betternether:block/soul_lily_big_middle", "y": 90 }, + { "model": "betternether:block/soul_lily_big_middle", "y": 180 }, + { "model": "betternether:block/soul_lily_big_middle", "y": 270 } + ], + "shape=big_top_center": { "model": "betternether:block/soul_lily_big_top_center" }, + "shape=big_top_side_n": { "model": "betternether:block/soul_lily_top_side" }, + "shape=big_top_side_s": { "model": "betternether:block/soul_lily_top_side", "y": 180 }, + "shape=big_top_side_e": { "model": "betternether:block/soul_lily_top_side", "y": 90 }, + "shape=big_top_side_w": { "model": "betternether:block/soul_lily_top_side", "y": 270 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/soul_lily_sapling.json b/src/main/resources/assets/betternether/blockstates/soul_lily_sapling.json new file mode 100644 index 0000000..0b2eead --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_lily_sapling.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/soul_lily_sapling" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/soul_sandstone.json b/src/main/resources/assets/betternether/blockstates/soul_sandstone.json new file mode 100644 index 0000000..9d2dcaa --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_sandstone.json @@ -0,0 +1,17 @@ +{ + "variants": + { + "up=true": [ + { "model": "betternether:block/soul_sandstone" }, + { "model": "betternether:block/soul_sandstone", "y": 90 }, + { "model": "betternether:block/soul_sandstone", "y": 180 }, + { "model": "betternether:block/soul_sandstone", "y": 270 } + ], + "up=false": [ + { "model": "betternether:block/soul_sandstone_bottom" }, + { "model": "betternether:block/soul_sandstone_bottom", "y": 90 }, + { "model": "betternether:block/soul_sandstone_bottom", "y": 180 }, + { "model": "betternether:block/soul_sandstone_bottom", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/soul_sandstone_chiseled.json b/src/main/resources/assets/betternether/blockstates/soul_sandstone_chiseled.json new file mode 100644 index 0000000..4aaf20f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_sandstone_chiseled.json @@ -0,0 +1,11 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/soul_sandstone_chiseled" }, + { "model": "betternether:block/soul_sandstone_chiseled", "y": 90 }, + { "model": "betternether:block/soul_sandstone_chiseled", "y": 180 }, + { "model": "betternether:block/soul_sandstone_chiseled", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/soul_sandstone_cut.json b/src/main/resources/assets/betternether/blockstates/soul_sandstone_cut.json new file mode 100644 index 0000000..dcac236 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_sandstone_cut.json @@ -0,0 +1,17 @@ +{ + "variants": + { + "up=true": [ + { "model": "betternether:block/soul_sandstone_cut" }, + { "model": "betternether:block/soul_sandstone_cut", "y": 90 }, + { "model": "betternether:block/soul_sandstone_cut", "y": 180 }, + { "model": "betternether:block/soul_sandstone_cut", "y": 270 } + ], + "up=false": [ + { "model": "betternether:block/soul_sandstone_smooth" }, + { "model": "betternether:block/soul_sandstone_smooth", "y": 90 }, + { "model": "betternether:block/soul_sandstone_smooth", "y": 180 }, + { "model": "betternether:block/soul_sandstone_smooth", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/soul_sandstone_cut_slab.json b/src/main/resources/assets/betternether/blockstates/soul_sandstone_cut_slab.json new file mode 100644 index 0000000..16dde0e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_sandstone_cut_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/soul_sandstone_cut_slab" }, + "type=top": { "model": "betternether:block/soul_sandstone_cut_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/soul_sandstone_cut" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/soul_sandstone_cut_stairs.json b/src/main/resources/assets/betternether/blockstates/soul_sandstone_cut_stairs.json new file mode 100644 index 0000000..2f6548c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_sandstone_cut_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/soul_sandstone_cut_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/soul_sandstone_cut_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/soul_sandstone_cut_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/soul_sandstone_cut_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/soul_sandstone_cut_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/soul_sandstone_cut_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/soul_sandstone_cut_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/soul_sandstone_cut_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/soul_sandstone_cut_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/soul_sandstone_cut_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/soul_sandstone_cut_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/soul_sandstone_cut_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/soul_sandstone_cut_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/soul_sandstone_cut_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/soul_sandstone_slab.json b/src/main/resources/assets/betternether/blockstates/soul_sandstone_slab.json new file mode 100644 index 0000000..7ba1573 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_sandstone_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/soul_sandstone_slab" }, + "type=top": { "model": "betternether:block/soul_sandstone_slab_top", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/soul_sandstone" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/soul_sandstone_smooth.json b/src/main/resources/assets/betternether/blockstates/soul_sandstone_smooth.json new file mode 100644 index 0000000..630c992 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_sandstone_smooth.json @@ -0,0 +1,11 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/soul_sandstone_smooth" }, + { "model": "betternether:block/soul_sandstone_smooth", "y": 90 }, + { "model": "betternether:block/soul_sandstone_smooth", "y": 180 }, + { "model": "betternether:block/soul_sandstone_smooth", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/soul_sandstone_smooth_slab.json b/src/main/resources/assets/betternether/blockstates/soul_sandstone_smooth_slab.json new file mode 100644 index 0000000..7272f9c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_sandstone_smooth_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/soul_sandstone_smooth_slab" }, + "type=top": { "model": "betternether:block/soul_sandstone_smooth_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/soul_sandstone_smooth" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/soul_sandstone_smooth_stairs.json b/src/main/resources/assets/betternether/blockstates/soul_sandstone_smooth_stairs.json new file mode 100644 index 0000000..6ec1cf4 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_sandstone_smooth_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/soul_sandstone_smooth_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/soul_sandstone_smooth_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/soul_sandstone_smooth_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/soul_sandstone_smooth_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/soul_sandstone_smooth_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/soul_sandstone_smooth_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/soul_sandstone_smooth_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/soul_sandstone_smooth_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/soul_sandstone_smooth_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/soul_sandstone_smooth_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/soul_sandstone_stairs.json b/src/main/resources/assets/betternether/blockstates/soul_sandstone_stairs.json new file mode 100644 index 0000000..575b0dc --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_sandstone_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/soul_sandstone_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/soul_sandstone_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/soul_sandstone_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/soul_sandstone_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/soul_sandstone_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/soul_sandstone_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/soul_sandstone_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/soul_sandstone_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/soul_sandstone_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/soul_sandstone_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/soul_sandstone_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/soul_sandstone_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/soul_sandstone_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/soul_sandstone_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/soul_sandstone_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/soul_sandstone_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/soul_sandstone_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/soul_sandstone_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/soul_sandstone_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/soul_sandstone_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/soul_sandstone_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/soul_sandstone_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/soul_sandstone_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/soul_sandstone_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/soul_sandstone_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/soul_sandstone_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/soul_sandstone_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/soul_sandstone_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/soul_sandstone_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/soul_sandstone_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/soul_sandstone_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/soul_sandstone_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/soul_sandstone_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/soul_sandstone_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/soul_sandstone_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/soul_sandstone_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/soul_sandstone_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/soul_sandstone_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/soul_sandstone_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/soul_sandstone_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/soul_sandstone_wall.json b/src/main/resources/assets/betternether/blockstates/soul_sandstone_wall.json new file mode 100644 index 0000000..64a08d4 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_sandstone_wall.json @@ -0,0 +1,31 @@ +{ + "multipart": [ + { "when": { "up": "true" }, + "apply": { "model": "betternether:block/soul_sandstone_post" } + }, + { "when": { "north": "low" }, + "apply": { "model": "betternether:block/soul_sandstone_wall_side", "uvlock": true } + }, + { "when": { "east": "low" }, + "apply": { "model": "betternether:block/soul_sandstone_wall_side", "y": 90, "uvlock": true } + }, + { "when": { "south": "low" }, + "apply": { "model": "betternether:block/soul_sandstone_wall_side", "y": 180, "uvlock": true } + }, + { "when": { "west": "low" }, + "apply": { "model": "betternether:block/soul_sandstone_wall_side", "y": 270, "uvlock": true } + }, + { "when": { "north": "tall" }, + "apply": { "model": "betternether:block/soul_sandstone_wall_side", "uvlock": true } + }, + { "when": { "east": "tall" }, + "apply": { "model": "betternether:block/soul_sandstone_wall_side", "y": 90, "uvlock": true } + }, + { "when": { "south": "tall" }, + "apply": { "model": "betternether:block/soul_sandstone_wall_side", "y": 180, "uvlock": true } + }, + { "when": { "west": "tall" }, + "apply": { "model": "betternether:block/soul_sandstone_wall_side", "y": 270, "uvlock": true } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/soul_vein.json b/src/main/resources/assets/betternether/blockstates/soul_vein.json new file mode 100644 index 0000000..105b335 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/soul_vein.json @@ -0,0 +1,23 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/soul_vein_1" }, + { "model": "betternether:block/soul_vein_2" }, + { "model": "betternether:block/soul_vein_3" }, + { "model": "betternether:block/soul_vein_4" }, + { "model": "betternether:block/soul_vein_1", "y": 90 }, + { "model": "betternether:block/soul_vein_2", "y": 90 }, + { "model": "betternether:block/soul_vein_3", "y": 90 }, + { "model": "betternether:block/soul_vein_4", "y": 90 }, + { "model": "betternether:block/soul_vein_1", "y": 180 }, + { "model": "betternether:block/soul_vein_2", "y": 180 }, + { "model": "betternether:block/soul_vein_3", "y": 180 }, + { "model": "betternether:block/soul_vein_4", "y": 180 }, + { "model": "betternether:block/soul_vein_1", "y": 270 }, + { "model": "betternether:block/soul_vein_2", "y": 270 }, + { "model": "betternether:block/soul_vein_3", "y": 270 }, + { "model": "betternether:block/soul_vein_4", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/stalactite.json b/src/main/resources/assets/betternether/blockstates/stalactite.json new file mode 100644 index 0000000..02e9634 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalactite.json @@ -0,0 +1,13 @@ +{ + "variants": + { + "size=0": { "model": "betternether:block/stalactite_0" }, + "size=1": { "model": "betternether:block/stalactite_1" }, + "size=2": { "model": "betternether:block/stalactite_2" }, + "size=3": { "model": "betternether:block/stalactite_3" }, + "size=4": { "model": "betternether:block/stalactite_4" }, + "size=5": { "model": "betternether:block/stalactite_5" }, + "size=6": { "model": "betternether:block/stalactite_6" }, + "size=7": { "model": "betternether:block/stalactite_7" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate.json b/src/main/resources/assets/betternether/blockstates/stalagnate.json new file mode 100644 index 0000000..5521dec --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate.json @@ -0,0 +1,20 @@ +{ + "variants": { + "shape=top": { "model": "betternether:block/stalagnate_top", "uvlock": true }, + "shape=middle": [ + { "model": "betternether:block/stalagnate_middle_1" }, + { "model": "betternether:block/stalagnate_middle_2" }, + { "model": "betternether:block/stalagnate_middle_3" }, + { "model": "betternether:block/stalagnate_middle_4" }, + { "model": "betternether:block/stalagnate_middle_5" }, + { "model": "betternether:block/stalagnate_middle_6" }, + { "model": "betternether:block/stalagnate_middle_7" }, + { "model": "betternether:block/stalagnate_middle_8" }, + { "model": "betternether:block/stalagnate_middle_9" }, + { "model": "betternether:block/stalagnate_middle_10" }, + { "model": "betternether:block/stalagnate_middle_11" }, + { "model": "betternether:block/stalagnate_middle_12" } + ], + "shape=bottom": { "model": "betternether:block/stalagnate_bottom" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_bark.json b/src/main/resources/assets/betternether/blockstates/stalagnate_bark.json new file mode 100644 index 0000000..22d3ef7 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_bark.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/stalagnate_bark" }, + "axis=z": { "model": "betternether:block/stalagnate_bark", "x": 90 }, + "axis=x": { "model": "betternether:block/stalagnate_bark", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_bowl.json b/src/main/resources/assets/betternether/blockstates/stalagnate_bowl.json new file mode 100644 index 0000000..9cc4200 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_bowl.json @@ -0,0 +1,28 @@ +{ + "variants": { + "food=none": [ + { "model": "betternether:block/stalagnate_bowl_empty" }, + { "model": "betternether:block/stalagnate_bowl_empty", "y": 90 }, + { "model": "betternether:block/stalagnate_bowl_empty", "y": 180 }, + { "model": "betternether:block/stalagnate_bowl_empty", "y": 270 } + ], + "food=wart": [ + { "model": "betternether:block/stalagnate_bowl_wart" }, + { "model": "betternether:block/stalagnate_bowl_wart", "y": 90 }, + { "model": "betternether:block/stalagnate_bowl_wart", "y": 180 }, + { "model": "betternether:block/stalagnate_bowl_wart", "y": 270 } + ], + "food=mushroom": [ + { "model": "betternether:block/stalagnate_bowl_mushroom" }, + { "model": "betternether:block/stalagnate_bowl_mushroom", "y": 90 }, + { "model": "betternether:block/stalagnate_bowl_mushroom", "y": 180 }, + { "model": "betternether:block/stalagnate_bowl_mushroom", "y": 270 } + ], + "food=apple": [ + { "model": "betternether:block/stalagnate_bowl_apple" }, + { "model": "betternether:block/stalagnate_bowl_apple", "y": 90 }, + { "model": "betternether:block/stalagnate_bowl_apple", "y": 180 }, + { "model": "betternether:block/stalagnate_bowl_apple", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_ladder.json b/src/main/resources/assets/betternether/blockstates/stalagnate_ladder.json new file mode 100644 index 0000000..2356d93 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_ladder.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/stalagnate_ladder" }, + "facing=east": { "model": "betternether:block/stalagnate_ladder", "y": 90 }, + "facing=south": { "model": "betternether:block/stalagnate_ladder", "y": 180 }, + "facing=west": { "model": "betternether:block/stalagnate_ladder", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_log.json b/src/main/resources/assets/betternether/blockstates/stalagnate_log.json new file mode 100644 index 0000000..4b9a2c3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_log.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/stalagnate_log" }, + "axis=z": { "model": "betternether:block/stalagnate_log", "x": 90 }, + "axis=x": { "model": "betternether:block/stalagnate_log", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_middle.json b/src/main/resources/assets/betternether/blockstates/stalagnate_middle.json new file mode 100644 index 0000000..a6bb5b1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_middle.json @@ -0,0 +1,25 @@ +{ + "multipart": [ + { + "apply": + [ + { "model": "betternether:block/stalagnate_stem_1" }, + { "model": "betternether:block/stalagnate_stem_2" }, + { "model": "betternether:block/stalagnate_stem_2" }, + { "model": "betternether:block/stalagnate_stem_2" }, + { "model": "betternether:block/stalagnate_stem_3" }, + { "model": "betternether:block/stalagnate_stem_4" }, + { "model": "betternether:block/stalagnate_stem_4" }, + { "model": "betternether:block/stalagnate_stem_4" } + ] + }, + { + "apply": + [ + { "model": "betternether:block/stalagnate_leaves_1" }, + { "model": "betternether:block/stalagnate_leaves_2" }, + { "model": "minecraft:block" } + ] + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_planks.json b/src/main/resources/assets/betternether/blockstates/stalagnate_planks.json new file mode 100644 index 0000000..0874515 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_planks.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/stalagnate_planks" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_planks_button.json b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_button.json new file mode 100644 index 0000000..59794ff --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_button.json @@ -0,0 +1,28 @@ +{ + "variants": { + "face=floor,facing=east,powered=false": { "model": "betternether:block/stalagnate_button", "y": 90 }, + "face=floor,facing=west,powered=false": { "model": "betternether:block/stalagnate_button", "y": 270 }, + "face=floor,facing=south,powered=false": { "model": "betternether:block/stalagnate_button", "y": 180 }, + "face=floor,facing=north,powered=false": { "model": "betternether:block/stalagnate_button" }, + "face=wall,facing=east,powered=false": { "model": "betternether:block/stalagnate_button", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=false": { "model": "betternether:block/stalagnate_button", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=false": { "model": "betternether:block/stalagnate_button", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=false": { "model": "betternether:block/stalagnate_button", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=false": { "model": "betternether:block/stalagnate_button", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=false": { "model": "betternether:block/stalagnate_button", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=false": { "model": "betternether:block/stalagnate_button", "x": 180 }, + "face=ceiling,facing=north,powered=false": { "model": "betternether:block/stalagnate_button", "x": 180, "y": 180 }, + "face=floor,facing=east,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "y": 90 }, + "face=floor,facing=west,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "y": 270 }, + "face=floor,facing=south,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "y": 180 }, + "face=floor,facing=north,powered=true": { "model": "betternether:block/stalagnate_button_pressed" }, + "face=wall,facing=east,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "x": 180 }, + "face=ceiling,facing=north,powered=true": { "model": "betternether:block/stalagnate_button_pressed", "x": 180, "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_planks_door.json b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_door.json new file mode 100644 index 0000000..fc62aee --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_door.json @@ -0,0 +1,36 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge" }, + "facing=south,half=lower,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom_hinge" }, + "facing=east,half=lower,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_top" }, + "facing=south,half=upper,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false": { "model": "betternether:block/stalagnate_planks_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_top_hinge" }, + "facing=south,half=upper,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_top_hinge", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_top_hinge", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false": { "model": "betternether:block/stalagnate_planks_door_top_hinge", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_top_hinge", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_top_hinge", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_top_hinge", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true": { "model": "betternether:block/stalagnate_planks_door_top_hinge" }, + "facing=east,half=upper,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_top" }, + "facing=west,half=upper,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true": { "model": "betternether:block/stalagnate_planks_door_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_planks_fence.json b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_fence.json new file mode 100644 index 0000000..b44fe52 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_fence.json @@ -0,0 +1,17 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/stalagnate_fence_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/stalagnate_fence_side", "uvlock": true } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/stalagnate_fence_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/stalagnate_fence_side", "y": 180, "uvlock": true } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/stalagnate_fence_side", "y": 270, "uvlock": true } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_planks_gate.json b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_gate.json new file mode 100644 index 0000000..2521ddd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_gate.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=south,in_wall=false,open=false": { "model": "betternether:block/stalagnate_fence_gate_closed", "uvlock": true }, + "facing=west,in_wall=false,open=false": { "model": "betternether:block/stalagnate_fence_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=false": { "model": "betternether:block/stalagnate_fence_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=false": { "model": "betternether:block/stalagnate_fence_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=false,open=true": { "model": "betternether:block/stalagnate_fence_gate_open", "uvlock": true }, + "facing=west,in_wall=false,open=true": { "model": "betternether:block/stalagnate_fence_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=true": { "model": "betternether:block/stalagnate_fence_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=true": { "model": "betternether:block/stalagnate_fence_gate_open", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=false": { "model": "betternether:block/stalagnate_wall_gate_closed", "uvlock": true }, + "facing=west,in_wall=true,open=false": { "model": "betternether:block/stalagnate_wall_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=false": { "model": "betternether:block/stalagnate_wall_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=false": { "model": "betternether:block/stalagnate_wall_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=true": { "model": "betternether:block/stalagnate_wall_gate_open", "uvlock": true }, + "facing=west,in_wall=true,open=true": { "model": "betternether:block/stalagnate_wall_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=true": { "model": "betternether:block/stalagnate_wall_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=true": { "model": "betternether:block/stalagnate_wall_gate_open", "uvlock": true, "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_planks_plate.json b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_plate.json new file mode 100644 index 0000000..f405300 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_plate.json @@ -0,0 +1,6 @@ +{ + "variants": { + "powered=false": { "model": "betternether:block/stalagnate_pressure_plate_up" }, + "powered=true": { "model": "betternether:block/stalagnate_pressure_plate_down" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_planks_slab.json b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_slab.json new file mode 100644 index 0000000..c7a4b77 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/stalagnate_half_slab" }, + "type=top": { "model": "betternether:block/stalagnate_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/stalagnate_planks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_planks_stairs.json b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_stairs.json new file mode 100644 index 0000000..e1ed7b0 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/stalagnate_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/stalagnate_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/stalagnate_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/stalagnate_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/stalagnate_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/stalagnate_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/stalagnate_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/stalagnate_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/stalagnate_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/stalagnate_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_planks_trapdoor.json b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_trapdoor.json new file mode 100644 index 0000000..7de914e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_planks_trapdoor.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=north,half=bottom,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor" }, + "facing=south,half=bottom,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "y": 180 }, + "facing=east,half=bottom,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "y": 90 }, + "facing=west,half=bottom,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "y": 270 }, + "facing=north,half=top,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 180 }, + "facing=south,half=top,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 180, "y": 180 }, + "facing=east,half=top,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 180, "y": 90 }, + "facing=west,half=top,open=false": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 180, "y": 270 }, + "facing=north,half=bottom,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 90 }, + "facing=south,half=bottom,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 90, "y": 180 }, + "facing=east,half=bottom,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 90, "y": 90 }, + "facing=west,half=bottom,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 90, "y": 270 }, + "facing=north,half=top,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 270, "y": 180 }, + "facing=south,half=top,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 270, "y": 0 }, + "facing=east,half=top,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 270, "y": 270 }, + "facing=west,half=top,open=true": { "model": "betternether:block/stalagnate_planks_trapdoor", "x": 270, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_seed.json b/src/main/resources/assets/betternether/blockstates/stalagnate_seed.json new file mode 100644 index 0000000..aeb0c32 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_seed.json @@ -0,0 +1,6 @@ +{ + "variants": { + "top=true": { "model": "betternether:block/stalagnate_seed", "x": 180 }, + "top=false": { "model": "betternether:block/stalagnate_seed" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_seed_bottom.json b/src/main/resources/assets/betternether/blockstates/stalagnate_seed_bottom.json new file mode 100644 index 0000000..3918a1d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_seed_bottom.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/stalagnate_seed" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/stalagnate_stem.json b/src/main/resources/assets/betternether/blockstates/stalagnate_stem.json new file mode 100644 index 0000000..dee2b75 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/stalagnate_stem.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=y": [ + { "model": "betternether:block/stalagnate_stem_1" }, + { "model": "betternether:block/stalagnate_stem_3" } + ], + "axis=z": [ + { "model": "betternether:block/stalagnate_stem_1", "x": 90 }, + { "model": "betternether:block/stalagnate_stem_3", "x": 90 } + ], + "axis=x": [ + { "model": "betternether:block/stalagnate_stem_1", "x": 90, "y": 90 }, + { "model": "betternether:block/stalagnate_stem_3", "x": 90, "y": 90 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/striped_bark_anchor_tree.json b/src/main/resources/assets/betternether/blockstates/striped_bark_anchor_tree.json new file mode 100644 index 0000000..7ba7f7c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_bark_anchor_tree.json @@ -0,0 +1,19 @@ +{ + "variants": { + "axis=y": [ + { "model": "betternether:block/striped_bark_anchor_tree_1" }, + { "model": "betternether:block/striped_bark_anchor_tree_2" }, + { "model": "betternether:block/striped_bark_anchor_tree_3" } + ], + "axis=z": [ + { "model": "betternether:block/striped_bark_anchor_tree_1", "x": 90 }, + { "model": "betternether:block/striped_bark_anchor_tree_2", "x": 90 }, + { "model": "betternether:block/striped_bark_anchor_tree_3", "x": 90 } + ], + "axis=x": [ + { "model": "betternether:block/striped_bark_anchor_tree_1", "x": 90, "y": 90 }, + { "model": "betternether:block/striped_bark_anchor_tree_2", "x": 90, "y": 90 }, + { "model": "betternether:block/striped_bark_anchor_tree_3", "x": 90, "y": 90 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/striped_bark_nether_sakura.json b/src/main/resources/assets/betternether/blockstates/striped_bark_nether_sakura.json new file mode 100644 index 0000000..6f64000 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_bark_nether_sakura.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_bark_nether_sakura" }, + "axis=z": { "model": "betternether:block/striped_bark_nether_sakura", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_bark_nether_sakura", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/striped_bark_rubeus.json b/src/main/resources/assets/betternether/blockstates/striped_bark_rubeus.json new file mode 100644 index 0000000..80b72bb --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_bark_rubeus.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_bark_rubeus" }, + "axis=z": { "model": "betternether:block/striped_bark_rubeus", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_bark_rubeus", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/striped_bark_stalagnate.json b/src/main/resources/assets/betternether/blockstates/striped_bark_stalagnate.json new file mode 100644 index 0000000..7e6dfdd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_bark_stalagnate.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_bark_stalagnate" }, + "axis=z": { "model": "betternether:block/striped_bark_stalagnate", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_bark_stalagnate", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/striped_bark_wart.json b/src/main/resources/assets/betternether/blockstates/striped_bark_wart.json new file mode 100644 index 0000000..5f5d483 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_bark_wart.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_bark_wart" }, + "axis=z": { "model": "betternether:block/striped_bark_wart", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_bark_wart", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/striped_bark_willow.json b/src/main/resources/assets/betternether/blockstates/striped_bark_willow.json new file mode 100644 index 0000000..e1b10ab --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_bark_willow.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_bark_willow" }, + "axis=z": { "model": "betternether:block/striped_bark_willow", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_bark_willow", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/striped_log_anchor_tree.json b/src/main/resources/assets/betternether/blockstates/striped_log_anchor_tree.json new file mode 100644 index 0000000..2e4b9d0 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_log_anchor_tree.json @@ -0,0 +1,19 @@ +{ + "variants": { + "axis=y": [ + { "model": "betternether:block/striped_log_anchor_tree_1" }, + { "model": "betternether:block/striped_log_anchor_tree_2" }, + { "model": "betternether:block/striped_log_anchor_tree_3" } + ], + "axis=z": [ + { "model": "betternether:block/striped_log_anchor_tree_1", "x": 90 }, + { "model": "betternether:block/striped_log_anchor_tree_2", "x": 90 }, + { "model": "betternether:block/striped_log_anchor_tree_3", "x": 90 } + ], + "axis=x": [ + { "model": "betternether:block/striped_log_anchor_tree_1", "x": 90, "y": 90 }, + { "model": "betternether:block/striped_log_anchor_tree_2", "x": 90, "y": 90 }, + { "model": "betternether:block/striped_log_anchor_tree_3", "x": 90, "y": 90 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/striped_log_mushroom_fir.json b/src/main/resources/assets/betternether/blockstates/striped_log_mushroom_fir.json new file mode 100644 index 0000000..9703be5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_log_mushroom_fir.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_log_mushroom_fir" }, + "axis=z": { "model": "betternether:block/striped_log_mushroom_fir", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_log_mushroom_fir", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/striped_log_nether_sakura.json b/src/main/resources/assets/betternether/blockstates/striped_log_nether_sakura.json new file mode 100644 index 0000000..24237f8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_log_nether_sakura.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_log_nether_sakura" }, + "axis=z": { "model": "betternether:block/striped_log_nether_sakura", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_log_nether_sakura", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/striped_log_rubeus.json b/src/main/resources/assets/betternether/blockstates/striped_log_rubeus.json new file mode 100644 index 0000000..1efcbc6 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_log_rubeus.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_log_rubeus" }, + "axis=z": { "model": "betternether:block/striped_log_rubeus", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_log_rubeus", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/striped_log_stalagnate.json b/src/main/resources/assets/betternether/blockstates/striped_log_stalagnate.json new file mode 100644 index 0000000..0d6e88f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_log_stalagnate.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_log_stalagnate" }, + "axis=z": { "model": "betternether:block/striped_log_stalagnate", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_log_stalagnate", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/striped_log_wart.json b/src/main/resources/assets/betternether/blockstates/striped_log_wart.json new file mode 100644 index 0000000..e1b6bca --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_log_wart.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_log_wart" }, + "axis=z": { "model": "betternether:block/striped_log_wart", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_log_wart", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/striped_log_willow.json b/src/main/resources/assets/betternether/blockstates/striped_log_willow.json new file mode 100644 index 0000000..4ab815d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_log_willow.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_log_willow" }, + "axis=z": { "model": "betternether:block/striped_log_willow", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_log_willow", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/striped_wood_mushroom_fir.json b/src/main/resources/assets/betternether/blockstates/striped_wood_mushroom_fir.json new file mode 100644 index 0000000..723af2a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/striped_wood_mushroom_fir.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/striped_wood_mushroom_fir" }, + "axis=z": { "model": "betternether:block/striped_wood_mushroom_fir", "x": 90 }, + "axis=x": { "model": "betternether:block/striped_wood_mushroom_fir", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/swamp_grass.json b/src/main/resources/assets/betternether/blockstates/swamp_grass.json new file mode 100644 index 0000000..603c11a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/swamp_grass.json @@ -0,0 +1,13 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/swamp_grass_1" }, + { "model": "betternether:block/swamp_grass_2" }, + { "model": "betternether:block/swamp_grass_3" }, + { "model": "betternether:block/swamp_grass_4" }, + { "model": "betternether:block/swamp_grass_5" }, + { "model": "betternether:block/swamp_grass_6" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/swampland_grass.json b/src/main/resources/assets/betternether/blockstates/swampland_grass.json new file mode 100644 index 0000000..a059144 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/swampland_grass.json @@ -0,0 +1,10 @@ +{ + "variants": { + "": [ + { "model": "betternether:block/swampland_grass" }, + { "model": "betternether:block/swampland_grass", "y": 90 }, + { "model": "betternether:block/swampland_grass", "y": 180 }, + { "model": "betternether:block/swampland_grass", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/taburet_acacia.json b/src/main/resources/assets/betternether/blockstates/taburet_acacia.json new file mode 100644 index 0000000..e4ddf9e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_acacia.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_acacia" }, + "facing=west": { "model": "betternether:block/taburet_acacia", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_acacia", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_acacia", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_anchor_tree.json b/src/main/resources/assets/betternether/blockstates/taburet_anchor_tree.json new file mode 100644 index 0000000..e06b6d2 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_anchor_tree.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_anchor_tree" }, + "facing=west": { "model": "betternether:block/taburet_anchor_tree", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_anchor_tree", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_anchor_tree", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_birch.json b/src/main/resources/assets/betternether/blockstates/taburet_birch.json new file mode 100644 index 0000000..affa21e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_birch.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_birch" }, + "facing=west": { "model": "betternether:block/taburet_birch", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_birch", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_birch", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_cincinnasite.json b/src/main/resources/assets/betternether/blockstates/taburet_cincinnasite.json new file mode 100644 index 0000000..2b9fc89 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_cincinnasite.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_cincinnasite" }, + "facing=west": { "model": "betternether:block/taburet_cincinnasite", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_cincinnasite", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_cincinnasite", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_crimson.json b/src/main/resources/assets/betternether/blockstates/taburet_crimson.json new file mode 100644 index 0000000..3f70b76 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_crimson.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_crimson" }, + "facing=west": { "model": "betternether:block/taburet_crimson", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_crimson", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_crimson", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_dark_oak.json b/src/main/resources/assets/betternether/blockstates/taburet_dark_oak.json new file mode 100644 index 0000000..846a780 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_dark_oak.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_dark_oak" }, + "facing=west": { "model": "betternether:block/taburet_dark_oak", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_dark_oak", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_dark_oak", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_jungle.json b/src/main/resources/assets/betternether/blockstates/taburet_jungle.json new file mode 100644 index 0000000..13356cd --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_jungle.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_jungle" }, + "facing=west": { "model": "betternether:block/taburet_jungle", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_jungle", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_jungle", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_mushroom.json b/src/main/resources/assets/betternether/blockstates/taburet_mushroom.json new file mode 100644 index 0000000..673d3f3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_mushroom.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_mushroom" }, + "facing=west": { "model": "betternether:block/taburet_mushroom", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_mushroom", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_mushroom", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_mushroom_fir.json b/src/main/resources/assets/betternether/blockstates/taburet_mushroom_fir.json new file mode 100644 index 0000000..678ab60 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_mushroom_fir.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_mushroom_fir" }, + "facing=west": { "model": "betternether:block/taburet_mushroom_fir", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_mushroom_fir", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_mushroom_fir", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_nether_sakura.json b/src/main/resources/assets/betternether/blockstates/taburet_nether_sakura.json new file mode 100644 index 0000000..471c67e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_nether_sakura.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_nether_sakura" }, + "facing=west": { "model": "betternether:block/taburet_nether_sakura", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_nether_sakura", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_nether_sakura", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_oak.json b/src/main/resources/assets/betternether/blockstates/taburet_oak.json new file mode 100644 index 0000000..8856696 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_oak.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_oak" }, + "facing=west": { "model": "betternether:block/taburet_oak", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_oak", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_oak", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_reeds.json b/src/main/resources/assets/betternether/blockstates/taburet_reeds.json new file mode 100644 index 0000000..bd97e7b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_reeds.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_reeds" }, + "facing=west": { "model": "betternether:block/taburet_reeds", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_reeds", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_reeds", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_rubeus.json b/src/main/resources/assets/betternether/blockstates/taburet_rubeus.json new file mode 100644 index 0000000..d2d7d1e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_rubeus.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_rubeus" }, + "facing=west": { "model": "betternether:block/taburet_rubeus", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_rubeus", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_rubeus", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_spruce.json b/src/main/resources/assets/betternether/blockstates/taburet_spruce.json new file mode 100644 index 0000000..fb90c03 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_spruce.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_spruce" }, + "facing=west": { "model": "betternether:block/taburet_spruce", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_spruce", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_spruce", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_stalagnate.json b/src/main/resources/assets/betternether/blockstates/taburet_stalagnate.json new file mode 100644 index 0000000..7a3c493 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_stalagnate.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_stalagnate" }, + "facing=west": { "model": "betternether:block/taburet_stalagnate", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_stalagnate", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_stalagnate", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_warped.json b/src/main/resources/assets/betternether/blockstates/taburet_warped.json new file mode 100644 index 0000000..37326f3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_warped.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_warped" }, + "facing=west": { "model": "betternether:block/taburet_warped", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_warped", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_warped", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_wart.json b/src/main/resources/assets/betternether/blockstates/taburet_wart.json new file mode 100644 index 0000000..04c4785 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_wart.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_wart" }, + "facing=west": { "model": "betternether:block/taburet_wart", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_wart", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_wart", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/taburet_willow.json b/src/main/resources/assets/betternether/blockstates/taburet_willow.json new file mode 100644 index 0000000..a5be615 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/taburet_willow.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "betternether:block/taburet_willow" }, + "facing=west": { "model": "betternether:block/taburet_willow", "y": 180 }, + "facing=south": { "model": "betternether:block/taburet_willow", "y": 90 }, + "facing=north": { "model": "betternether:block/taburet_willow", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/veined_sand.json b/src/main/resources/assets/betternether/blockstates/veined_sand.json new file mode 100644 index 0000000..4665886 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/veined_sand.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/veined_sand" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/wall_moss.json b/src/main/resources/assets/betternether/blockstates/wall_moss.json new file mode 100644 index 0000000..92609c5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wall_moss.json @@ -0,0 +1,24 @@ +{ + "variants": { + "facing=north": [ + { "model": "betternether:block/wall_moss_1", "y": 180 }, + { "model": "betternether:block/wall_moss_2", "y": 180 }, + { "model": "betternether:block/wall_moss_3", "y": 180 } + ], + "facing=south": [ + { "model": "betternether:block/wall_moss_1" }, + { "model": "betternether:block/wall_moss_2" }, + { "model": "betternether:block/wall_moss_3" } + ], + "facing=east": [ + { "model": "betternether:block/wall_moss_1", "y": 270 }, + { "model": "betternether:block/wall_moss_2", "y": 270 }, + { "model": "betternether:block/wall_moss_3", "y": 270 } + ], + "facing=west": [ + { "model": "betternether:block/wall_moss_1", "y": 90 }, + { "model": "betternether:block/wall_moss_2", "y": 90 }, + { "model": "betternether:block/wall_moss_3", "y": 90 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/wall_mushroom_brown.json b/src/main/resources/assets/betternether/blockstates/wall_mushroom_brown.json new file mode 100644 index 0000000..7a21213 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wall_mushroom_brown.json @@ -0,0 +1,24 @@ +{ + "variants": { + "facing=north": [ + { "model": "betternether:block/wall_mushrooms_brown_1", "y": 180 }, + { "model": "betternether:block/wall_mushrooms_brown_2", "y": 180 }, + { "model": "betternether:block/wall_mushrooms_brown_3", "y": 180 } + ], + "facing=south": [ + { "model": "betternether:block/wall_mushrooms_brown_1" }, + { "model": "betternether:block/wall_mushrooms_brown_2" }, + { "model": "betternether:block/wall_mushrooms_brown_3" } + ], + "facing=east": [ + { "model": "betternether:block/wall_mushrooms_brown_1", "y": 270 }, + { "model": "betternether:block/wall_mushrooms_brown_2", "y": 270 }, + { "model": "betternether:block/wall_mushrooms_brown_3", "y": 270 } + ], + "facing=west": [ + { "model": "betternether:block/wall_mushrooms_brown_1", "y": 90 }, + { "model": "betternether:block/wall_mushrooms_brown_2", "y": 90 }, + { "model": "betternether:block/wall_mushrooms_brown_3", "y": 90 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/wall_mushroom_red.json b/src/main/resources/assets/betternether/blockstates/wall_mushroom_red.json new file mode 100644 index 0000000..856666a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wall_mushroom_red.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=north": [ + { "model": "betternether:block/wall_mushrooms_red_1", "y": 180 }, + { "model": "betternether:block/wall_mushrooms_red_2", "y": 180 } + ], + "facing=south": [ + { "model": "betternether:block/wall_mushrooms_red_1" }, + { "model": "betternether:block/wall_mushrooms_red_2" } + ], + "facing=east": [ + { "model": "betternether:block/wall_mushrooms_red_1", "y": 270 }, + { "model": "betternether:block/wall_mushrooms_red_2", "y": 270 } + ], + "facing=west": [ + { "model": "betternether:block/wall_mushrooms_red_1", "y": 90 }, + { "model": "betternether:block/wall_mushrooms_red_2", "y": 90 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/warped_ladder.json b/src/main/resources/assets/betternether/blockstates/warped_ladder.json new file mode 100644 index 0000000..51f5a4e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/warped_ladder.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/warped_ladder" }, + "facing=east": { "model": "betternether:block/warped_ladder", "y": 90 }, + "facing=south": { "model": "betternether:block/warped_ladder", "y": 180 }, + "facing=west": { "model": "betternether:block/warped_ladder", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/wart_bark.json b/src/main/resources/assets/betternether/blockstates/wart_bark.json new file mode 100644 index 0000000..e58c07f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_bark.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/wart_bark" }, + "axis=z": { "model": "betternether:block/wart_bark", "x": 90 }, + "axis=x": { "model": "betternether:block/wart_bark", "x": 90, "y": 90 } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/wart_button.json b/src/main/resources/assets/betternether/blockstates/wart_button.json new file mode 100644 index 0000000..19c3d6a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_button.json @@ -0,0 +1,28 @@ +{ + "variants": { + "face=floor,facing=east,powered=false": { "model": "betternether:block/wart_button", "y": 90 }, + "face=floor,facing=west,powered=false": { "model": "betternether:block/wart_button", "y": 270 }, + "face=floor,facing=south,powered=false": { "model": "betternether:block/wart_button", "y": 180 }, + "face=floor,facing=north,powered=false": { "model": "betternether:block/wart_button" }, + "face=wall,facing=east,powered=false": { "model": "betternether:block/wart_button", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=false": { "model": "betternether:block/wart_button", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=false": { "model": "betternether:block/wart_button", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=false": { "model": "betternether:block/wart_button", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=false": { "model": "betternether:block/wart_button", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=false": { "model": "betternether:block/wart_button", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=false": { "model": "betternether:block/wart_button", "x": 180 }, + "face=ceiling,facing=north,powered=false": { "model": "betternether:block/wart_button", "x": 180, "y": 180 }, + "face=floor,facing=east,powered=true": { "model": "betternether:block/wart_button_pressed", "y": 90 }, + "face=floor,facing=west,powered=true": { "model": "betternether:block/wart_button_pressed", "y": 270 }, + "face=floor,facing=south,powered=true": { "model": "betternether:block/wart_button_pressed", "y": 180 }, + "face=floor,facing=north,powered=true": { "model": "betternether:block/wart_button_pressed" }, + "face=wall,facing=east,powered=true": { "model": "betternether:block/wart_button_pressed", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=true": { "model": "betternether:block/wart_button_pressed", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=true": { "model": "betternether:block/wart_button_pressed", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=true": { "model": "betternether:block/wart_button_pressed", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=true": { "model": "betternether:block/wart_button_pressed", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=true": { "model": "betternether:block/wart_button_pressed", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=true": { "model": "betternether:block/wart_button_pressed", "x": 180 }, + "face=ceiling,facing=north,powered=true": { "model": "betternether:block/wart_button_pressed", "x": 180, "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/wart_door.json b/src/main/resources/assets/betternether/blockstates/wart_door.json new file mode 100644 index 0000000..08f7e2e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_door.json @@ -0,0 +1,36 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false": { "model": "betternether:block/wart_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false": { "model": "betternether:block/wart_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false": { "model": "betternether:block/wart_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false": { "model": "betternether:block/wart_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false": { "model": "betternether:block/wart_door_bottom" }, + "facing=south,half=lower,hinge=right,open=false": { "model": "betternether:block/wart_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false": { "model": "betternether:block/wart_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false": { "model": "betternether:block/wart_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true": { "model": "betternether:block/wart_door_bottom", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true": { "model": "betternether:block/wart_door_bottom", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true": { "model": "betternether:block/wart_door_bottom", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true": { "model": "betternether:block/wart_door_bottom" }, + "facing=east,half=lower,hinge=right,open=true": { "model": "betternether:block/wart_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true": { "model": "betternether:block/wart_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true": { "model": "betternether:block/wart_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true": { "model": "betternether:block/wart_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false": { "model": "betternether:block/wart_door_top" }, + "facing=south,half=upper,hinge=left,open=false": { "model": "betternether:block/wart_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false": { "model": "betternether:block/wart_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false": { "model": "betternether:block/wart_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false": { "model": "betternether:block/wart_door_top" }, + "facing=south,half=upper,hinge=right,open=false": { "model": "betternether:block/wart_door_top", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false": { "model": "betternether:block/wart_door_top", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false": { "model": "betternether:block/wart_door_top", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true": { "model": "betternether:block/wart_door_top", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true": { "model": "betternether:block/wart_door_top", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true": { "model": "betternether:block/wart_door_top", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true": { "model": "betternether:block/wart_door_top" }, + "facing=east,half=upper,hinge=right,open=true": { "model": "betternether:block/wart_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true": { "model": "betternether:block/wart_door_top" }, + "facing=west,half=upper,hinge=right,open=true": { "model": "betternether:block/wart_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true": { "model": "betternether:block/wart_door_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/wart_fence.json b/src/main/resources/assets/betternether/blockstates/wart_fence.json new file mode 100644 index 0000000..9bb5159 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_fence.json @@ -0,0 +1,17 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/wart_fence_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/wart_fence_side", "uvlock": true } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/wart_fence_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/wart_fence_side", "y": 180, "uvlock": true } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/wart_fence_side", "y": 270, "uvlock": true } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/wart_gate.json b/src/main/resources/assets/betternether/blockstates/wart_gate.json new file mode 100644 index 0000000..1eedd6c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_gate.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=south,in_wall=false,open=false": { "model": "betternether:block/wart_fence_gate_closed", "uvlock": true }, + "facing=west,in_wall=false,open=false": { "model": "betternether:block/wart_fence_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=false": { "model": "betternether:block/wart_fence_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=false": { "model": "betternether:block/wart_fence_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=false,open=true": { "model": "betternether:block/wart_fence_gate_open", "uvlock": true }, + "facing=west,in_wall=false,open=true": { "model": "betternether:block/wart_fence_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=true": { "model": "betternether:block/wart_fence_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=true": { "model": "betternether:block/wart_fence_gate_open", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=false": { "model": "betternether:block/wart_wall_gate_closed", "uvlock": true }, + "facing=west,in_wall=true,open=false": { "model": "betternether:block/wart_wall_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=false": { "model": "betternether:block/wart_wall_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=false": { "model": "betternether:block/wart_wall_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=true": { "model": "betternether:block/wart_wall_gate_open", "uvlock": true }, + "facing=west,in_wall=true,open=true": { "model": "betternether:block/wart_wall_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=true": { "model": "betternether:block/wart_wall_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=true": { "model": "betternether:block/wart_wall_gate_open", "uvlock": true, "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/wart_ladder.json b/src/main/resources/assets/betternether/blockstates/wart_ladder.json new file mode 100644 index 0000000..a8fd58a --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_ladder.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/wart_ladder" }, + "facing=east": { "model": "betternether:block/wart_ladder", "y": 90 }, + "facing=south": { "model": "betternether:block/wart_ladder", "y": 180 }, + "facing=west": { "model": "betternether:block/wart_ladder", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/wart_log.json b/src/main/resources/assets/betternether/blockstates/wart_log.json new file mode 100644 index 0000000..14f3c55 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_log.json @@ -0,0 +1,7 @@ +{ + "variants": { + "axis=y": { "model": "betternether:block/wart_log" }, + "axis=z": { "model": "betternether:block/wart_log", "x": 90 }, + "axis=x": { "model": "betternether:block/wart_log", "x": 90, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/wart_planks.json b/src/main/resources/assets/betternether/blockstates/wart_planks.json new file mode 100644 index 0000000..61cfd0d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_planks.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/wart_planks" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/wart_plate.json b/src/main/resources/assets/betternether/blockstates/wart_plate.json new file mode 100644 index 0000000..4d97d86 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_plate.json @@ -0,0 +1,6 @@ +{ + "variants": { + "powered=false": { "model": "betternether:block/wart_pressure_plate_up" }, + "powered=true": { "model": "betternether:block/wart_pressure_plate_down" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/wart_roots.json b/src/main/resources/assets/betternether/blockstates/wart_roots.json new file mode 100644 index 0000000..cdbdee3 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_roots.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/wart_roots" }, + { "model": "betternether:block/wart_roots", "y": 180 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/wart_seed.json b/src/main/resources/assets/betternether/blockstates/wart_seed.json new file mode 100644 index 0000000..6d4be7b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_seed.json @@ -0,0 +1,34 @@ +{ + "variants": { + "facing=up": [ + { "model": "betternether:block/wart_seed_01" }, + { "model": "betternether:block/wart_seed_02" }, + { "model": "betternether:block/wart_seed_03" } + ], + "facing=down": [ + { "model": "betternether:block/wart_seed_01", "x": 180 }, + { "model": "betternether:block/wart_seed_02", "x": 180 }, + { "model": "betternether:block/wart_seed_03", "x": 180 } + ], + "facing=north": [ + { "model": "betternether:block/wart_seed_01", "x": 90 }, + { "model": "betternether:block/wart_seed_02", "x": 90 }, + { "model": "betternether:block/wart_seed_03", "x": 90 } + ], + "facing=south": [ + { "model": "betternether:block/wart_seed_01", "x": 90, "y": 180 }, + { "model": "betternether:block/wart_seed_02", "x": 90, "y": 180 }, + { "model": "betternether:block/wart_seed_03", "x": 90, "y": 180 } + ], + "facing=east": [ + { "model": "betternether:block/wart_seed_01", "x": 90, "y": 90 }, + { "model": "betternether:block/wart_seed_02", "x": 90, "y": 90 }, + { "model": "betternether:block/wart_seed_03", "x": 90, "y": 90 } + ], + "facing=west": [ + { "model": "betternether:block/wart_seed_01", "x": 90, "y": 270 }, + { "model": "betternether:block/wart_seed_02", "x": 90, "y": 270 }, + { "model": "betternether:block/wart_seed_03", "x": 90, "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/wart_slab.json b/src/main/resources/assets/betternether/blockstates/wart_slab.json new file mode 100644 index 0000000..25fae2b --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/wart_half_slab" }, + "type=top": { "model": "betternether:block/wart_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/wart_planks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/wart_stairs.json b/src/main/resources/assets/betternether/blockstates/wart_stairs.json new file mode 100644 index 0000000..3c2107e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/wart_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/wart_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/wart_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/wart_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/wart_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/wart_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/wart_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/wart_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/wart_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/wart_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/wart_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/wart_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/wart_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/wart_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/wart_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/wart_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/wart_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/wart_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/wart_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/wart_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/wart_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/wart_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/wart_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/wart_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/wart_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/wart_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/wart_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/wart_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/wart_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/wart_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/wart_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/wart_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/wart_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/wart_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/wart_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/wart_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/wart_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/wart_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/wart_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/wart_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/wart_trapdoor.json b/src/main/resources/assets/betternether/blockstates/wart_trapdoor.json new file mode 100644 index 0000000..ad38e1e --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/wart_trapdoor.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=north,half=bottom,open=false": { "model": "betternether:block/wart_trapdoor" }, + "facing=south,half=bottom,open=false": { "model": "betternether:block/wart_trapdoor", "y": 180 }, + "facing=east,half=bottom,open=false": { "model": "betternether:block/wart_trapdoor", "y": 90 }, + "facing=west,half=bottom,open=false": { "model": "betternether:block/wart_trapdoor", "y": 270 }, + "facing=north,half=top,open=false": { "model": "betternether:block/wart_trapdoor", "x": 180 }, + "facing=south,half=top,open=false": { "model": "betternether:block/wart_trapdoor", "x": 180, "y": 180 }, + "facing=east,half=top,open=false": { "model": "betternether:block/wart_trapdoor", "x": 180, "y": 90 }, + "facing=west,half=top,open=false": { "model": "betternether:block/wart_trapdoor", "x": 180, "y": 270 }, + "facing=north,half=bottom,open=true": { "model": "betternether:block/wart_trapdoor", "x": 90 }, + "facing=south,half=bottom,open=true": { "model": "betternether:block/wart_trapdoor", "x": 90, "y": 180 }, + "facing=east,half=bottom,open=true": { "model": "betternether:block/wart_trapdoor", "x": 90, "y": 90 }, + "facing=west,half=bottom,open=true": { "model": "betternether:block/wart_trapdoor", "x": 90, "y": 270 }, + "facing=north,half=top,open=true": { "model": "betternether:block/wart_trapdoor", "x": 270, "y": 180 }, + "facing=south,half=top,open=true": { "model": "betternether:block/wart_trapdoor", "x": 270, "y": 0 }, + "facing=east,half=top,open=true": { "model": "betternether:block/wart_trapdoor", "x": 270, "y": 270 }, + "facing=west,half=top,open=true": { "model": "betternether:block/wart_trapdoor", "x": 270, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/whispering_gourd.json b/src/main/resources/assets/betternether/blockstates/whispering_gourd.json new file mode 100644 index 0000000..28b3815 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/whispering_gourd.json @@ -0,0 +1,11 @@ +{ + "variants": + { + "": [ + { "model": "betternether:block/whispering_gourd" }, + { "model": "betternether:block/whispering_gourd", "y": 90 }, + { "model": "betternether:block/whispering_gourd", "y": 180 }, + { "model": "betternether:block/whispering_gourd", "y": 270 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/whispering_gourd_lantern.json b/src/main/resources/assets/betternether/blockstates/whispering_gourd_lantern.json new file mode 100644 index 0000000..8b0e614 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/whispering_gourd_lantern.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/whispering_gourd_lantern" }, + "facing=south": { "model": "betternether:block/whispering_gourd_lantern", "y": 180 }, + "facing=west": { "model": "betternether:block/whispering_gourd_lantern", "y": 270 }, + "facing=east": { "model": "betternether:block/whispering_gourd_lantern", "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/whispering_gourd_vine.json b/src/main/resources/assets/betternether/blockstates/whispering_gourd_vine.json new file mode 100644 index 0000000..c001bfe --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/whispering_gourd_vine.json @@ -0,0 +1,18 @@ +{ + "variants": + { + "shape=bottom": [ + { "model": "betternether:block/whispering_gourd_vine_end" }, + { "model": "betternether:block/whispering_gourd_vine_end", "y": 90 }, + { "model": "betternether:block/whispering_gourd_vine_end", "y": 180 }, + { "model": "betternether:block/whispering_gourd_vine_end", "y": 270 } + ], + "shape=middle": [ + { "model": "betternether:block/whispering_gourd_vine_fruits" }, + { "model": "betternether:block/whispering_gourd_vine_fruits", "y": 90 }, + { "model": "betternether:block/whispering_gourd_vine_fruits", "y": 180 }, + { "model": "betternether:block/whispering_gourd_vine_fruits", "y": 270 } + ], + "shape=top": { "model": "betternether:block/whispering_gourd_vine" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/willow_bark.json b/src/main/resources/assets/betternether/blockstates/willow_bark.json new file mode 100644 index 0000000..39b0be1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_bark.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=y": [ + { "model": "betternether:block/willow_bark" }, + { "model": "betternether:block/willow_bark_2" } + ], + "axis=z": [ + { "model": "betternether:block/willow_bark", "x": 90 }, + { "model": "betternether:block/willow_bark_2", "x": 90 } + ], + "axis=x": [ + { "model": "betternether:block/willow_bark", "x": 90, "y": 90 }, + { "model": "betternether:block/willow_bark_2", "x": 90, "y": 90 } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/willow_branch.json b/src/main/resources/assets/betternether/blockstates/willow_branch.json new file mode 100644 index 0000000..0313130 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_branch.json @@ -0,0 +1,7 @@ +{ + "variants": + { + "shape=end": { "model": "betternether:block/willow_branch_end" }, + "shape=middle": { "model": "betternether:block/willow_branch_middle" } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/willow_button.json b/src/main/resources/assets/betternether/blockstates/willow_button.json new file mode 100644 index 0000000..c7d8ffa --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_button.json @@ -0,0 +1,28 @@ +{ + "variants": { + "face=floor,facing=east,powered=false": { "model": "betternether:block/willow_button", "y": 90 }, + "face=floor,facing=west,powered=false": { "model": "betternether:block/willow_button", "y": 270 }, + "face=floor,facing=south,powered=false": { "model": "betternether:block/willow_button", "y": 180 }, + "face=floor,facing=north,powered=false": { "model": "betternether:block/willow_button" }, + "face=wall,facing=east,powered=false": { "model": "betternether:block/willow_button", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=false": { "model": "betternether:block/willow_button", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=false": { "model": "betternether:block/willow_button", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=false": { "model": "betternether:block/willow_button", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=false": { "model": "betternether:block/willow_button", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=false": { "model": "betternether:block/willow_button", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=false": { "model": "betternether:block/willow_button", "x": 180 }, + "face=ceiling,facing=north,powered=false": { "model": "betternether:block/willow_button", "x": 180, "y": 180 }, + "face=floor,facing=east,powered=true": { "model": "betternether:block/willow_button_pressed", "y": 90 }, + "face=floor,facing=west,powered=true": { "model": "betternether:block/willow_button_pressed", "y": 270 }, + "face=floor,facing=south,powered=true": { "model": "betternether:block/willow_button_pressed", "y": 180 }, + "face=floor,facing=north,powered=true": { "model": "betternether:block/willow_button_pressed" }, + "face=wall,facing=east,powered=true": { "model": "betternether:block/willow_button_pressed", "uvlock": true, "x": 90, "y": 90 }, + "face=wall,facing=west,powered=true": { "model": "betternether:block/willow_button_pressed", "uvlock": true, "x": 90, "y": 270 }, + "face=wall,facing=south,powered=true": { "model": "betternether:block/willow_button_pressed", "uvlock": true, "x": 90, "y": 180 }, + "face=wall,facing=north,powered=true": { "model": "betternether:block/willow_button_pressed", "uvlock": true, "x": 90 }, + "face=ceiling,facing=east,powered=true": { "model": "betternether:block/willow_button_pressed", "x": 180, "y": 270 }, + "face=ceiling,facing=west,powered=true": { "model": "betternether:block/willow_button_pressed", "x": 180, "y": 90 }, + "face=ceiling,facing=south,powered=true": { "model": "betternether:block/willow_button_pressed", "x": 180 }, + "face=ceiling,facing=north,powered=true": { "model": "betternether:block/willow_button_pressed", "x": 180, "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/willow_door.json b/src/main/resources/assets/betternether/blockstates/willow_door.json new file mode 100644 index 0000000..b32d29d --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_door.json @@ -0,0 +1,36 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false": { "model": "betternether:block/willow_door_bottom" }, + "facing=south,half=lower,hinge=left,open=false": { "model": "betternether:block/willow_door_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false": { "model": "betternether:block/willow_door_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false": { "model": "betternether:block/willow_door_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false": { "model": "betternether:block/willow_door_bottom_hinge" }, + "facing=south,half=lower,hinge=right,open=false": { "model": "betternether:block/willow_door_bottom_hinge", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false": { "model": "betternether:block/willow_door_bottom_hinge", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false": { "model": "betternether:block/willow_door_bottom_hinge", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true": { "model": "betternether:block/willow_door_bottom_hinge", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true": { "model": "betternether:block/willow_door_bottom_hinge", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true": { "model": "betternether:block/willow_door_bottom_hinge", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true": { "model": "betternether:block/willow_door_bottom_hinge" }, + "facing=east,half=lower,hinge=right,open=true": { "model": "betternether:block/willow_door_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true": { "model": "betternether:block/willow_door_bottom" }, + "facing=west,half=lower,hinge=right,open=true": { "model": "betternether:block/willow_door_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true": { "model": "betternether:block/willow_door_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false": { "model": "betternether:block/willow_door_top" }, + "facing=south,half=upper,hinge=left,open=false": { "model": "betternether:block/willow_door_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false": { "model": "betternether:block/willow_door_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false": { "model": "betternether:block/willow_door_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false": { "model": "betternether:block/willow_door_top_hinge" }, + "facing=south,half=upper,hinge=right,open=false": { "model": "betternether:block/willow_door_top_hinge", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false": { "model": "betternether:block/willow_door_top_hinge", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false": { "model": "betternether:block/willow_door_top_hinge", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true": { "model": "betternether:block/willow_door_top_hinge", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true": { "model": "betternether:block/willow_door_top_hinge", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true": { "model": "betternether:block/willow_door_top_hinge", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true": { "model": "betternether:block/willow_door_top_hinge" }, + "facing=east,half=upper,hinge=right,open=true": { "model": "betternether:block/willow_door_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true": { "model": "betternether:block/willow_door_top" }, + "facing=west,half=upper,hinge=right,open=true": { "model": "betternether:block/willow_door_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true": { "model": "betternether:block/willow_door_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/willow_fence.json b/src/main/resources/assets/betternether/blockstates/willow_fence.json new file mode 100644 index 0000000..81c415c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_fence.json @@ -0,0 +1,17 @@ +{ + "multipart": [ + { "apply": { "model": "betternether:block/willow_fence_post" }}, + { "when": { "north": true }, + "apply": { "model": "betternether:block/willow_fence_side", "uvlock": true } + }, + { "when": { "east": true }, + "apply": { "model": "betternether:block/willow_fence_side", "y": 90, "uvlock": true } + }, + { "when": { "south": true }, + "apply": { "model": "betternether:block/willow_fence_side", "y": 180, "uvlock": true } + }, + { "when": { "west": true }, + "apply": { "model": "betternether:block/willow_fence_side", "y": 270, "uvlock": true } + } + ] +} diff --git a/src/main/resources/assets/betternether/blockstates/willow_gate.json b/src/main/resources/assets/betternether/blockstates/willow_gate.json new file mode 100644 index 0000000..e6471a2 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_gate.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=south,in_wall=false,open=false": { "model": "betternether:block/willow_fence_gate_closed", "uvlock": true }, + "facing=west,in_wall=false,open=false": { "model": "betternether:block/willow_fence_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=false": { "model": "betternether:block/willow_fence_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=false": { "model": "betternether:block/willow_fence_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=false,open=true": { "model": "betternether:block/willow_fence_gate_open", "uvlock": true }, + "facing=west,in_wall=false,open=true": { "model": "betternether:block/willow_fence_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=false,open=true": { "model": "betternether:block/willow_fence_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=false,open=true": { "model": "betternether:block/willow_fence_gate_open", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=false": { "model": "betternether:block/willow_wall_gate_closed", "uvlock": true }, + "facing=west,in_wall=true,open=false": { "model": "betternether:block/willow_wall_gate_closed", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=false": { "model": "betternether:block/willow_wall_gate_closed", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=false": { "model": "betternether:block/willow_wall_gate_closed", "uvlock": true, "y": 270 }, + "facing=south,in_wall=true,open=true": { "model": "betternether:block/willow_wall_gate_open", "uvlock": true }, + "facing=west,in_wall=true,open=true": { "model": "betternether:block/willow_wall_gate_open", "uvlock": true, "y": 90 }, + "facing=north,in_wall=true,open=true": { "model": "betternether:block/willow_wall_gate_open", "uvlock": true, "y": 180 }, + "facing=east,in_wall=true,open=true": { "model": "betternether:block/willow_wall_gate_open", "uvlock": true, "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/willow_ladder.json b/src/main/resources/assets/betternether/blockstates/willow_ladder.json new file mode 100644 index 0000000..94bb764 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_ladder.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/willow_ladder" }, + "facing=east": { "model": "betternether:block/willow_ladder", "y": 90 }, + "facing=south": { "model": "betternether:block/willow_ladder", "y": 180 }, + "facing=west": { "model": "betternether:block/willow_ladder", "y": 270 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/willow_leaves.json b/src/main/resources/assets/betternether/blockstates/willow_leaves.json new file mode 100644 index 0000000..49ffcce --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_leaves.json @@ -0,0 +1,11 @@ +{ + "variants": { + "facing=north,natural=true": { "model": "betternether:block/willow_leaves_side" }, + "facing=south,natural=true": { "model": "betternether:block/willow_leaves_side", "y": 180 }, + "facing=east,natural=true": { "model": "betternether:block/willow_leaves_side", "y": 90 }, + "facing=west,natural=true": { "model": "betternether:block/willow_leaves_side", "y": 270 }, + "facing=up,natural=true": { "model": "betternether:block/willow_leaves_top" }, + "facing=down,natural=true": { "model": "betternether:block/willow_leaves_bottom", "x": 180 }, + "natural=false": { "model": "betternether:block/willow_leaves" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/willow_log.json b/src/main/resources/assets/betternether/blockstates/willow_log.json new file mode 100644 index 0000000..804eee5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_log.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=y": [ + { "model": "betternether:block/willow_log" }, + { "model": "betternether:block/willow_log_2" } + ], + "axis=z": [ + { "model": "betternether:block/willow_log", "x": 90 }, + { "model": "betternether:block/willow_log_2", "x": 90 } + ], + "axis=x": [ + { "model": "betternether:block/willow_log", "x": 90, "y": 90 }, + { "model": "betternether:block/willow_log_2", "x": 90, "y": 90 } + ] + } +} diff --git a/src/main/resources/assets/betternether/blockstates/willow_planks.json b/src/main/resources/assets/betternether/blockstates/willow_planks.json new file mode 100644 index 0000000..a6caac8 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_planks.json @@ -0,0 +1,9 @@ +{ + "variants": + { + "": + [ + { "model": "betternether:block/willow_planks" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/blockstates/willow_plate.json b/src/main/resources/assets/betternether/blockstates/willow_plate.json new file mode 100644 index 0000000..dc2a55c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_plate.json @@ -0,0 +1,6 @@ +{ + "variants": { + "powered=false": { "model": "betternether:block/willow_pressure_plate_up" }, + "powered=true": { "model": "betternether:block/willow_pressure_plate_down" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/willow_sapling.json b/src/main/resources/assets/betternether/blockstates/willow_sapling.json new file mode 100644 index 0000000..fdd212f --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_sapling.json @@ -0,0 +1,6 @@ +{ + "variants": + { + "": { "model": "betternether:block/willow_sapling" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/willow_slab.json b/src/main/resources/assets/betternether/blockstates/willow_slab.json new file mode 100644 index 0000000..710b28c --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_slab.json @@ -0,0 +1,8 @@ +{ + "variants": + { + "type=bottom": { "model": "betternether:block/willow_half_slab" }, + "type=top": { "model": "betternether:block/willow_half_slab", "x": 180, "uvlock": true }, + "type=double": { "model": "betternether:block/willow_planks" } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/willow_stairs.json b/src/main/resources/assets/betternether/blockstates/willow_stairs.json new file mode 100644 index 0000000..02daad1 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_stairs.json @@ -0,0 +1,44 @@ +{ + "variants": { + "facing=east,half=bottom,shape=straight": { "model": "betternether:block/willow_stairs" }, + "facing=west,half=bottom,shape=straight": { "model": "betternether:block/willow_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=straight": { "model": "betternether:block/willow_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=straight": { "model": "betternether:block/willow_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_right": { "model": "betternether:block/willow_outer_stairs" }, + "facing=west,half=bottom,shape=outer_right": { "model": "betternether:block/willow_outer_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=outer_right": { "model": "betternether:block/willow_outer_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=outer_right": { "model": "betternether:block/willow_outer_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=outer_left": { "model": "betternether:block/willow_outer_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=outer_left": { "model": "betternether:block/willow_outer_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=outer_left": { "model": "betternether:block/willow_outer_stairs" }, + "facing=north,half=bottom,shape=outer_left": { "model": "betternether:block/willow_outer_stairs", "y": 180, "uvlock": true }, + "facing=east,half=bottom,shape=inner_right": { "model": "betternether:block/willow_inner_stairs" }, + "facing=west,half=bottom,shape=inner_right": { "model": "betternether:block/willow_inner_stairs", "y": 180, "uvlock": true }, + "facing=south,half=bottom,shape=inner_right": { "model": "betternether:block/willow_inner_stairs", "y": 90, "uvlock": true }, + "facing=north,half=bottom,shape=inner_right": { "model": "betternether:block/willow_inner_stairs", "y": 270, "uvlock": true }, + "facing=east,half=bottom,shape=inner_left": { "model": "betternether:block/willow_inner_stairs", "y": 270, "uvlock": true }, + "facing=west,half=bottom,shape=inner_left": { "model": "betternether:block/willow_inner_stairs", "y": 90, "uvlock": true }, + "facing=south,half=bottom,shape=inner_left": { "model": "betternether:block/willow_inner_stairs" }, + "facing=north,half=bottom,shape=inner_left": { "model": "betternether:block/willow_inner_stairs", "y": 180, "uvlock": true }, + "facing=east,half=top,shape=straight": { "model": "betternether:block/willow_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=straight": { "model": "betternether:block/willow_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=straight": { "model": "betternether:block/willow_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=straight": { "model": "betternether:block/willow_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=outer_right": { "model": "betternether:block/willow_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=outer_right": { "model": "betternether:block/willow_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=outer_right": { "model": "betternether:block/willow_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=outer_right": { "model": "betternether:block/willow_outer_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=outer_left": { "model": "betternether:block/willow_outer_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=outer_left": { "model": "betternether:block/willow_outer_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=outer_left": { "model": "betternether:block/willow_outer_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=outer_left": { "model": "betternether:block/willow_outer_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=east,half=top,shape=inner_right": { "model": "betternether:block/willow_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=west,half=top,shape=inner_right": { "model": "betternether:block/willow_inner_stairs", "x": 180, "y": 270, "uvlock": true }, + "facing=south,half=top,shape=inner_right": { "model": "betternether:block/willow_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=north,half=top,shape=inner_right": { "model": "betternether:block/willow_inner_stairs", "x": 180, "uvlock": true }, + "facing=east,half=top,shape=inner_left": { "model": "betternether:block/willow_inner_stairs", "x": 180, "uvlock": true }, + "facing=west,half=top,shape=inner_left": { "model": "betternether:block/willow_inner_stairs", "x": 180, "y": 180, "uvlock": true }, + "facing=south,half=top,shape=inner_left": { "model": "betternether:block/willow_inner_stairs", "x": 180, "y": 90, "uvlock": true }, + "facing=north,half=top,shape=inner_left": { "model": "betternether:block/willow_inner_stairs", "x": 180, "y": 270, "uvlock": true } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/willow_torch.json b/src/main/resources/assets/betternether/blockstates/willow_torch.json new file mode 100644 index 0000000..f184597 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_torch.json @@ -0,0 +1,10 @@ +{ + "variants": { + "facing=north": { "model": "betternether:block/willow_torch_wall", "y": 180 }, + "facing=south": { "model": "betternether:block/willow_torch_wall" }, + "facing=east": { "model": "betternether:block/willow_torch_wall", "y": 270 }, + "facing=west": { "model": "betternether:block/willow_torch_wall", "y": 90 }, + "facing=up": { "model": "betternether:block/willow_torch" }, + "facing=down": { "model": "betternether:block/willow_torch", "x": 180 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/willow_trapdoor.json b/src/main/resources/assets/betternether/blockstates/willow_trapdoor.json new file mode 100644 index 0000000..d60fbc5 --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_trapdoor.json @@ -0,0 +1,20 @@ +{ + "variants": { + "facing=north,half=bottom,open=false": { "model": "betternether:block/willow_trapdoor" }, + "facing=south,half=bottom,open=false": { "model": "betternether:block/willow_trapdoor", "y": 180 }, + "facing=east,half=bottom,open=false": { "model": "betternether:block/willow_trapdoor", "y": 90 }, + "facing=west,half=bottom,open=false": { "model": "betternether:block/willow_trapdoor", "y": 270 }, + "facing=north,half=top,open=false": { "model": "betternether:block/willow_trapdoor", "x": 180 }, + "facing=south,half=top,open=false": { "model": "betternether:block/willow_trapdoor", "x": 180, "y": 180 }, + "facing=east,half=top,open=false": { "model": "betternether:block/willow_trapdoor", "x": 180, "y": 90 }, + "facing=west,half=top,open=false": { "model": "betternether:block/willow_trapdoor", "x": 180, "y": 270 }, + "facing=north,half=bottom,open=true": { "model": "betternether:block/willow_trapdoor", "x": 90 }, + "facing=south,half=bottom,open=true": { "model": "betternether:block/willow_trapdoor", "x": 90, "y": 180 }, + "facing=east,half=bottom,open=true": { "model": "betternether:block/willow_trapdoor", "x": 90, "y": 90 }, + "facing=west,half=bottom,open=true": { "model": "betternether:block/willow_trapdoor", "x": 90, "y": 270 }, + "facing=north,half=top,open=true": { "model": "betternether:block/willow_trapdoor", "x": 270, "y": 180 }, + "facing=south,half=top,open=true": { "model": "betternether:block/willow_trapdoor", "x": 270, "y": 0 }, + "facing=east,half=top,open=true": { "model": "betternether:block/willow_trapdoor", "x": 270, "y": 270 }, + "facing=west,half=top,open=true": { "model": "betternether:block/willow_trapdoor", "x": 270, "y": 90 } + } +} diff --git a/src/main/resources/assets/betternether/blockstates/willow_trunk.json b/src/main/resources/assets/betternether/blockstates/willow_trunk.json new file mode 100644 index 0000000..0b947be --- /dev/null +++ b/src/main/resources/assets/betternether/blockstates/willow_trunk.json @@ -0,0 +1,14 @@ +{ + "variants": + { + "shape=bottom": { "model": "betternether:block/willow_trunk_bottom" }, + "shape=middle": [ + { "model": "betternether:block/willow_trunk_middle" }, + { "model": "betternether:block/willow_trunk_middle_2" } + ], + "shape=top": [ + { "model": "betternether:block/willow_trunk_top" }, + { "model": "betternether:block/willow_trunk_top_2" } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/icon.png b/src/main/resources/assets/betternether/icon.png new file mode 100644 index 0000000..7cfa64e Binary files /dev/null and b/src/main/resources/assets/betternether/icon.png differ diff --git a/src/main/resources/assets/betternether/lang/en_gb.json b/src/main/resources/assets/betternether/lang/en_gb.json new file mode 100644 index 0000000..b99759b --- /dev/null +++ b/src/main/resources/assets/betternether/lang/en_gb.json @@ -0,0 +1,3 @@ +{ + "block.betternether.soul_sandstone_chiseled": "Chiselled Soul Sandstone" +} diff --git a/src/main/resources/assets/betternether/lang/en_us.json b/src/main/resources/assets/betternether/lang/en_us.json new file mode 100644 index 0000000..d8bdc2d --- /dev/null +++ b/src/main/resources/assets/betternether/lang/en_us.json @@ -0,0 +1,697 @@ +{ + "container.forge": "Forge", + "container.chest_of_drawers": "Chest of Drawers", + + "entity.betternether.firefly": "Firefly", + "entity.betternether.hydrogen_jellyfish": "Hydrogen Jellyfish", + "entity.betternether.naga_projectile": "Naga Projectile", + "entity.betternether.naga": "Naga", + "item.betternether.spawn_egg_naga": "Naga Spawn Egg", + "entity.betternether.flying_pig": "Flying Pig", + "item.betternether.spawn_egg_flying_pig": "Flying Pig Spawn Egg", + "entity.betternether.jungle_skeleton": "Jungle Skeleton", + "item.betternether.spawn_egg_jungle_skeleton": "Jungle Skeleton Spawn Egg", + "entity.betternether.skull": "Skull", + "item.betternether.spawn_egg_skull": "Skull Spawn Egg", + + "item.betternether.black_apple": "Black Apple", + + "item.betternether.cincinnasite": "Cincinnasite", + "item.betternether.cincinnasite_axe": "Cincinnasite Axe", + "item.betternether.cincinnasite_axe_diamond": "Cincinnasite-Diamond Axe", + "item.betternether.cincinnasite_pickaxe": "Cincinnasite Pickaxe", + "item.betternether.cincinnasite_pickaxe_diamond": "Cincinnasite-Diamond Pickaxe", + + "block.betternether.stalagnate_bowl": "Stalagnate Bowl", + "item.betternether.stalagnate_bowl": "Stalagnate Bowl", + "item.betternether.stalagnate_bowl_apple": "Bowl with Black Apple", + "item.betternether.stalagnate_bowl_mushroom": "Mushroom Stew", + "item.betternether.stalagnate_bowl_wart": "Wart Soup", + + "itemGroup.betternether.items": "Better Nether", + + "message.spawn_help": "§c§lYou must hold§r %s §c§lto set your spawn point here", + "message.spawn_set": "§2§lYour spawn point was set here", + + "block.betternether.agave": "Agave Seed", + "item.betternether.agave_leaf": "Agave Leaf", + "item.betternether.agave_medicine": "Agave Medicine", + "item.betternether.herbal_medicine": "Herbal Medicine", + + "block.betternether.barrel_cactus": "Barrel Cactus", + + "block.betternether.black_apple_seed": "Black Apple Seed", + "block.betternether.black_bush": "Black Bush", + + "block.betternether.red_large_mushroom": "Large Red Mushroom", + "block.betternether.brown_large_mushroom": "Large Brown Mushroom", + "block.betternether.lucis_mushroom": "Lucis Mushroom", + + "block.betternether.eyeball": "Eyeball Block", + "block.betternether.eyeball_small": "Small Eyeball Block", + + "block.betternether.bone_block": "Bone Block", + "block.betternether.bone_button": "Bone Button", + "block.betternether.bone_cincinnasite_door": "Bone-Cincinnasite Door", + "block.betternether.bone_mushroom": "Bone Mushroom Spores", + "block.betternether.bone_plate": "Bone Pressure Plate", + "block.betternether.bone_reed_door": "Bone-Reed Door", + "block.betternether.bone_slab": "Bone Slab", + "block.betternether.bone_stairs": "Bone Stairs", + "block.betternether.bone_tile": "Bone Tile", + "block.betternether.bone_wall": "Bone Wall", + + "block.betternether.chest_of_drawers": "Chest of Drawers", + + "block.betternether.cincinnasite_bars": "Cincinnasite Bars", + "block.betternether.cincinnasite_block": "Cincinnasite Block", + "block.betternether.cincinnasite_brick_plate": "Cincinnasite Brick Plate", + "block.betternether.cincinnasite_bricks": "Cincinnasite Bricks", + "block.betternether.cincinnasite_bricks_pillar": "Cincinnasite Brick Pillar", + "block.betternether.cincinnasite_button": "Cincinnasite Button", + "block.betternether.cincinnasite_carved": "Cincinnasite Carved", + "block.betternether.cincinnasite_forge": "Cincinnasite Forge", + "block.betternether.cincinnasite_forged": "Forged Cincinnasite Block", + "block.betternether.cincinnasite_frame": "Cincinnasite Frame", + "block.betternether.cincinnasite_lantern": "Cincinnasite Lantern", + "block.betternether.cincinnasite_ore": "Cincinnasite Ore", + "block.betternether.cincinnasite_pedestal": "Cincinnasite Pedestal", + "block.betternether.cincinnasite_pillar": "Cincinnasite Pillar", + "block.betternether.cincinnasite_plate": "Cincinnasite Plate", + "block.betternether.cincinnasite_pot": "Cincinnasite Pot", + "block.betternether.cincinnasite_slab": "Cincinnasite Slab", + "block.betternether.cincinnasite_stairs": "Cincinnasite Stairs", + "block.betternether.cincinnasite_tile_large": "Large Cincinnasite Tile", + "block.betternether.cincinnasite_tile_small": "Small Cincinnasite Tile", + "block.betternether.cincinnasite_wall": "Cincinnasite Wall", + + "block.betternether.egg_plant": "Egg Plant", + + "block.betternether.eye_seed": "Eye Seed", + + "block.betternether.farmland": "Farmland", + + "block.betternether.gray_mold": "Gray Mold", + + "block.betternether.ink_bush": "Ink Bush", + "block.betternether.ink_bush_seed": "Ink Bush Seed", + + "block.betternether.lucis_spore": "Lucis Spore", + + "block.betternether.magma_flower": "Magma Flower Seed", + + "block.betternether.nether_brick_tile_large": "Large Nether Brick Tile", + "block.betternether.nether_brick_tile_slab": "Small Nether Brick Tile Slab", + "block.betternether.nether_brick_tile_small": "Small Nether Brick Tile", + "block.betternether.nether_brick_tile_stairs": "Small Nether Brick Tile Stairs", + "block.betternether.nether_brick_wall": "Nether Brick Wall", + "block.betternether.nether_cactus": "Nether Cactus", + "block.betternether.nether_grass": "Nether Grass", + "block.betternether.nether_mycelium": "Nether Mycelium", + "block.betternether.nether_reed": "Nether Reed", + "block.betternether.netherrack_furnace": "Netherrack Furnace", + "block.betternether.blackstone_furnace": "Blackstone Furnace", + "block.betternether.basalt_furnace": "Basalt Furnace", + "block.betternether.netherrack_moss": "Nether Moss", + + "block.betternether.orange_mushroom": "Orange Mushroom", + + "block.betternether.pig_statue_respawner": "Respawner Statue", + + "block.betternether.potted_plant": "Potted Plant", + + "block.betternether.quartz_glass": "Quartz Glass", + "block.betternether.quartz_glass_framed": "Framed Quartz Glass", + "block.betternether.quartz_glass_framed_pane": "Framed Quartz Glass Pane", + "block.betternether.quartz_glass_pane": "Quartz Glass Pane", + "block.betternether.quartz_glass_black": "Black Quartz Glass", + "block.betternether.quartz_glass_blue": "Blue Quartz Glass", + "block.betternether.quartz_glass_brown": "Brown Quartz Glass", + "block.betternether.quartz_glass_cyan": "Cyan Quartz Glass", + "block.betternether.quartz_glass_gray": "Gray Quartz Glass", + "block.betternether.quartz_glass_green": "Green Quartz Glass", + "block.betternether.quartz_glass_light_blue": "Light Blue Quartz Glass", + "block.betternether.quartz_glass_lime": "Lime Quartz Glass", + "block.betternether.quartz_glass_magenta": "Magenta Quartz Glass", + "block.betternether.quartz_glass_orange": "Orange Quartz Glass", + "block.betternether.quartz_glass_pink": "Pink Quartz Glass", + "block.betternether.quartz_glass_purple": "Purple Quartz Glass", + "block.betternether.quartz_glass_red": "Red Quartz Glass", + "block.betternether.quartz_glass_light_gray": "Light Gray Quartz Glass", + "block.betternether.quartz_glass_white": "White Quartz Glass", + "block.betternether.quartz_glass_yellow": "Yellow Quartz Glass", + "block.betternether.quartz_glass_framed_black": "Black Framed Quartz Glass", + "block.betternether.quartz_glass_framed_blue": "Blue Framed Quartz Glass", + "block.betternether.quartz_glass_framed_brown": "Brown Framed Quartz Glass", + "block.betternether.quartz_glass_framed_cyan": "Cyan Framed Quartz Glass", + "block.betternether.quartz_glass_framed_gray": "Gray Framed Quartz Glass", + "block.betternether.quartz_glass_framed_green": "Green Framed Quartz Glass", + "block.betternether.quartz_glass_framed_light_blue": "Light BlueFramed Quartz Glass", + "block.betternether.quartz_glass_framed_lime": "Lime Framed Quartz Glass", + "block.betternether.quartz_glass_framed_magenta": "Magenta Framed Quartz Glass", + "block.betternether.quartz_glass_framed_orange": "Orange Framed Quartz Glass", + "block.betternether.quartz_glass_framed_pink": "Pink Framed Quartz Glass", + "block.betternether.quartz_glass_framed_purple": "Purple Framed Quartz Glass", + "block.betternether.quartz_glass_framed_red": "Red Framed Quartz Glass", + "block.betternether.quartz_glass_framed_light_gray": "Light Gray Framed Quartz Glass", + "block.betternether.quartz_glass_framed_white": "White Framed Quartz Glass", + "block.betternether.quartz_glass_framed_yellow": "Yellow Framed Quartz Glass", + + "block.betternether.red_mold": "Red Mold", + + "block.betternether.reeds_block": "Reeds Block", + "block.betternether.reeds_button": "Reeds Button", + "block.betternether.reeds_fence": "Reeds Fence", + "block.betternether.reeds_gate": "Reeds Gate", + "block.betternether.reeds_ladder": "Reeds Ladder", + "block.betternether.reeds_plate": "Reeds Pressure Plate", + "block.betternether.reeds_slab": "Reeds Slab", + "block.betternether.reeds_stairs": "Reeds Stairs", + "block.betternether.reeds_door": "Reeds Door", + "block.betternether.reeds_trapdoor": "Reeds Trapdoor", + + "block.betternether.smoker": "Smoker", + + "block.betternether.stalagnate": "Stalagnate", + "block.betternether.stalagnate_stem": "Stalagnate Stem", + "block.betternether.stalagnate_log": "Stalagnate Log", + "block.betternether.stalagnate_bark": "Stalagnate Wood", + "block.betternether.stalagnate_bowl_placed": "Stalagnate Bowl", + "block.betternether.stalagnate_planks": "Stalagnate Planks", + "block.betternether.stalagnate_planks_button": "Stalagnate Button", + "block.betternether.stalagnate_planks_fence": "Stalagnate Fence", + "block.betternether.stalagnate_planks_gate": "Stalagnate Gate", + "block.betternether.stalagnate_planks_plate": "Stalagnate Pressure Plate", + "block.betternether.stalagnate_planks_slab": "Stalagnate Slab", + "block.betternether.stalagnate_planks_stairs": "Stalagnate Stairs", + "block.betternether.stalagnate_planks_door": "Stalagnate Door", + "block.betternether.stalagnate_planks_trapdoor": "Stalagnate Trapdoor", + "block.betternether.stalagnate_seed": "Stalagnate Seed", + "block.betternether.wart_seed": "Wart Seed", + + "block.betternether.eye_vine": "Eye Vine", + "block.betternether.black_apple": "Black Apple Bush", + + "commands.findnethercity.usage.console": "No coordinates in input", + "commands.findnethercity.usage.coordinates": "Wrong coordinates", + "commands.findnethercity.usage": "Wrong usage, must be /findNetherCity or /findNetherCity x y z", + + "block.betternether.willow_branch": "Willow Branch", + "block.betternether.willow_leaves": "Willow Leaves", + "block.betternether.willow_trunk": "Willow Trunk", + "block.betternether.willow_log": "Willow Log", + "block.betternether.willow_bark": "Willow Wood", + "block.betternether.willow_sapling": "Willow Sapling", + + "block.betternether.swamp_grass": "Swamp Grass", + + "block.betternether.willow_planks": "Willow Planks", + "block.betternether.willow_stairs": "Willow Stairs", + "block.betternether.willow_slab": "Willow Slab", + "block.betternether.willow_fence": "Willow Fence", + "block.betternether.willow_gate": "Willow Gate", + "block.betternether.willow_button": "Willow Button", + "block.betternether.willow_plate": "Willow Pressure Plate", + "block.betternether.willow_trapdoor": "Willow Trapdoor", + "block.betternether.willow_door": "Willow Door", + + "block.betternether.wart_planks": "Wart Planks", + "block.betternether.wart_stairs": "Wart Stairs", + "block.betternether.wart_slab": "Wart Slab", + "block.betternether.wart_fence": "Wart Fence", + "block.betternether.wart_gate": "Wart Gate", + "block.betternether.wart_button": "Wart Button", + "block.betternether.wart_plate": "Wart Pressure Plate", + "block.betternether.wart_trapdoor": "Wart Trapdoor", + "block.betternether.wart_door": "Wart Door", + + "block.betternether.black_vine": "Black Vine", + "block.betternether.veined_sand": "Veined Sand", + "block.betternether.soul_vein": "Soul Vein", + "block.betternether.blooming_vine": "Blooming vine", + "block.betternether.golden_vine": "Golden Vine", + "block.betternether.geyser": "Geyser", + + "item.betternether.cincinnasite_shovel": "Cincinnasite Shovel", + "item.betternether.cincinnasite_shovel_diamond": "Cincinnasite-Diamond Shovel", + + "item.betternether.cincinnasite_helmet": "Cincinnasite Helmet", + "item.betternether.cincinnasite_chestplate": "Cincinnasite Chestplate", + "item.betternether.cincinnasite_leggings": "Cincinnasite Leggings", + "item.betternether.cincinnasite_boots": "Cincinnasite Boots", + "item.betternether.cincinnasite_sword": "Cincinnasite Sword", + "item.betternether.cincinnasite_sword_diamond": "Cincinnasite-Diamond Sword", + + "item.betternether.spawn_egg_firefly": "Firefly Spawn Egg", + "item.betternether.cincinnasite_ingot": "Cincinnasite Ingot", + + "block.betternether.mushroom_stem": "Mushroom Stem", + "block.betternether.mushroom_planks": "Mushroom Planks", + "block.betternether.mushroom_stairs": "Mushroom Stairs", + "block.betternether.mushroom_slab": "Mushroom Slab", + "block.betternether.mushroom_fence": "Mushroom Fence", + "block.betternether.mushroom_gate": "Mushroom Gate", + "block.betternether.mushroom_button": "Mushroom Button", + "block.betternether.mushroom_plate": "Mushroom Plate", + "block.betternether.mushroom_trapdoor": "Mushroom Trapdoor", + "block.betternether.mushroom_door": "Mushroom Door", + + "block.betternether.cincinnasite_lantern_small": "Small Cincinnasite Lantern", + + "block.betternether.quartz_glass_pane_white": "White Quartz Pane", + "block.betternether.quartz_glass_pane_orange": "Orange Quartz Pane", + "block.betternether.quartz_glass_pane_magenta": "Magenta Quartz Pane", + "block.betternether.quartz_glass_pane_light_blue": "Light Blue Quartz Pane", + "block.betternether.quartz_glass_pane_yellow": "Yellow Quartz Pane", + "block.betternether.quartz_glass_pane_lime": "Lime Quartz Pane", + "block.betternether.quartz_glass_pane_pink": "Pink Quartz Pane", + "block.betternether.quartz_glass_pane_gray": "Gray Quartz Pane", + "block.betternether.quartz_glass_pane_light_gray": "Light Gray Quartz Pane", + "block.betternether.quartz_glass_pane_cyan": "Cyan Quartz Pane", + "block.betternether.quartz_glass_pane_purple": "Purple Quartz Pane", + "block.betternether.quartz_glass_pane_blue": "Blue Quartz Pane", + "block.betternether.quartz_glass_pane_brown": "Brown Quartz Pane", + "block.betternether.quartz_glass_pane_green": "Green Quartz Pane", + "block.betternether.quartz_glass_pane_red": "Red Quartz Pane", + "block.betternether.quartz_glass_pane_black": "Black Quartz Pane", + + "block.betternether.quartz_glass_framed_pane_white": "White Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_orange": "Orange Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_magenta": "Magenta Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_light_blue": "Light Framed Blue Quartz Pane", + "block.betternether.quartz_glass_framed_pane_yellow": "Yellow Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_lime": "Lime Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_pink": "Pink Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_gray": "Gray Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_light_gray": "Light Gray Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_cyan": "Cyan Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_purple": "Purple Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_blue": "Blue Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_brown": "Brown Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_green": "Green Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_red": "Red Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_black": "Black Framed Quartz Pane", + + "block.betternether.soul_lily": "Soul Lily", + "block.betternether.soul_lily_sapling": "Soul Lily Sapling", + "block.betternether.soul_grass": "Soul Grass", + + "block.betternether.wart_log": "Wart Log", + "block.betternether.wart_bark": "Wart Wood", + "block.betternether.wart_roots": "Wart Roots", + + "block.betternether.wall_moss": "Wall Moss", + "block.betternether.wall_mushroom_brown": "Wall Brown Mushroom", + "block.betternether.wall_mushroom_red": "Wall Red Mushroom", + + "block.betternether.roof_tile_reeds": "Reeds Roof Tile", + "block.betternether.roof_tile_reeds_stairs": "Reeds Roof Tile Stairs", + "block.betternether.roof_tile_reeds_slab": "Reeds Roof Tile Slab", + "block.betternether.roof_tile_stalagnate": "Stalagnate Roof Tile", + "block.betternether.roof_tile_stalagnate_stairs": "Stalagnate Roof Tile Stairs", + "block.betternether.roof_tile_stalagnate_slab": "Stalagnate Roof Tile Slab", + "block.betternether.roof_tile_nether_bricks": "Nether Bricks Roof Tile", + "block.betternether.roof_tile_nether_bricks_stairs": "Nether Bricks Roof Tile Stairs", + "block.betternether.roof_tile_nether_bricks_slab": "Nether Bricks Roof Tile Slab", + "block.betternether.roof_tile_cincinnasite": "Cincinnasite Roof Tile", + "block.betternether.roof_tile_cincinnasite_stairs": "Cincinnasite Roof Tile Stairs", + "block.betternether.roof_tile_cincinnasite_slab": "Cincinnasite Roof Tile Slab", + "block.betternether.roof_tile_willow": "Willow Roof Tile", + "block.betternether.roof_tile_willow_stairs": "Willow Roof Tile Stairs", + "block.betternether.roof_tile_willow_slab": "Willow Roof Tile Slab", + "block.betternether.roof_tile_wart": "Wart Roof Tile", + "block.betternether.roof_tile_wart_stairs": "Wart Roof Tile Stairs", + "block.betternether.roof_tile_wart_slab": "Wart Roof Tile Slab", + + "block.betternether.taburet_reeds": "Reeds Stool", + "block.betternether.taburet_stalagnate": "Stalagnate Stool", + "block.betternether.taburet_willow": "Willow Stool", + "block.betternether.taburet_wart": "Wart Stool", + "block.betternether.taburet_cincinnasite": "Cincinnasite Stool", + + "block.betternether.stalagnate_ladder": "Stalagnate Ladder", + "block.betternether.willow_ladder": "Willow Ladder", + "block.betternether.wart_ladder": "Wart Ladder", + + "block.betternether.chair_reeds": "Reeds Chair", + "block.betternether.chair_stalagnate": "Stalagnate Chair", + "block.betternether.chair_willow": "Willow Chair", + "block.betternether.chair_wart": "Wart Chair", + "block.betternether.chair_cincinnasite": "Cincinnasite Chair", + + "block.betternether.striped_log_stalagnate": "Stripped Stalagnate Log", + "block.betternether.striped_log_willow": "Stripped Willow Log", + "block.betternether.striped_log_wart": "Stripped Wart Log", + + "block.betternether.striped_bark_stalagnate": "Stripped Stalagnate Wood", + "block.betternether.striped_bark_willow": "Stripped Willow Wood", + "block.betternether.striped_bark_wart": "Stripped Wart Wood", + + "block.betternether.giant_mold": "Giant Mold", + "block.betternether.giant_mold_sapling": "Giant Mold Sapling", + + "block.betternether.bar_stool_reeds": "Reed Bar Stool", + "block.betternether.bar_stool_stalagnate": "Stalagnate Bar Stool", + "block.betternether.bar_stool_willow": "Willow Bar Stool", + "block.betternether.bar_stool_wart": "Wart Bar Stool", + "block.betternether.bar_stool_cincinnasite": "Cincinnasite Bar Stool", + + "biome.betternether.gravel_desert": "Gravel Desert", + "biome.betternether.nether_jungle": "Nether Jungle", + "biome.betternether.wart_forest": "Wart Forest", + "biome.betternether.nether_grasslands": "Nether Grasslands", + "biome.betternether.nether_mushroom_forest": "Nether Mushroom Forest", + "biome.betternether.nether_mushroom_forest_edge": "Nether Mushroom Forest Edge", + "biome.betternether.wart_forest_edge": "Wart Forest Edge", + "biome.betternether.sulfuric_bone_reef": "Sulfuric Bone Reef", + "biome.betternether.bone_reef": "Bone Reef", + "biome.betternether.poor_grasslands": "Poor Grasslands", + "biome.betternether.nether_swampland": "Nether Swampland", + "biome.betternether.nether_swampland_terraces": "Nether Swampland Terraces", + "biome.betternether.magma_land": "Magma Land", + "biome.betternether.soul_plain": "Soul Plain", + "biome.betternether.crimson_glowing_woods": "Crimson Glowing Woods", + "biome.betternether.old_warped_woods": "Old Warped Woods", + "biome.betternether.crimson_pinewood": "Crimson Pinewood", + "biome.betternether.old_fungiwoods": "Old Fungiwoods", + "biome.betternether.poor_nether_grasslands": "Poor Nether Grasslands", + "biome.betternether.upside_down_forest": "Upside Down Forest", + "biome.betternether.old_swampland": "Old Swampland", + + "block.betternether.mushroom_fir": "Mushroom Fir", + "block.betternether.mushroom_fir_sapling": "Mushroom Fir Sapling", + "block.betternether.mushroom_fir_stem": "Mushroom Fir Stem", + "block.betternether.mushroom_fir_log": "Mushroom Fir Log", + "block.betternether.mushroom_fir_wood": "Mushroom Fir Wood", + "block.betternether.striped_log_mushroom_fir": "Stripped Mushroom Fir Log", + "block.betternether.striped_wood_mushroom_fir": "Stripped Mushroom Fir Wood", + "block.betternether.mushroom_fir_planks": "Mushroom Fir Planks", + "block.betternether.mushroom_fir_stairs": "Mushroom Fir Stairs", + "block.betternether.mushroom_fir_slab": "Mushroom Fir Slab", + "block.betternether.mushroom_fir_fence": "Mushroom Fir Fence", + "block.betternether.mushroom_fir_gate": "Mushroom Fir Gate", + "block.betternether.mushroom_fir_button": "Mushroom Fir Button", + "block.betternether.mushroom_fir_plate": "Mushroom Fir Plate", + "block.betternether.mushroom_fir_trapdoor": "Mushroom Fir Trapdoor", + "block.betternether.mushroom_fir_door": "Mushroom Fir Door", + "block.betternether.mushroom_fir_ladder": "Mushroom Fir Ladder", + + "block.betternether.chair_mushroom_fir": "Mushroom Fir Chair", + "block.betternether.taburet_mushroom_fir": "Mushroom Fir Stool", + "block.betternether.bar_stool_mushroom_fir": "Mushroom Fir Bar Stool", + + "block.betternether.obsidian_bricks": "Obsidian Bricks", + "block.betternether.obsidian_bricks_stairs": "Obsidian Brick Stairs", + "block.betternether.obsidian_bricks_slab": "Obsidian Brick Slab", + "block.betternether.obsidian_tile": "Obsidian Tile", + "block.betternether.obsidian_tile_small": "Small Obsidian Tile", + "block.betternether.obsidian_tile_stairs": "Obsidian Tile Stairs", + "block.betternether.obsidian_tile_slab": "Obsidian Tile Slab", + "block.betternether.obsidian_glass": "Obsidian Glass", + "block.betternether.obsidian_glass_pane": "Obsidian Glass Pane", + "block.betternether.blue_obsidian": "Blue Obsidian", + "block.betternether.blue_obsidian_bricks": "Blue Obsidian Bricks", + "block.betternether.blue_obsidian_bricks_stairs": "Blue Obsidian Brick Stairs", + "block.betternether.blue_obsidian_bricks_slab": "Blue Obsidian Brick Slab", + "block.betternether.blue_obsidian_tile": "Blue Obsidian Tile", + "block.betternether.blue_obsidian_tile_small": "Small Blue Obsidian Tile", + "block.betternether.blue_obsidian_tile_stairs": "Blue Obsidian Tile Stairs", + "block.betternether.blue_obsidian_tile_slab": "Blue Obsidian Tile Slab", + "block.betternether.blue_obsidian_glass": "Blue Obsidian Glass", + "block.betternether.blue_obsidian_glass_pane": "Blue Obsidian Glass Pane", + + "block.betternether.taburet_oak": "Oak Stool", + "block.betternether.chair_oak": "Oak Chair", + "block.betternether.bar_stool_oak": "Oak Bar Stool", + "block.betternether.taburet_spruce": "Spruce Stool", + "block.betternether.chair_spruce": "Spruce Chair", + "block.betternether.bar_stool_spruce": "Spruce Bar Stool", + "block.betternether.taburet_birch": "Birch Stool", + "block.betternether.chair_birch": "Birch Chair", + "block.betternether.bar_stool_birch": "Birch Bar Stool", + "block.betternether.taburet_jungle": "Jungle Stool", + "block.betternether.chair_jungle": "Jungle Chair", + "block.betternether.bar_stool_jungle": "Jungle Bar Stool", + "block.betternether.taburet_acacia": "Acacia Stool", + "block.betternether.chair_acacia": "Acacia Chair", + "block.betternether.bar_stool_acacia": "Acacia Bar Stool", + "block.betternether.taburet_dark_oak": "Dark Oak Stool", + "block.betternether.chair_dark_oak": "Dark Oak Chair", + "block.betternether.bar_stool_dark_oak": "Dark Oak Bar Stool", + + "item.betternether.cincinnasite_hammer": "Cincinnasite Hammer", + "item.betternether.cincinnasite_hammer_diamond": "Cincinnasite-Diamond Hammer", + + "block.betternether.nether_brewing_stand": "Nether Brewing Stand", + + "betternether.flat_nether": "Flat Nether", + + "item.betternether.spawn_egg_hydrogen_jellyfish": "Hydrogen Jellyfish Spawn Egg", + "block.betternether.brick_pot": "Nether Brick Pot", + + "block.betternether.striped_log_rubeus": "Stripped Rubeus Log", + "block.betternether.striped_bark_rubeus": "Stripped Rubeus Bark", + "block.betternether.rubeus_cone": "Rubeus Cone", + "block.betternether.rubeus_sapling": "Rubeus Sapling", + "block.betternether.rubeus_log": "Rubeus Log", + "block.betternether.rubeus_bark": "Rubeus Bark", + "block.betternether.rubeus_leaves": "Rubeus Leaves", + "block.betternether.rubeus_planks": "Rubeus Planks", + "block.betternether.rubeus_stairs": "Rubeus Stairs", + "block.betternether.rubeus_slab": "Rubeus Slab", + "block.betternether.rubeus_fence": "Rubeus Fence", + "block.betternether.rubeus_gate": "Rubeus Gate", + "block.betternether.rubeus_button": "Rubeus Button", + "block.betternether.rubeus_plate": "Rubeus Pressure Plate", + "block.betternether.rubeus_trapdoor": "Rubeus Trapdoor", + "block.betternether.rubeus_door": "Rubeus Door", + "block.betternether.taburet_rubeus": "Rubeus Stool", + "block.betternether.chair_rubeus": "Rubeus Chair", + "block.betternether.bar_stool_rubeus": "Rubeus Bar Stool", + "block.betternether.rubeus_ladder": "Rubeus Ladder", + + "item.betternether.cincinnasite_shears": "Cincinnasite Shears", + "block.betternether.cincinnasite_anvil": "Cincinnasite Anvil", + + "block.betternether.jungle_grass": "Jungle Grass", + "block.betternether.jungle_plant": "Jungle Plant", + + "block.betternether.netherrack_stalactite": "Netherrack Stalactite", + "block.betternether.glowstone_stalactite": "Glowstone Stalactite", + "block.betternether.blackstone_stalactite": "Blackstone Stalactite", + "block.betternether.basalt_stalactite": "Basalt Stalactite", + + "block.betternether.nether_ruby_ore": "Nether Ruby Ore", + "block.betternether.nether_ruby_block": "Nether Ruby Block", + "block.betternether.nether_ruby_stairs": "Nether Ruby Stairs", + "block.betternether.nether_ruby_slab": "Nether Ruby Slab", + + "item.betternether.nether_ruby": "Nether Ruby", + "item.betternether.nether_ruby_pickaxe": "Nether Ruby Pickaxe", + "item.betternether.nether_ruby_axe": "Nether Ruby Axe", + "item.betternether.nether_ruby_shovel": "Nether Ruby Shovel", + "item.betternether.nether_ruby_sword": "Nether Ruby Sword", + "item.betternether.nether_ruby_helmet": "Nether Ruby Helmet", + "item.betternether.nether_ruby_chestplate": "Nether Ruby Chestplate", + "item.betternether.nether_ruby_leggings": "Nether Ruby Leggings", + "item.betternether.nether_ruby_boots": "Nether Ruby Boots", + + "block.betternether.soul_sandstone": "Soul Sandstone", + "block.betternether.soul_sandstone_cut": "Cut Soul Sandstone", + "block.betternether.soul_sandstone_smooth": "Smooth Soul Sandstone", + "block.betternether.soul_sandstone_chiseled": "Chiseled Soul Sandstone", + + "block.betternether.soul_sandstone_stairs": "Soul Sandstone Stairs", + "block.betternether.soul_sandstone_cut_stairs": "Cut Soul Sandstone Stairs", + "block.betternether.soul_sandstone_smooth_stairs": "Smooth Soul Sandstone Stairs", + + "block.betternether.soul_sandstone_slab": "Soul Sandstone Slab", + "block.betternether.soul_sandstone_cut_slab": "Cut Soul Sandstone Slab", + "block.betternether.soul_sandstone_smooth_slab": "Smooth Soul Sandstone Slab", + + "block.betternether.soul_sandstone_wall": "Soul Sandstone Wall", + + "block.betternether.basalt_bricks": "Basalt Bricks", + "block.betternether.basalt_bricks_stairs": "Basalt Brick Stairs", + "block.betternether.basalt_bricks_slab": "Basalt Brick Slab", + "block.betternether.basalt_bricks_wall": "Basalt Brick Wall", + + "item.betternether.cincinnasite_hoe": "Cincinnasite Hoe", + "item.betternether.cincinnasite_hoe_diamond": "Cincinnasite-Diamond Hoe", + "item.betternether.nether_ruby_hoe": "Nether Ruby Hoe", + "item.betternether.nether_ruby_hammer": "Nether Ruby Hammer", + + "config.betternether.config": "Better Nether Config", + "config.betternether.mod_reload": "§b§lYou need to restart Minecraft to apply this changes!", + "config.betternether.rendering": "Render Options", + "config.betternether.blocks": "Registered Blocks", + "config.betternether.items": "Registered Items", + "config.betternether.biomes": "Biomes Options", + "config.betternether.subbiomes": "Sub-biomes Options", + "config.betternether.biomes_edges": "Biomes Edges Options", + "config.betternether.generator": "Generator Options", + "config.betternether.global_structures_density": "Global Foliage & Structures Density", + "config.betternether.structures_density": "Structures Density", + "config.betternether.cities_dist": "Distance Between Cities [in chunks]", + + "config.betternether.reset": "Reset", + "config.betternether.fog": "Fog Distance", + "config.betternether.lavafalls": "§b*§rLavafall Particles", + "config.betternether.armour": "§b*§rThin Armor", + + "block.betternether.crafting_table_crimson": "Crimson Crafting Table", + "block.betternether.crafting_table_warped": "Warped Crafting Table", + + "block.betternether.crafting_table_stalagnate": "Stalagnate Crafting Table", + "block.betternether.crafting_table_reed": "Reeds Crafting Table", + "block.betternether.crafting_table_willow": "Willow Crafting Table", + "block.betternether.crafting_table_wart": "Wart Crafting Table", + "block.betternether.crafting_table_rubeus": "Rubeus Crafting Table", + "block.betternether.crafting_table_mushroom": "Mushroom Crafting Table", + "block.betternether.crafting_table_mushroom_fir": "Mushroom Fir Crafting Table", + + "block.betternether.chest_stalagnate": "Stalagnate Chest", + "block.betternether.chest_reed": "Reeds Chest", + "block.betternether.chest_willow": "Willow Chest", + "block.betternether.chest_wart": "Wart Chest", + "block.betternether.chest_rubeus": "Rubeus Chest", + "block.betternether.chest_mushroom": "Mushroom Chest", + "block.betternether.chest_mushroom_fir": "Mushroom Fir Chest", + + "block.betternether.chest_crimson": "Crimson Chest", + "block.betternether.chest_warped": "Warped Chest", + + "block.betternether.jungle_moss": "Jungle Moss", + + "block.betternether.feather_fern": "Feather Fern", + + "block.betternether.sign_stalagnate": "Stalagnate Sign", + "block.betternether.sign_reed": "Reeds Sign", + "block.betternether.sign_willow": "Willow Sign", + "block.betternether.sign_wart": "Wart Sign", + "block.betternether.sign_rubeus": "Rubeus Sign", + "block.betternether.sign_mushroom": "Mushroom Sign", + "block.betternether.sign_mushroom_fir": "Mushroom Fir Sign", + + "block.betternether.barrel_stalagnate": "Stalagnate Barrel", + "block.betternether.barrel_reed": "Reeds Barrel", + "block.betternether.barrel_willow": "Willow Barrel", + "block.betternether.barrel_wart": "Wart Barrel", + "block.betternether.barrel_rubeus": "Rubeus Barrel", + "block.betternether.barrel_mushroom": "Mushroom Barrel", + "block.betternether.barrel_mushroom_fir": "Mushroom Fir Barrel", + + "block.betternether.barrel_crimson": "Crimson Barrel", + "block.betternether.barrel_warped": "Warped Barrel", + + "block.betternether.crimson_ladder": "Crimson Ladder", + "block.betternether.warped_ladder": "Warped Ladder", + "block.betternether.mushroom_ladder": "Mushroom Ladder", + + "block.betternether.taburet_crimson": "Crimson Taburet", + "block.betternether.taburet_warped": "Warped Taburet", + "block.betternether.taburet_mushroom": "Mushroom Taburet", + + "block.betternether.chair_crimson": "Crimson Chair", + "block.betternether.chair_warped": "Warped Chair", + "block.betternether.chair_mushroom": "Mushroom Chair", + + "block.betternether.bar_stool_crimson": "Crimson Bar Stool", + "block.betternether.bar_stool_warped": "Warped Bar Stool", + "block.betternether.bar_stool_mushroom": "Mushroom Bar Stool", + + "block.betternether.mushroom_grass": "Mushroom Grass", + "block.betternether.bone_grass": "Bone Grass", + "block.betternether.lumabus_seed": "Lumabus Seed", + "block.betternether.lumabus_vine": "Lumabus Vine", + "item.betternether.glowstone_pile": "Glowstone Pile", + "block.betternether.jellyfish_mushroom": "Jellyfish Mushroom", + "block.betternether.jellyfish_mushroom_sapling": "Jellyfish Mushroom Sapling", + "block.betternether.bone_stalactite": "Bone Stalactite", + "block.betternether.cincinnasite_chain": "Cincinnasite Chain", + "block.betternether.nether_lapis_ore": "Nether Lapis Ore", + "item.betternether.lapis_pile": "Lapis Pile", + "item.betternether.cincinnasite_excavator": "Cincinnasite Excavator", + "item.betternether.cincinnasite_excavator_diamond": "Cincinnasite-Diamond Excavator", + "item.betternether.nether_ruby_excavator": "Ruby Excavator", + + "block.betternether.sepia_mushroom_grass": "Sepian Mushroom Grass", + "block.betternether.sepia_bone_grass": "Sepian Bone Grass", + "block.betternether.golden_lumabus_seed": "Golden Lumabus Seed", + "block.betternether.golden_lumabus_vine": "Golden Lumabus Vine", + + "block.betternether.cincinnasite_fire_bowl": "Cincinnasite Fire Bowl", + "block.betternether.bricks_fire_bowl": "Nether Brick Fire Bowl", + "block.betternether.netherite_fire_bowl": "Netherite Fire Bowl", + "block.betternether.cincinnasite_fire_bowl_soul": "Cincinnasite Soul Fire Bowl", + "block.betternether.bricks_fire_bowl_soul": "Nether Brick Soul Fire Bowl", + "block.betternether.netherite_fire_bowl_soul": "Netherite Soul Fire Bowl", + + "block.betternether.swampland_grass": "Swampland Grass", + "block.betternether.basalt_slab": "Basalt Slab", + + "block.betternether.anchor_tree_bark": "Anchor Tree Bark", + "block.betternether.anchor_tree_button": "Anchor Tree Button", + "block.betternether.anchor_tree_door": "Anchor Tree Door", + "block.betternether.anchor_tree_fence": "Anchor Tree Fence", + "block.betternether.anchor_tree_gate": "Anchor Tree Gate", + "block.betternether.anchor_tree_ladder": "Anchor Tree Ladder", + "block.betternether.anchor_tree_log": "Anchor Tree Log", + "block.betternether.anchor_tree_planks": "Anchor Tree Planks", + "block.betternether.anchor_tree_plate": "Anchor Tree Pressure Plate", + "block.betternether.anchor_tree_slab": "Anchor Tree Slab", + "block.betternether.anchor_tree_stairs": "Anchor Tree Stairs", + "block.betternether.anchor_tree_trapdoor": "Anchor Tree Trapdoor", + "block.betternether.barrel_anchor_tree": "Anchor Tree Barrel", + "block.betternether.bar_stool_anchor_tree": "Anchor Tree Bar Stool", + "block.betternether.chair_anchor_tree": "Anchor Tree Chair", + "block.betternether.chest_anchor_tree": "Anchor Tree Chest", + "block.betternether.crafting_table_anchor_tree": "Anchor Tree Crafting Table", + "block.betternether.sign_anchor_tree": "Anchor Tree Sign", + "block.betternether.striped_bark_anchor_tree": "Stripped Anchor Tree Bark", + "block.betternether.striped_log_anchor_tree": "Stripped Anchor Tree Log", + "block.betternether.taburet_anchor_tree": "Anchor Tree Taburet", + + "block.betternether.anchor_tree_vine": "Anchor Tree Vine", + "block.betternether.anchor_tree_leaves": "Anchor Tree Leaves", + "block.betternether.anchor_tree_sapling": "Anchor Tree Sapling", + + "block.betternether.giant_lucis": "Giant Lucis", + "block.betternether.moss_cover": "Moss Cover", + + "block.betternether.nether_sakura_bark": "Nether Sakura Bark", + "block.betternether.nether_sakura_button": "Nether Sakura Button", + "block.betternether.nether_sakura_door": "Nether Sakura Door", + "block.betternether.nether_sakura_fence": "Nether Sakura Fence", + "block.betternether.nether_sakura_gate": "Nether Sakura Gate", + "block.betternether.nether_sakura_ladder": "Nether Sakura Ladder", + "block.betternether.nether_sakura_log": "Nether Sakura Log", + "block.betternether.nether_sakura_planks": "Nether Sakura Planks", + "block.betternether.nether_sakura_plate": "Nether Sakura Plate", + "block.betternether.nether_sakura_slab": "Nether Sakura Slab", + "block.betternether.nether_sakura_stairs": "Nether Sakura Stairs", + "block.betternether.nether_sakura_trapdoor": "Nether Sakura Trapdoor", + "block.betternether.barrel_nether_sakura": "Nether Sakura Barrel", + "block.betternether.bar_stool_nether_sakura": "Nether Sakura Bar Stool", + "block.betternether.chair_nether_sakura": "Nether Sakura Chair", + "block.betternether.chest_nether_sakura": "Nether Sakura Chest", + "block.betternether.crafting_table_nether_sakura": "Nether Sakura Crafting Table", + "block.betternether.sign_nether_sakura": "Nether Sakura Sign", + "block.betternether.striped_bark_nether_sakura": "Stripped Nether Sakura Bark", + "block.betternether.striped_log_nether_sakura": "Stripped Nether Sakura Log", + "block.betternether.taburet_nether_sakura": "Nether Sakura Taburet", + + "block.betternether.nether_sakura_leaves": "Nether Sakura Leaves", + "block.betternether.nether_sakura_sapling": "Nether Sakura Sapling", + + "block.betternether.ceiling_mushrooms": "Ceiling Mushrooms", + "block.betternether.neon_equisetum": "Neon Equisetum", + "block.betternether.hook_mushroom": "Hook Mushroom", + "item.betternether.hook_mushroom_cooked": "Cooked Hook Mushroom", + + "block.betternether.whispering_gourd_vine": "Whispering Gourd Seeds", + "block.betternether.whispering_gourd": "Whispering Gourd", + "block.betternether.whispering_gourd_lantern": "Whispering Gourd Lantern", + + "block.betternether.willow_torch": "Willow Torch" +} diff --git a/src/main/resources/assets/betternether/lang/fr_fr.json b/src/main/resources/assets/betternether/lang/fr_fr.json new file mode 100644 index 0000000..a1731de --- /dev/null +++ b/src/main/resources/assets/betternether/lang/fr_fr.json @@ -0,0 +1,688 @@ +{ + "container.forge": "Forge", + "container.chest_of_drawers": "Commode", + + "entity.betternether.firefly": "Luciole", + "entity.betternether.hydrogen_jellyfish": "Méduse à hydrogène", + "entity.betternether.naga_projectile": "Projectile de naga", + "entity.betternether.naga": "Naga", + "item.betternether.spawn_egg_naga": "Oeuf d'apparition de naga", + "entity.betternether.flying_pig": "Cochon volant", + "item.betternether.spawn_egg_flying_pig": "Oeuf d'apparition de cochon volant", + "entity.betternether.jungle_skeleton": "Squelette de la jungle", + "item.betternether.spawn_egg_jungle_skeleton": "Oeuf d'apparition de squelette de la jungle", + "entity.betternether.skull": "Crâne", + "item.betternether.spawn_egg_skull": "Oeuf d'apparition de crâne", + + "item.betternether.black_apple": "Pomme noire", + + "item.betternether.cincinnasite": "Cincinnasite", + "item.betternether.cincinnasite_axe": "Hache en Cincinnasite", + "item.betternether.cincinnasite_axe_diamond": "Hache en Cincinnasite diamantée", + "item.betternether.cincinnasite_pickaxe": "Pioche en Cincinnasite", + "item.betternether.cincinnasite_pickaxe_diamond": "Pioche en Cincinnasite diamantée", + + "block.betternether.stalagnate_bowl": "Bol en Stalagnate", + "item.betternether.stalagnate_bowl": "Bol en Stalagnate", + "item.betternether.stalagnate_bowl_apple": "Pomme noire en bol", + "item.betternether.stalagnate_bowl_mushroom": "Soupe de champignons", + "item.betternether.stalagnate_bowl_wart": "Soupe de verrues", + + "itemGroup.betternether.items": "Better Nether", + + "message.spawn_help": "§c§lVous devez avoir§r %s §c§lpour définir votre point de réapparition ici", + "message.spawn_set": "§2§lVotre point de réapparition a été défini ici", + + "block.betternether.agave": "Agave", + + "block.betternether.barrel_cactus": "Coussin de belle-mère", + + "block.betternether.black_apple_seed": "Graines de pomme noire", + "block.betternether.black_bush": "Buisson noir", + + "block.betternether.red_large_mushroom": "Large champignon rouge", + "block.betternether.brown_large_mushroom": "Large champignon brun", + "block.betternether.lucis_mushroom": "Champignon Lucis", + + "block.betternether.eyeball": "Bloc oculaire", + "block.betternether.eyeball_small": "Petit bloc oculaire", + + "block.betternether.bone_block": "Bloc d'os", + "block.betternether.bone_button": "Bouton ossseux", + "block.betternether.bone_cincinnasite_door": "Porte en Cincinnasite osseuse", + "block.betternether.bone_mushroom": "Spores de champignons osseux", + "block.betternether.bone_plate": "Plaque de pression osseuse", + "block.betternether.bone_reed_door": "Porte en roseau osseux", + "block.betternether.bone_slab": "Dalle osseuse", + "block.betternether.bone_stairs": "Escaliers osseux", + "block.betternether.bone_tile": "Tuile osseuse", + "block.betternether.bone_wall": "Muret osseux", + + "block.betternether.chest_of_drawers": "Commode", + + "block.betternether.cincinnasite_bars": "Cincinnasite Bars", + "block.betternether.cincinnasite_block": "Cincinnasite Block", + "block.betternether.cincinnasite_brick_plate": "Cincinnasite Brick Plate", + "block.betternether.cincinnasite_bricks": "Cincinnasite Bricks", + "block.betternether.cincinnasite_bricks_pillar": "Cincinnasite Brick Pillar", + "block.betternether.cincinnasite_button": "Cincinnasite Button", + "block.betternether.cincinnasite_carved": "Cincinnasite Carved", + "block.betternether.cincinnasite_forge": "Cincinnasite Forge", + "block.betternether.cincinnasite_forged": "Forged Cincinnasite Block", + "block.betternether.cincinnasite_frame": "Cincinnasite Frame", + "block.betternether.cincinnasite_lantern": "Cincinnasite Lantern", + "block.betternether.cincinnasite_ore": "Cincinnasite Ore", + "block.betternether.cincinnasite_pedestal": "Cincinnasite Pedestal", + "block.betternether.cincinnasite_pillar": "Cincinnasite Pillar", + "block.betternether.cincinnasite_plate": "Cincinnasite Plate", + "block.betternether.cincinnasite_pot": "Cincinnasite Pot", + "block.betternether.cincinnasite_slab": "Cincinnasite Slab", + "block.betternether.cincinnasite_stairs": "Cincinnasite Stairs", + "block.betternether.cincinnasite_tile_large": "Large Cincinnasite Tile", + "block.betternether.cincinnasite_tile_small": "Small Cincinnasite Tile", + "block.betternether.cincinnasite_wall": "Cincinnasite Wall", + + "block.betternether.egg_plant": "Aubergine", + + "block.betternether.eye_seed": "Graine d'oeil", + + "block.betternether.farmland": "Terre labourée", + + "block.betternether.gray_mold": "Moisissure grise", + + "block.betternether.ink_bush": "Buisson d'encre", + "block.betternether.ink_bush_seed": "Graines de buisson d'encre", + + "block.betternether.lucis_spore": "Spore Lucis", + + "block.betternether.magma_flower": "Graine de fleur de magma", + + "block.betternether.nether_brick_tile_large": "Large Nether Brick Tile", + "block.betternether.nether_brick_tile_slab": "Small Nether Brick Tile Slab", + "block.betternether.nether_brick_tile_small": "Small Nether Brick Tile", + "block.betternether.nether_brick_tile_stairs": "Small Nether Brick Tile Stairs", + "block.betternether.nether_brick_wall": "Nether Brick Wall", + "block.betternether.nether_cactus": "Nether Cactus", + "block.betternether.nether_grass": "Nether Grass", + "block.betternether.nether_mycelium": "Nether Mycelium", + "block.betternether.nether_reed": "Nether Reed", + "block.betternether.netherrack_furnace": "Netherrack Furnace", + "block.betternether.blackstone_furnace": "Blackstone Furnace", + "block.betternether.basalt_furnace": "Basalt Furnace", + "block.betternether.netherrack_moss": "Mousse du Nether", + + "block.betternether.orange_mushroom": "Champignon orange", + + "block.betternether.pig_statue_respawner": "Statue de réapparition", + + "block.betternether.potted_plant": "Plante en pot", + + "block.betternether.quartz_glass": "Quartz Glass", + "block.betternether.quartz_glass_framed": "Framed Quartz Glass", + "block.betternether.quartz_glass_framed_pane": "Framed Quartz Glass Pane", + "block.betternether.quartz_glass_pane": "Quartz Glass Pane", + "block.betternether.quartz_glass_black": "Quartz Glass Black", + "block.betternether.quartz_glass_blue": "Quartz Glass Blue", + "block.betternether.quartz_glass_brown": "Quartz Glass Brown", + "block.betternether.quartz_glass_cyan": "Quartz Glass Cyan", + "block.betternether.quartz_glass_gray": "Quartz Glass Gray", + "block.betternether.quartz_glass_green": "Quartz Glass Green", + "block.betternether.quartz_glass_light_blue": "Quartz Glass Light Blue", + "block.betternether.quartz_glass_lime": "Quartz Glass Lime", + "block.betternether.quartz_glass_magenta": "Quartz Glass Magenta", + "block.betternether.quartz_glass_orange": "Quartz Glass Orange", + "block.betternether.quartz_glass_pink": "Quartz Glass Pink", + "block.betternether.quartz_glass_purple": "Quartz Glass Purple", + "block.betternether.quartz_glass_red": "Quartz Glass Red", + "block.betternether.quartz_glass_light_gray": "Quartz Glass Light Gray", + "block.betternether.quartz_glass_white": "Quartz Glass White", + "block.betternether.quartz_glass_yellow": "Quartz Glass Yellow", + "block.betternether.quartz_glass_framed_black": "Framed Quartz Glass Black", + "block.betternether.quartz_glass_framed_blue": "Framed Quartz Glass Blue", + "block.betternether.quartz_glass_framed_brown": "Framed Quartz Glass Brown", + "block.betternether.quartz_glass_framed_cyan": "Framed Quartz Glass Cyan", + "block.betternether.quartz_glass_framed_gray": "Framed Quartz Glass Gray", + "block.betternether.quartz_glass_framed_green": "Framed Quartz Glass Green", + "block.betternether.quartz_glass_framed_light_blue": "Framed Quartz Glass Light Blue", + "block.betternether.quartz_glass_framed_lime": "Framed Quartz Glass Lime", + "block.betternether.quartz_glass_framed_magenta": "Framed Quartz Glass Magenta", + "block.betternether.quartz_glass_framed_orange": "Framed Quartz Glass Orange", + "block.betternether.quartz_glass_framed_pink": "Framed Quartz Glass Pink", + "block.betternether.quartz_glass_framed_purple": "Framed Quartz Glass Purple", + "block.betternether.quartz_glass_framed_red": "Framed Quartz Glass Red", + "block.betternether.quartz_glass_framed_light_gray": "Framed Quartz Glass Light Gray", + "block.betternether.quartz_glass_framed_white": "Framed Quartz Glass White", + "block.betternether.quartz_glass_framed_yellow": "Framed Quartz Glass Yellow", + + "block.betternether.red_mold": "Moisissure rouge", + + "block.betternether.reeds_block": "Reeds Block", + "block.betternether.reeds_button": "Reeds Button", + "block.betternether.reeds_fence": "Reeds Fence", + "block.betternether.reeds_gate": "Reeds Gate", + "block.betternether.reeds_ladder": "Reeds Ladder", + "block.betternether.reeds_plate": "Reeds Pressure Plate", + "block.betternether.reeds_slab": "Reeds Slab", + "block.betternether.reeds_stairs": "Reeds Stairs", + "block.betternether.reeds_door": "Reeds Door", + "block.betternether.reeds_trapdoor": "Reeds Trapdoor", + + "block.betternether.smoker": "Fumoir", + + "block.betternether.stalagnate": "Stalagnate", + "block.betternether.stalagnate_stem": "Stalagnate Stem", + "block.betternether.stalagnate_log": "Stalagnate Log", + "block.betternether.stalagnate_bark": "Stalagnate Wood", + "block.betternether.stalagnate_bowl_placed": "Stalagnate Bowl", + "block.betternether.stalagnate_planks": "Stalagnate Planks", + "block.betternether.stalagnate_planks_button": "Stalagnate Button", + "block.betternether.stalagnate_planks_fence": "Stalagnate Fence", + "block.betternether.stalagnate_planks_gate": "Stalagnate Gate", + "block.betternether.stalagnate_planks_plate": "Stalagnate Pressure Plate", + "block.betternether.stalagnate_planks_slab": "Stalagnate Slab", + "block.betternether.stalagnate_planks_stairs": "Stalagnate Stairs", + "block.betternether.stalagnate_planks_door": "Stalagnate Door", + "block.betternether.stalagnate_planks_trapdoor": "Stalagnate Trapdoor", + "block.betternether.stalagnate_seed": "Stalagnate Seed", + "block.betternether.wart_seed": "Wart Seed", + + "block.betternether.eye_vine": "Vigne oculaire", + "block.betternether.black_apple": "Buisson de pomme noire", + + "commands.findnethercity.usage.console": "No coordinates in input", + "commands.findnethercity.usage.coordinates": "Wrong coordinates", + "commands.findnethercity.usage": "Wrong usage, must be /findNetherCity or /findNetherCity x y z", + + "block.betternether.willow_branch": "Willow Branch", + "block.betternether.willow_leaves": "Willow Leaves", + "block.betternether.willow_trunk": "Willow Trunk", + "block.betternether.willow_log": "Willow Log", + "block.betternether.willow_bark": "Willow Wood", + "block.betternether.willow_sapling": "Willow Sapling", + + "block.betternether.swamp_grass": "Swamp Grass", + + "block.betternether.willow_planks": "Willow Planks", + "block.betternether.willow_stairs": "Willow Stairs", + "block.betternether.willow_slab": "Willow Slab", + "block.betternether.willow_fence": "Willow Fence", + "block.betternether.willow_gate": "Willow Gate", + "block.betternether.willow_button": "Willow Button", + "block.betternether.willow_plate": "Willow Pressure Plate", + "block.betternether.willow_trapdoor": "Willow Trapdoor", + "block.betternether.willow_door": "Willow Door", + + "block.betternether.wart_planks": "Wart Planks", + "block.betternether.wart_stairs": "Wart Stairs", + "block.betternether.wart_slab": "Wart Slab", + "block.betternether.wart_fence": "Wart Fence", + "block.betternether.wart_gate": "Wart Gate", + "block.betternether.wart_button": "Wart Button", + "block.betternether.wart_plate": "Wart Pressure Plate", + "block.betternether.wart_trapdoor": "Wart Trapdoor", + "block.betternether.wart_door": "Wart Door", + + "block.betternether.black_vine": "Black Vine", + "block.betternether.veined_sand": "Veined Sand", + "block.betternether.soul_vein": "Soul Vein", + "block.betternether.blooming_vine": "Blooming vine", + "block.betternether.golden_vine": "Golden Vine", + "block.betternether.geyser": "Geyser", + + "item.betternether.cincinnasite_shovel": "Cincinnasite Shovel", + "item.betternether.cincinnasite_shovel_diamond": "Cincinnasite-Diamond Shovel", + + "item.betternether.cincinnasite_helmet": "Cincinnasite Helmet", + "item.betternether.cincinnasite_chestplate": "Cincinnasite Chestplate", + "item.betternether.cincinnasite_leggings": "Cincinnasite Leggings", + "item.betternether.cincinnasite_boots": "Cincinnasite Boots", + "item.betternether.cincinnasite_sword": "Cincinnasite Sword", + "item.betternether.cincinnasite_sword_diamond": "Cincinnasite-Diamond Sword", + + "item.betternether.spawn_egg_firefly": "Firefly Spawn Egg", + "item.betternether.cincinnasite_ingot": "Cincinnasite Ingot", + + "block.betternether.mushroom_stem": "Mushroom Stem", + "block.betternether.mushroom_planks": "Mushroom Planks", + "block.betternether.mushroom_stairs": "Mushroom Stairs", + "block.betternether.mushroom_slab": "Mushroom Slab", + "block.betternether.mushroom_fence": "Mushroom Fence", + "block.betternether.mushroom_gate": "Mushroom Gate", + "block.betternether.mushroom_button": "Mushroom Button", + "block.betternether.mushroom_plate": "Mushroom Plate", + "block.betternether.mushroom_trapdoor": "Mushroom Trapdoor", + "block.betternether.mushroom_door": "Mushroom Door", + + "block.betternether.cincinnasite_lantern_small": "Small Cincinnasite Lantern", + + "block.betternether.quartz_glass_pane_white": "White Quartz Pane", + "block.betternether.quartz_glass_pane_orange": "Orange Quartz Pane", + "block.betternether.quartz_glass_pane_magenta": "Magenta Quartz Pane", + "block.betternether.quartz_glass_pane_light_blue": "Light Blue Quartz Pane", + "block.betternether.quartz_glass_pane_yellow": "Yellow Quartz Pane", + "block.betternether.quartz_glass_pane_lime": "Lime Quartz Pane", + "block.betternether.quartz_glass_pane_pink": "Pink Quartz Pane", + "block.betternether.quartz_glass_pane_gray": "Gray Quartz Pane", + "block.betternether.quartz_glass_pane_light_gray": "Light Gray Quartz Pane", + "block.betternether.quartz_glass_pane_cyan": "Cyan Quartz Pane", + "block.betternether.quartz_glass_pane_purple": "Purple Quartz Pane", + "block.betternether.quartz_glass_pane_blue": "Blue Quartz Pane", + "block.betternether.quartz_glass_pane_brown": "Brown Quartz Pane", + "block.betternether.quartz_glass_pane_green": "Green Quartz Pane", + "block.betternether.quartz_glass_pane_red": "Red Quartz Pane", + "block.betternether.quartz_glass_pane_black": "Black Quartz Pane", + + "block.betternether.quartz_glass_framed_pane_white": "White Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_orange": "Orange Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_magenta": "Magenta Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_light_blue": "Light Framed Blue Quartz Pane", + "block.betternether.quartz_glass_framed_pane_yellow": "Yellow Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_lime": "Lime Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_pink": "Pink Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_gray": "Gray Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_light_gray": "Light Gray Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_cyan": "Cyan Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_purple": "Purple Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_blue": "Blue Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_brown": "Brown Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_green": "Green Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_red": "Red Framed Quartz Pane", + "block.betternether.quartz_glass_framed_pane_black": "Black Framed Quartz Pane", + + "block.betternether.soul_lily": "Soul Lily", + "block.betternether.soul_lily_sapling": "Soul Lily Sapling", + "block.betternether.soul_grass": "Soul Grass", + + "block.betternether.wart_log": "Wart Log", + "block.betternether.wart_bark": "Wart Wood", + "block.betternether.wart_roots": "Wart Roots", + + "block.betternether.wall_moss": "Wall Moss", + "block.betternether.wall_mushroom_brown": "Wall Brown Mushroom", + "block.betternether.wall_mushroom_red": "Wall Red Mushroom", + + "block.betternether.roof_tile_reeds": "Reeds Roof Tile", + "block.betternether.roof_tile_reeds_stairs": "Reeds Roof Tile Stairs", + "block.betternether.roof_tile_reeds_slab": "Reeds Roof Tile Slab", + "block.betternether.roof_tile_stalagnate": "Stalagnate Roof Tile", + "block.betternether.roof_tile_stalagnate_stairs": "Stalagnate Roof Tile Stairs", + "block.betternether.roof_tile_stalagnate_slab": "Stalagnate Roof Tile Slab", + "block.betternether.roof_tile_nether_bricks": "Nether Bricks Roof Tile", + "block.betternether.roof_tile_nether_bricks_stairs": "Nether Bricks Roof Tile Stairs", + "block.betternether.roof_tile_nether_bricks_slab": "Nether Bricks Roof Tile Slab", + "block.betternether.roof_tile_cincinnasite": "Cincinnasite Roof Tile", + "block.betternether.roof_tile_cincinnasite_stairs": "Cincinnasite Roof Tile Stairs", + "block.betternether.roof_tile_cincinnasite_slab": "Cincinnasite Roof Tile Slab", + "block.betternether.roof_tile_willow": "Willow Roof Tile", + "block.betternether.roof_tile_willow_stairs": "Willow Roof Tile Stairs", + "block.betternether.roof_tile_willow_slab": "Willow Roof Tile Slab", + "block.betternether.roof_tile_wart": "Wart Roof Tile", + "block.betternether.roof_tile_wart_stairs": "Wart Roof Tile Stairs", + "block.betternether.roof_tile_wart_slab": "Wart Roof Tile Slab", + + "block.betternether.taburet_reeds": "Reeds Stool", + "block.betternether.taburet_stalagnate": "Stalagnate Stool", + "block.betternether.taburet_willow": "Willow Stool", + "block.betternether.taburet_wart": "Wart Stool", + "block.betternether.taburet_cincinnasite": "Cincinnasite Stool", + + "block.betternether.stalagnate_ladder": "Stalagnate Ladder", + "block.betternether.willow_ladder": "Willow Ladder", + "block.betternether.wart_ladder": "Wart Ladder", + + "block.betternether.chair_reeds": "Reeds Chair", + "block.betternether.chair_stalagnate": "Stalagnate Chair", + "block.betternether.chair_willow": "Willow Chair", + "block.betternether.chair_wart": "Wart Chair", + "block.betternether.chair_cincinnasite": "Cincinnasite Chair", + + "block.betternether.striped_log_stalagnate": "Striped Stalagnate Log", + "block.betternether.striped_log_willow": "Striped Willow Log", + "block.betternether.striped_log_wart": "Striped Wart Log", + + "block.betternether.striped_bark_stalagnate": "Striped Stalagnate Wood", + "block.betternether.striped_bark_willow": "Striped Willow Wood", + "block.betternether.striped_bark_wart": "Striped Wart Wood", + + "block.betternether.giant_mold": "Giant Mold", + "block.betternether.giant_mold_sapling": "Giant Mold Sapling", + + "block.betternether.bar_stool_reeds": "Reed Bar Stool", + "block.betternether.bar_stool_stalagnate": "Stalagnate Bar Stool", + "block.betternether.bar_stool_willow": "Willow Bar Stool", + "block.betternether.bar_stool_wart": "Wart Bar Stool", + "block.betternether.bar_stool_cincinnasite": "Cincinnasite Bar Stool", + + "biome.betternether.gravel_desert": "Gravel Desert", + "biome.betternether.nether_jungle": "Nether Jungle", + "biome.betternether.wart_forest": "Wart Forest", + "biome.betternether.nether_grasslands": "Nether Grasslands", + "biome.betternether.nether_mushroom_forest": "Nether Mushroom Forest", + "biome.betternether.nether_mushroom_forest_edge": "Nether Mushroom Forest Edge", + "biome.betternether.wart_forest_edge": "Wart Forest Edge", + "biome.betternether.sulfuric_bone_reef": "Sulfuric Bone Reef", + "biome.betternether.bone_reef": "Bone Reef", + "biome.betternether.poor_grasslands": "Poor Grasslands", + "biome.betternether.nether_swampland": "Nether Swampland", + "biome.betternether.nether_swampland_terraces": "Nether Swampland Terraces", + "biome.betternether.magma_land": "Magma Land", + "biome.betternether.soul_plain": "Soul Plain", + "biome.betternether.crimson_glowing_woods": "Crimson Glowing Woods", + "biome.betternether.old_warped_woods": "Old Warped Woods", + "biome.betternether.crimson_pinewood": "Crimson Pinewood", + "biome.betternether.old_fungiwoods": "Old Fungiwoods", + "biome.betternether.poor_nether_grasslands": "Poor Nether Grasslands", + "biome.betternether.upside_down_forest": "Upside Down Forest", + "biome.betternether.old_swampland": "Old Swampland", + + "block.betternether.mushroom_fir": "Mushroom Fir", + "block.betternether.mushroom_fir_sapling": "Mushroom Fir Sapling", + "block.betternether.mushroom_fir_stem": "Mushroom Fir Stem", + "block.betternether.mushroom_fir_log": "Mushroom Fir Log", + "block.betternether.mushroom_fir_wood": "Mushroom Fir Wood", + "block.betternether.striped_log_mushroom_fir": "Striped Mushroom Fir Log", + "block.betternether.striped_wood_mushroom_fir": "Striped Mushroom Fir Wood", + "block.betternether.mushroom_fir_planks": "Mushroom Fir Planks", + "block.betternether.mushroom_fir_stairs": "Mushroom Fir Stairs", + "block.betternether.mushroom_fir_slab": "Mushroom Fir Slab", + "block.betternether.mushroom_fir_fence": "Mushroom Fir Fence", + "block.betternether.mushroom_fir_gate": "Mushroom Fir Gate", + "block.betternether.mushroom_fir_button": "Mushroom Fir Button", + "block.betternether.mushroom_fir_plate": "Mushroom Fir Plate", + "block.betternether.mushroom_fir_trapdoor": "Mushroom Fir Trapdoor", + "block.betternether.mushroom_fir_door": "Mushroom Fir Door", + "block.betternether.mushroom_fir_ladder": "Mushroom Fir Ladder", + + "block.betternether.chair_mushroom_fir": "Mushroom Fir Chair", + "block.betternether.taburet_mushroom_fir": "Mushroom Fir Stool", + "block.betternether.bar_stool_mushroom_fir": "Mushroom Fir Bar Stool", + + "block.betternether.obsidian_bricks": "Obsidian Bricks", + "block.betternether.obsidian_bricks_stairs": "Obsidian Bricks Stairs", + "block.betternether.obsidian_bricks_slab": "Obsidian Bricks Slab", + "block.betternether.obsidian_tile": "Obsidian Tile", + "block.betternether.obsidian_tile_small": "Obsidian Small Tile", + "block.betternether.obsidian_tile_stairs": "Obsidian Tile Stairs", + "block.betternether.obsidian_tile_slab": "Obsidian Tile Slab", + "block.betternether.obsidian_glass": "Obsidian Glass", + "block.betternether.obsidian_glass_pane": "Obsidian Glass Pane", + "block.betternether.blue_obsidian": "Blue Obsidian", + "block.betternether.blue_obsidian_bricks": "Blue Obsidian Bricks", + "block.betternether.blue_obsidian_bricks_stairs": "Blue Obsidian Bricks Stairs", + "block.betternether.blue_obsidian_bricks_slab": "Blue Obsidian Bricks Slab", + "block.betternether.blue_obsidian_tile": "Blue Obsidian Tile", + "block.betternether.blue_obsidian_tile_small": "Blue Obsidian Small Tile", + "block.betternether.blue_obsidian_tile_stairs": "Blue Obsidian Tile Stairs", + "block.betternether.blue_obsidian_tile_slab": "Blue Obsidian Tile Slab", + "block.betternether.blue_obsidian_glass": "Blue Obsidian Glass", + "block.betternether.blue_obsidian_glass_pane": "Blue Obsidian Glass Pane", + + "block.betternether.taburet_oak": "Oak Stool", + "block.betternether.chair_oak": "Oak Chair", + "block.betternether.bar_stool_oak": "Oak Bar Stool", + "block.betternether.taburet_spruce": "Spruce Stool", + "block.betternether.chair_spruce": "Spruce Chair", + "block.betternether.bar_stool_spruce": "Spruce Bar Stool", + "block.betternether.taburet_birch": "Birch Stool", + "block.betternether.chair_birch": "Birch Chair", + "block.betternether.bar_stool_birch": "Birch Bar Stool", + "block.betternether.taburet_jungle": "Jungle Stool", + "block.betternether.chair_jungle": "Jungle Chair", + "block.betternether.bar_stool_jungle": "Jungle Bar Stool", + "block.betternether.taburet_acacia": "Acacia Stool", + "block.betternether.chair_acacia": "Acacia Chair", + "block.betternether.bar_stool_acacia": "Acacia Bar Stool", + "block.betternether.taburet_dark_oak": "Dark Oak Stool", + "block.betternether.chair_dark_oak": "Dark Oak Chair", + "block.betternether.bar_stool_dark_oak": "Dark Oak Bar Stool", + + "item.betternether.cincinnasite_hammer": "Cincinnasite Hammer", + "item.betternether.cincinnasite_hammer_diamond": "Cincinnasite-Diamond Hammer", + + "block.betternether.nether_brewing_stand": "Nether Brewing Stand", + + "betternether.flat_nether": "Flat Nether", + + "item.betternether.spawn_egg_hydrogen_jellyfish": "Hydrogen Jellyfish Spawn Egg", + "block.betternether.brick_pot": "Brick Pot", + + "block.betternether.striped_log_rubeus": "Striped Rubeus Log", + "block.betternether.striped_bark_rubeus": "Striped Rubeus Bark", + "block.betternether.rubeus_cone": "Rubeus Cone", + "block.betternether.rubeus_sapling": "Rubeus Sapling", + "block.betternether.rubeus_log": "Rubeus Log", + "block.betternether.rubeus_bark": "Rubeus Bark", + "block.betternether.rubeus_leaves": "Rubeus Leaves", + "block.betternether.rubeus_planks": "Rubeus Planks", + "block.betternether.rubeus_stairs": "Rubeus Stairs", + "block.betternether.rubeus_slab": "Rubeus Slab", + "block.betternether.rubeus_fence": "Rubeus Fence", + "block.betternether.rubeus_gate": "Rubeus Gate", + "block.betternether.rubeus_button": "Rubeus Button", + "block.betternether.rubeus_plate": "Rubeus Pressure Plate", + "block.betternether.rubeus_trapdoor": "Rubeus Trapdoor", + "block.betternether.rubeus_door": "Rubeus Door", + "block.betternether.taburet_rubeus": "Rubeus Stool", + "block.betternether.chair_rubeus": "Rubeus Chair", + "block.betternether.bar_stool_rubeus": "Rubeus Bar Stool", + "block.betternether.rubeus_ladder": "Rubeus Ladder", + + "item.betternether.cincinnasite_shears": "Cincinnasite Shears", + "block.betternether.cincinnasite_anvil": "Cincinnasite Anvil", + + "block.betternether.jungle_grass": "Jungle Grass", + "block.betternether.jungle_plant": "Jungle Plant", + + "block.betternether.netherrack_stalactite": "Netherrack Stalactite", + "block.betternether.glowstone_stalactite": "Glowstone Stalactite", + "block.betternether.blackstone_stalactite": "Blackstone Stalactite", + "block.betternether.basalt_stalactite": "Basalt Stalactite", + + "block.betternether.nether_ruby_ore": "Nether Ruby Ore", + "block.betternether.nether_ruby_block": "Nether Ruby Block", + "block.betternether.nether_ruby_stairs": "Nether Ruby Stairs", + "block.betternether.nether_ruby_slab": "Nether Ruby Slab", + + "item.betternether.nether_ruby": "Nether Ruby", + "item.betternether.nether_ruby_pickaxe": "Nether Ruby Pickaxe", + "item.betternether.nether_ruby_axe": "Nether Ruby Axe", + "item.betternether.nether_ruby_shovel": "Nether Ruby Shovel", + "item.betternether.nether_ruby_sword": "Nether Ruby Sword", + "item.betternether.nether_ruby_helmet": "Nether Ruby Helmet", + "item.betternether.nether_ruby_chestplate": "Nether Ruby Chestplate", + "item.betternether.nether_ruby_leggings": "Nether Ruby Leggings", + "item.betternether.nether_ruby_boots": "Nether Ruby Boots", + + "block.betternether.soul_sandstone": "Soul Sandstone", + "block.betternether.soul_sandstone_cut": "Cut Soul Sandstone", + "block.betternether.soul_sandstone_smooth": "Smooth Soul Sandstone", + "block.betternether.soul_sandstone_chiseled": "Chiseled Soul Sandstone", + + "block.betternether.soul_sandstone_stairs": "Soul Sandstone Stairs", + "block.betternether.soul_sandstone_cut_stairs": "Cutted Soul Sandstone Stairs", + "block.betternether.soul_sandstone_smooth_stairs": "Smooth Soul Sandstone Stairs", + + "block.betternether.soul_sandstone_slab": "Soul Sandstone Slab", + "block.betternether.soul_sandstone_cut_slab": "Cutted Soul Sandstone Slab", + "block.betternether.soul_sandstone_smooth_slab": "Smooth Soul Sandstone Slab", + + "block.betternether.soul_sandstone_wall": "Soul Sandstone Wall", + + "block.betternether.basalt_bricks": "Basalt Bricks", + "block.betternether.basalt_bricks_stairs": "Basalt Bricks Stairs", + "block.betternether.basalt_bricks_slab": "Basalt Bricks Slab", + "block.betternether.basalt_bricks_wall": "Basalt Bricks Wall", + + "item.betternether.cincinnasite_hoe": "Cincinnasite Hoe", + "item.betternether.cincinnasite_hoe_diamond": "Cincinnasite-Diamond Hoe", + "item.betternether.nether_ruby_hoe": "Nether Ruby Hoe", + "item.betternether.nether_ruby_hammer": "Nether Ruby Hammer", + + "config.betternether.config": "Better Nether Config", + "config.betternether.mod_reload": "§b§lYou need to restart Minecraft to apply this changes!", + "config.betternether.rendering": "Render Options", + "config.betternether.blocks": "Registered Blocks", + "config.betternether.items": "Registered Items", + "config.betternether.biomes": "Biomes Options", + "config.betternether.subbiomes": "Sub-biomes Options", + "config.betternether.biomes_edges": "Biomes Edges Options", + "config.betternether.generator": "Generator Options", + "config.betternether.global_structures_density": "Global Foliage & Structures Density", + "config.betternether.structures_density": "Structures Density", + "config.betternether.cities_dist": "Distance Between Cities [in chunks]", + + "config.betternether.reset": "Reset", + "config.betternether.fog": "Fog Distance", + "config.betternether.lavafalls": "§b*§rLavafall Particles", + "config.betternether.armour": "§b*§rThin Armor", + + "block.betternether.crafting_table_crimson": "Crimson Crafting Table", + "block.betternether.crafting_table_warped": "Warped Crafting Table", + + "block.betternether.crafting_table_stalagnate": "Stalagnate Crafting Table", + "block.betternether.crafting_table_reed": "Reeds Crafting Table", + "block.betternether.crafting_table_willow": "Willow Crafting Table", + "block.betternether.crafting_table_wart": "Wart Crafting Table", + "block.betternether.crafting_table_rubeus": "Rubeus Crafting Table", + "block.betternether.crafting_table_mushroom": "Mushroom Crafting Table", + "block.betternether.crafting_table_mushroom_fir": "Mushroom Fir Crafting Table", + + "block.betternether.chest_stalagnate": "Stalagnate Chest", + "block.betternether.chest_reed": "Reeds Chest", + "block.betternether.chest_willow": "Willow Chest", + "block.betternether.chest_wart": "Wart Chest", + "block.betternether.chest_rubeus": "Rubeus Chest", + "block.betternether.chest_mushroom": "Mushroom Chest", + "block.betternether.chest_mushroom_fir": "Mushroom Fir Chest", + + "block.betternether.chest_crimson": "Crimson Chest", + "block.betternether.chest_warped": "Warped Chest", + + "block.betternether.jungle_moss": "Jungle Moss", + + "block.betternether.feather_fern": "Feather Fern", + + "block.betternether.sign_stalagnate": "Stalagnate Sign", + "block.betternether.sign_reed": "Reeds Sign", + "block.betternether.sign_willow": "Willow Sign", + "block.betternether.sign_wart": "Wart Sign", + "block.betternether.sign_rubeus": "Rubeus Sign", + "block.betternether.sign_mushroom": "Mushroom Sign", + "block.betternether.sign_mushroom_fir": "Mushroom Fir Sign", + + "block.betternether.barrel_stalagnate": "Stalagnate Barrel", + "block.betternether.barrel_reed": "Reeds Barrel", + "block.betternether.barrel_willow": "Willow Barrel", + "block.betternether.barrel_wart": "Wart Barrel", + "block.betternether.barrel_rubeus": "Rubeus Barrel", + "block.betternether.barrel_mushroom": "Mushroom Barrel", + "block.betternether.barrel_mushroom_fir": "Mushroom Fir Barrel", + + "block.betternether.barrel_crimson": "Crimson Barrel", + "block.betternether.barrel_warped": "Warped Barrel", + + "block.betternether.crimson_ladder": "Crimson Ladder", + "block.betternether.warped_ladder": "Warped Ladder", + "block.betternether.mushroom_ladder": "Mushroom Ladder", + + "block.betternether.taburet_crimson": "Crimson Taburet", + "block.betternether.taburet_warped": "Warped Taburet", + "block.betternether.taburet_mushroom": "Mushroom Taburet", + + "block.betternether.chair_crimson": "Crimson Chair", + "block.betternether.chair_warped": "Warped Chair", + "block.betternether.chair_mushroom": "Mushroom Chair", + + "block.betternether.bar_stool_crimson": "Crimson Bar Stool", + "block.betternether.bar_stool_warped": "Warped Bar Stool", + "block.betternether.bar_stool_mushroom": "Mushroom Bar Stool", + + "block.betternether.mushroom_grass": "Mushroom Grass", + "block.betternether.bone_grass": "Bone Grass", + "block.betternether.lumabus_seed": "Lumabus Seed", + "block.betternether.lumabus_vine": "Lumabus Vine", + "item.betternether.glowstone_pile": "Glowstone Pile", + "block.betternether.jellyfish_mushroom": "Jellyfish Mushroom", + "block.betternether.jellyfish_mushroom_sapling": "Jellyfish Mushroom Sapling", + "block.betternether.bone_stalactite": "Bone Stalactite", + "block.betternether.cincinnasite_chain": "Cincinnasite Chain", + "block.betternether.nether_lapis_ore": "Nether Lapis Ore", + "item.betternether.lapis_pile": "Lapis Pile", + "item.betternether.cincinnasite_excavator": "Cincinnasite Excavator", + "item.betternether.cincinnasite_excavator_diamond": "Cincinnasite-Diamond Excavator", + "item.betternether.nether_ruby_excavator": "Ruby Excavator", + + "block.betternether.sepia_mushroom_grass": "Sepian Mushroom Grass", + "block.betternether.sepia_bone_grass": "Sepian Bone Grass", + "block.betternether.golden_lumabus_seed": "Golden Lumabus Seed", + "block.betternether.golden_lumabus_vine": "Golden Lumabus Vine", + + "block.betternether.cincinnasite_fire_bowl": "Cincinnasite Fire Bowl", + "block.betternether.bricks_fire_bowl": "Bricks Fire Bowl", + "block.betternether.netherite_fire_bowl": "Netherite Fire Bowl", + "block.betternether.cincinnasite_fire_bowl_soul": "Soul Cincinnasite Fire Bowl", + "block.betternether.bricks_fire_bowl_soul": "Soul Bricks Fire Bowl", + "block.betternether.netherite_fire_bowl_soul": "Soul Netherite Fire Bowl", + + "block.betternether.swampland_grass": "Swampland Grass", + "block.betternether.basalt_slab": "Basalt Slab", + + "block.betternether.anchor_tree_bark": "Anchor Tree Bark", + "block.betternether.anchor_tree_button": "Anchor Tree Button", + "block.betternether.anchor_tree_door": "Anchor Tree Door", + "block.betternether.anchor_tree_fence": "Anchor Tree Fence", + "block.betternether.anchor_tree_gate": "Anchor Tree Gate", + "block.betternether.anchor_tree_ladder": "Anchor Tree Ladder", + "block.betternether.anchor_tree_log": "Anchor Tree Log", + "block.betternether.anchor_tree_planks": "Anchor Tree Planks", + "block.betternether.anchor_tree_plate": "Anchor Tree Pressure Plate", + "block.betternether.anchor_tree_slab": "Anchor Tree Slab", + "block.betternether.anchor_tree_stairs": "Anchor Tree Stairs", + "block.betternether.anchor_tree_trapdoor": "Anchor Tree Trapdoor", + "block.betternether.barrel_anchor_tree": "Anchor Tree Barrel", + "block.betternether.bar_stool_anchor_tree": "Anchor Tree Bar Stool", + "block.betternether.chair_anchor_tree": "Anchor Tree Chair", + "block.betternether.chest_anchor_tree": "Anchor Tree Chest", + "block.betternether.crafting_table_anchor_tree": "Anchor Tree Crafting Table", + "block.betternether.sign_anchor_tree": "Anchor Tree Sign", + "block.betternether.striped_bark_anchor_tree": "Anchor Tree Striped Bark", + "block.betternether.striped_log_anchor_tree": "Anchor Tree Striped Log", + "block.betternether.taburet_anchor_tree": "Anchor Tree Taburet", + + "block.betternether.anchor_tree_vine": "Anchor Tree Vine", + "block.betternether.anchor_tree_leaves": "Anchor Tree Leaves", + "block.betternether.anchor_tree_sapling": "Anchor Tree Sapling", + + "block.betternether.giant_lucis": "Giant Lucis", + "block.betternether.moss_cover": "Moss Cover", + + "block.betternether.nether_sakura_bark": "Nether Sakura Bark", + "block.betternether.nether_sakura_button": "Nether Sakura Button", + "block.betternether.nether_sakura_door": "Nether Sakura Door", + "block.betternether.nether_sakura_fence": "Nether Sakura Fence", + "block.betternether.nether_sakura_gate": "Nether Sakura Gate", + "block.betternether.nether_sakura_ladder": "Nether Sakura Ladder", + "block.betternether.nether_sakura_log": "Nether Sakura Log", + "block.betternether.nether_sakura_planks": "Nether Sakura Planks", + "block.betternether.nether_sakura_plate": "Nether Sakura Plate", + "block.betternether.nether_sakura_slab": "Nether Sakura Slab", + "block.betternether.nether_sakura_stairs": "Nether Sakura Stairs", + "block.betternether.nether_sakura_trapdoor": "Nether Sakura Trapdoor", + "block.betternether.barrel_nether_sakura": "Nether Sakura Barrel", + "block.betternether.bar_stool_nether_sakura": "Nether Sakura Bar Stool", + "block.betternether.chair_nether_sakura": "Nether Sakura Chair", + "block.betternether.chest_nether_sakura": "Nether Sakura Chest", + "block.betternether.crafting_table_nether_sakura": "Nether Sakura Crafting Table", + "block.betternether.sign_nether_sakura": "Nether Sakura Sign", + "block.betternether.striped_bark_nether_sakura": "Nether Sakura Striped Bark", + "block.betternether.striped_log_nether_sakura": "Nether Sakura Striped Log", + "block.betternether.taburet_nether_sakura": "Nether Sakura Taburet", + + "block.betternether.nether_sakura_leaves": "Nether Sakura Leaves", + "block.betternether.nether_sakura_sapling": "Nether Sakura Sapling", + + "block.betternether.ceiling_mushrooms": "Ceiling Mushrooms", + "block.betternether.neon_equisetum": "Neon Equisetum", + "block.betternether.hook_mushroom": "Hook Mushroom", + "item.betternether.hook_mushroom_cooked": "Cooked Hook Mushroom" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/lang/pl_pl.json b/src/main/resources/assets/betternether/lang/pl_pl.json new file mode 100644 index 0000000..8fd8e78 --- /dev/null +++ b/src/main/resources/assets/betternether/lang/pl_pl.json @@ -0,0 +1,327 @@ +{ + "container.forge": "Piec", + "container.chest_of_drawers": "Komoda", + + "entity.firefly": "Świetlik", + + "item.betternether.black_apple": "Czarne jabłko", + + "item.betternether.cincinnasite": "Cyncenazyt", + "item.betternether.cincinnasite_axe": "Cyncenazytowa siekiera", + "item.betternether.cincinnasite_axe_diamond": "Cyncenazytowo-diamentowa siekiera", + "item.betternether.cincinnasite_pickaxe": "Cyncenazytowy kilof", + "item.betternether.cincinnasite_pickaxe_diamond": "Cyncenazytowo-diamentowy kilof"", + + "item.betternether.stalagnate_bowl": "Stalagnatowa miska", + "item.betternether.stalagnate_bowl_apple": "Czarne jabłko", + "item.betternether.stalagnate_bowl_mushroom": "Potrawka grzybowa", + "item.betternether.stalagnate_bowl_wart": "Zupa brodawkowa", + + "itemGroup.betternether.items": "Better Nether", + + "message.spawn_help": "§c§lMusisz trzymać jasnopył, by móc ustawić punkt odradzania", + "message.spawn_set": "§2§lUstawiono punkt odradzania", + + "block.betternether.agave": "Agawa", + + "block.betternether.barrel_cactus": "Kaktus baryłkowy", + + "block.betternether.black_apple_seed": "Nasiona czarnego jabłka", + "block.betternether.black_bush": "Czarny krzak", + + "block.betternether.eyeball": "Blok gałki ocznej", + "block.betternether.eyeball_small": "Blok małej gałki ocznej", + + "block.betternether.bone_block": "Blok kości", + "block.betternether.bone_button": "Kościany przycisk", + "block.betternether.bone_cincinnasite_door": "Kościano-cyncenazytowe drzwi", + "block.betternether.bone_mushroom": "Zarodniki kościanych grzybów", + "block.betternether.bone_plate": "Kościana płyta naciskowa", + "block.betternether.bone_reed_door": "Kościano-trzcinowe drzwi", + "block.betternether.bone_slab": "Kościana płyta", + "block.betternether.bone_stairs": "Kościane schody", + "block.betternether.bone_tile": "Kościana kafelka", + "block.betternether.bone_wall": "Kościany murek", + + "block.betternether.chest_of_drawers": "Komoda", + + "block.betternether.cincinnasite_bars": "Cyncenazytowe kraty", + "block.betternether.cincinnasite_block": "Blok cyncenazytu", + "block.betternether.cincinnasite_brick_plate": "Płytki z cyncenazytowej cegły", + "block.betternether.cincinnasite_bricks": "Cyncenazytowe cegły", + "block.betternether.cincinnasite_bricks_pillar": "Kolumna z cyncenazytowej cegły", + "block.betternether.cincinnasite_button": "Cyncenazytowy przyciski", + "block.betternether.cincinnasite_carved": "Rzeźbiony cyncenazyt", + "block.betternether.cincinnasite_fire_bowl": "Cyncenazytowa czasza ogniowa", + "block.betternether.cincinnasite_forge": "Cyncenazytowy piec", + "block.betternether.cincinnasite_forged": "Forged Cincinnasite Block", + "block.betternether.cincinnasite_frame": "Cyncenazytowa ramka", + "block.betternether.cincinnasite_lantern": "Cyncenazytowa latarenka", + "block.betternether.cincinnasite_ore": "Ruda cyncenazytu", + "block.betternether.cincinnasite_pedestal": "Cyncenazytowy piedestał", + "block.betternether.cincinnasite_pillar": "Cyncenazytowy filar", + "block.betternether.cincinnasite_plate": "Cyncenazytowa płyta naciskowa", + "block.betternether.cincinnasite_pot": "Cyncenazytowa donica", + "block.betternether.cincinnasite_slab": "Cyncenazytowa płyta", + "block.betternether.cincinnasite_stairs": "Cyncenazytowe schody", + "block.betternether.cincinnasite_tile_large": "Duża cyncenazytowa kafelka", + "block.betternether.cincinnasite_tile_small": "Małe cyncenazytowe kafelki", + "block.betternether.cincinnasite_wall": "Cyncenazytowy murek", + + "block.betternether.egg_plant": "Bakłażan", + + "block.betternether.eye_seed": "Nasiona oka", + + "block.betternether.farmland": "Pole uprawne", + + "block.betternether.gray_mold": "Szara pleśń", + + "block.betternether.ink_bush": "Atramentowiec", + "block.betternether.ink_bush_seed": "Nasiona atramentowca", + + "block.betternether.lucis_spore": "Zarodnik śluzowca", + + "block.betternether.magma_flower": "Nasiona magmowca", + + "block.betternether.nether_brick_tile_large": "Duży kafelek netherowej cegły", + "block.betternether.nether_brick_tile_slab": "Płyta z małych kafelek netherowej cegły", + "block.betternether.nether_brick_tile_small": "Małe kafelki netherowej cegły", + "block.betternether.nether_brick_tile_stairs": "Schody z małych kafelek netherowej cegły", + "block.betternether.nether_brick_wall": "Netherowy ceglany murek", + "block.betternether.nether_cactus": "Netherowy kaktus", + "block.betternether.nether_grass": "Netherowa trawa", + "block.betternether.nether_mycelium": "Netherowa grzybnia", + "block.betternether.nether_reed": "Netherowa trzcina", + "block.betternether.netherrack_furnace": "Netherrackowy piec", + "block.betternether.netherrack_moss": "Zamszony netherrack", + + "block.betternether.orange_mushroom": "Pomarańczak", + + "block.betternether.pig_statue_respawner": "Posąg odradzający", + + "block.betternether.potted_plant": "Roślina w doniczce", + + "block.betternether.quartz_glass": "Kwarcowe szkło", + "block.betternether.quartz_glass_framed": "Zdobione kwarcowe szkło", + "block.betternether.quartz_glass_framed_pane": "Zdobiona kwarcowa szyba", + "block.betternether.quartz_glass_pane": "Kwarcowa szyba", + "block.betternether.quartz_glass_black": "Czarne kwarcowe szkło", + "block.betternether.quartz_glass_blue": "Niebieskie kwarcowe szkło", + "block.betternether.quartz_glass_brown": "Brązowe kwarcowe szkło", + "block.betternether.quartz_glass_cyan": "Błękitne kwarcowe szkło", + "block.betternether.quartz_glass_gray": "Szare kwarcowe szkło", + "block.betternether.quartz_glass_green": "Zielone kwarcowe szkło", + "block.betternether.quartz_glass_light_blue": "Jasnoniebieskie kwarcowe szkło", + "block.betternether.quartz_glass_lime": "Jasnozielone kwarcowe szkło", + "block.betternether.quartz_glass_magenta": "Karmazynowe kwarcowe szkło", + "block.betternether.quartz_glass_orange": "Pomarańczowe kwarcowe szkło", + "block.betternether.quartz_glass_pink": "Różowe kwarcowe szkło", + "block.betternether.quartz_glass_purple": "Fioletowe kwarcowe szkło", + "block.betternether.quartz_glass_red": "Czerwone kwarcowe szkło", + "block.betternether.quartz_glass_light_gray": "Jasnoszare kwarcowe szkło", + "block.betternether.quartz_glass_white": "Białe kwarcowe szkło", + "block.betternether.quartz_glass_yellow": "Żółte kwarcowe szkło", + "block.betternether.quartz_glass_framed_black": "Zdobione czarne kwarcowe szkło", + "block.betternether.quartz_glass_framed_blue": "Zdobione zielone kwarcowe szkło", + "block.betternether.quartz_glass_framed_brown": "Zdobione brązowe kwarcowe szkło", + "block.betternether.quartz_glass_framed_cyan": "Zdobione błękitne kwarcowe szkło", + "block.betternether.quartz_glass_framed_gray": "Zdobione szare kwarcowe szkło", + "block.betternether.quartz_glass_framed_green": "Zdobione zielone kwarcowe szkło", + "block.betternether.quartz_glass_framed_light_blue": "Zdobione jasnoniebieske kwarcowe szkło", + "block.betternether.quartz_glass_framed_lime": "Zdobione jasnozielone kwarcowe szkło", + "block.betternether.quartz_glass_framed_magenta": "Zdobione karmazynowe kwarcowe szkło", + "block.betternether.quartz_glass_framed_orange": "Zdobione pomarańczowe kwarcowe szkło", + "block.betternether.quartz_glass_framed_pink": "Zdobione różowe kwarcowe szkło", + "block.betternether.quartz_glass_framed_purple": "Zdobione fioletowe kwarcowe szkło", + "block.betternether.quartz_glass_framed_red": "Zdobione czerwone kwarcowe szkło", + "block.betternether.quartz_glass_framed_light_gray": "Zdobione jasnozielone kwarcowe szkło", + "block.betternether.quartz_glass_framed_white": "Zdobione białe kwarcowe szkło", + "block.betternether.quartz_glass_framed_yellow": "Zdobione żółte kwarcowe szkło", + + "block.betternether.red_mold": "Czerwona pleśń", + + "block.betternether.reeds_block": "Blok trzciny", + "block.betternether.reeds_button": "Trzcinowy przyciski", + "block.betternether.reeds_fence": "Trzcinowy płot", + "block.betternether.reeds_gate": "Trzcinowa furtka", + "block.betternether.reeds_ladder": "Trzcinowa drabina", + "block.betternether.reeds_plate": "Trzcinowa płyta naciskowa", + "block.betternether.reeds_slab": "Trzcinowa płyta", + "block.betternether.reeds_stairs": "Trzcinowe schody", + "block.betternether.reeds_door": "Trzcinowe drzwi", + "block.betternether.reeds_trapdoor": "Trzcinowa klapa", + + "block.betternether.smoker": "Garek wędzarniczy", + + "block.betternether.stalagnate": "Stalagnatowiec", + "block.betternether.stalagnate_stem": "Stalagnatowiec", + "block.betternether.stalagnate_bark": "Stalagnatowcowy pień", + "block.betternether.stalagnate_bark": "Stalagnatowcowe drewno", + "block.betternether.stalagnate_bowl_placed": "Stalagnatowcowa miska", + "block.betternether.stalagnate_planks": "Stalagnatowcowe deski", + "block.betternether.stalagnate_planks_button": "Stalagnatowcowy przycisk", + "block.betternether.stalagnate_planks_fence": "Stalagnatowcowy płot", + "block.betternether.stalagnate_planks_gate": "Stalagnatowcowa furtka", + "block.betternether.stalagnate_planks_plate": "Stalagnatowcowa płyta naciskowa", + "block.betternether.stalagnate_planks_slab": "Stalagnatowcowa płyta", + "block.betternether.stalagnate_planks_stairs": "Stalagnatowcowe schody", + "block.betternether.stalagnate_planks_door": "Stalagnatowcowe drzwi", + "block.betternether.stalagnate_planks_trapdoor": "Stalagnatowcowa klapa", + "block.betternether.stalagnate_seed": "Nasiona stalagnatowca", + "block.betternether.wart_seed": "Nasiona brodawki", + + "commands.findnethercity.usage.console": "Brak współrzędnych", + "commands.findnethercity.usage.coordinates": "Niewłaściwe współrzędne", + "commands.findnethercity.usage": "Nieprawidłowa liczba argumentów. Prawidłowe użycie: /findNetherCity lub /findNetherCity x y z", + + "block.betternether.willow_branch": "Gałęź wierzby", + "block.betternether.willow_leaves": "Wierzbowe liście", + "block.betternether.willow_trunk": "Pień wierzby", + "block.betternether.willow_log": "Wierzbowy pień", + "block.betternether.willow_bark": "Wierzbowe drewno", + "block.betternether.willow_sapling": "Sadzonka wierzby", + + "block.betternether.swamp_grass": "Bagienna trawa", + + "block.betternether.willow_planks": "Wierzbowe deski", + "block.betternether.willow_stairs": "Wierzbowe schody", + "block.betternether.willow_slab": "Wierzbowa płyta", + "block.betternether.willow_fence": "Wierzbowy płot", + "block.betternether.willow_gate": "Wierzbowa furtka", + "block.betternether.willow_button": "Wierzbowy przycisk", + "block.betternether.willow_plate": "Wierzbowa płyta naciskowa", + "block.betternether.willow_trapdoor": "Wierzbowa klapa", + "block.betternether.willow_door": "Wierzbowe drzwi", + + "block.betternether.wart_planks": "Brodawczane deski", + "block.betternether.wart_stairs": "Brodawczane schody", + "block.betternether.wart_slab": "Brodawczana płyta", + "block.betternether.wart_fence": "Brodawczany płot", + "block.betternether.wart_gate": "Brodawczana furtka", + "block.betternether.wart_button": "Brodawczany przycisk", + "block.betternether.wart_plate": "Brodawczana płyta naciskowa", + "block.betternether.wart_trapdoor": "Brodawczana klapa", + "block.betternether.wart_door": "Brodawczane drzwi", + + "block.betternether.black_vine": "Czarne pnącza", + "block.betternether.veined_sand": "Żylasty piasek", + "block.betternether.soul_vein": "Żyła dusz", + "block.betternether.blooming_vine": "Rozkwitające pnącza", + "block.betternether.golden_vine": "Złote pnącza", + "block.betternether.geyser": "Gejzer", + + "item.betternether.cincinnasite_shovel": "Cyncenazytowa łopata", + "item.betternether.cincinnasite_shovel_diamond": "Cyncenazytowo-diamentowa łopata", + + "item.betternether.cincinnasite_helmet": "Cyncenazytowy hełm", + "item.betternether.cincinnasite_chestplate": "Cyncenazytowy napierśnik", + "item.betternether.cincinnasite_leggings": "Cyncenazytowe nogawice", + "item.betternether.cincinnasite_boots": "Cyncenazytowe buty", + "item.betternether.cincinnasite_sword": "Cyncenazytowy miecz", + "item.betternether.cincinnasite_sword_diamond": "Cyncenazytowo-diamentowy miecz", + + "item.betternether.spawn_egg_firefly": "Jajo przywołujące świetlika", + "item.betternether.cincinnasite_ingot": "Sztabka cyncenazytu", + + "block.betternether.mushroom_stem": "Trzon grzyba", + "block.betternether.mushroom_planks": "Grzybowe deski", + "block.betternether.mushroom_stairs": "Grzybowe schody", + "block.betternether.mushroom_slab": "Grzybowa płyta", + "block.betternether.mushroom_fence": "Grzybowy płot", + "block.betternether.mushroom_gate": "Grzybowa furtka", + "block.betternether.mushroom_button": "Grzybowy przycisk", + "block.betternether.mushroom_plate": "Grzybowa płyta naciskowa", + "block.betternether.mushroom_trapdoor": "Grzybowa klapa", + "block.betternether.mushroom_door": "Grzybowe drzwi", + + "block.betternether.cincinnasite_lantern_small": "Mała cyncenazytowa latarenka", + + "block.betternether.quartz_glass_pane_white": "Biała kwarcowa szyba", + "block.betternether.quartz_glass_pane_orange": "Pomarańczowa kwarcowa szyba", + "block.betternether.quartz_glass_pane_magenta": "Karmazynowa kwarcowa szyba", + "block.betternether.quartz_glass_pane_light_blue": "Jasnoniebieska kwarcowa szyba", + "block.betternether.quartz_glass_pane_yellow": "Żółta kwarcowa szyba", + "block.betternether.quartz_glass_pane_lime": "Jasnozielona kwarcowa szyba", + "block.betternether.quartz_glass_pane_pink": "Różowa kwarcowa szyba", + "block.betternether.quartz_glass_pane_gray": "Szara kwarcowa szyba", + "block.betternether.quartz_glass_pane_light_gray": "Jasnoszara kwarcowa szyba", + "block.betternether.quartz_glass_pane_cyan": "Błękitna kwarcowa szyba", + "block.betternether.quartz_glass_pane_purple": "Fioletowa kwarcowa szyba", + "block.betternether.quartz_glass_pane_blue": "Niebieska kwarcowa szyba", + "block.betternether.quartz_glass_pane_brown": "Brązowa kwarcowa szyba", + "block.betternether.quartz_glass_pane_green": "Zielona kwarcowa szyba", + "block.betternether.quartz_glass_pane_red": "Czerwona kwarcowa szyba", + "block.betternether.quartz_glass_pane_black": "Czarna kwarcowa szyba", + + "block.betternether.quartz_glass_framed_pane_white": "Zdobiona kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_orange": "Zdobiona pomarańczowa kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_magenta": "Zdobiona karmazynowa kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_light_blue": "Zdobiona jasnoniebieska kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_yellow": "Zdobiona żółta kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_lime": "Zdobiona jasnozielona kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_pink": "Zdobiona różowa kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_gray": "Zdobiona szara kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_light_gray": "Zdobiona jasnoszara kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_cyan": "Zdobiona błękitna kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_purple": "Zdobiona fioletowa kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_blue": "Zdobiona niebieska kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_brown": "Zdobiona brązowa kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_green": "Zdobiona zielona kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_red": "Zdobiona czerwona kwarcowa szyba", + "block.betternether.quartz_glass_framed_pane_black": "Zdobiona czarna kwarcowa szyba", + + "block.betternether.soul_lily": "Eteryczna lilia", + "block.betternether.soul_lily_sapling": "Sadzonka eterycznej lilii", + "block.betternether.soul_grass": "Trawa dusz", + + "block.betternether.wart_log": "Brodawczany pień", + "block.betternether.wart_bark": "Brodawczane drewno", + "block.betternether.wart_roots": "Brodawczane korzenie", + + "block.betternether.wall_moss": "Ścienny mech", + "block.betternether.wall_mushroom_brown": "Ścienny borowik", + "block.betternether.wall_mushroom_red": "Ścienny muchomor", + + "block.betternether.roof_tile_reeds": "Trzcinowe dachówki", + "block.betternether.roof_tile_reeds_stairs": "Schody z trzcinowych dachówek", + "block.betternether.roof_tile_reeds_slab": "Płyta z trzcinowych dachówek", + "block.betternether.roof_tile_stalagnate": "Stalagnatowcowe dachówki", + "block.betternether.roof_tile_stalagnate_stairs": "Schody ze stalagnatowcowych dachówek", + "block.betternether.roof_tile_stalagnate_slab": "Płyta ze stalagnatowcowych dachówek", + "block.betternether.roof_tile_nether_bricks": "Netherowe ceglane dachówki", + "block.betternether.roof_tile_nether_bricks_stairs": "Schody z netherowych ceglanych dachówek", + "block.betternether.roof_tile_nether_bricks_slab": "Płyta z netherowych ceglanych dachówek", + "block.betternether.roof_tile_cincinnasite": "Cyncenazytowe dachówki", + "block.betternether.roof_tile_cincinnasite_stairs": "Schody z cyncenazytowych dachówek", + "block.betternether.roof_tile_cincinnasite_slab": "Płyta z cyncenazytowych dachówek", + "block.betternether.roof_tile_willow": "Wierzbowe dachówki", + "block.betternether.roof_tile_willow_stairs": "Schody z wierzbowych dachówek", + "block.betternether.roof_tile_willow_slab": "Płyta z wierzbowych dachówek", + "block.betternether.roof_tile_wart": "Brodawczane dachówki", + "block.betternether.roof_tile_wart_stairs": "Schody z brodawczanych dachówek", + "block.betternether.roof_tile_wart_slab": "Płyta z brodawczanych dachówek", + + "block.betternether.taburet_reeds": "Trzcinowy taboret", + "block.betternether.taburet_stalagnate": "Stalagnatowcoy taboret", + "block.betternether.taburet_willow": "Wierzbowy taboret", + "block.betternether.taburet_wart": "Brodawczanowy taboret", + "block.betternether.taburet_cincinnasite": "Cyncenazytowy taboret", + + "block.betternether.stalagnate_ladder": "Stalagnatowcowa drabina", + "block.betternether.willow_ladder": "Wierzbowa drabina", + "block.betternether.wart_ladder": "Brodawczanowa drabina", + + "block.betternether.chair_reeds": "Trzcinowe krzesło", + "block.betternether.chair_stalagnate": "Stalagnatowcowa drabina", + "block.betternether.chair_willow": "Wierzbowa drabina", + "block.betternether.chair_wart": "Brodawczanowa drabina", + "block.betternether.chair_cincinnasite": "Cyncenazytowa drabina", + + "block.betternether.striped_log_stalagnate": "Okorowany stalagnatowcowy pień", + "block.betternether.striped_log_willow": "Okorowany wierzbowy pień", + "block.betternether.striped_log_wart": "Ociosany brodawczanowy pień", + + "block.betternether.striped_bark_stalagnate": "Okorowane stalagnatowcowe drewno", + "block.betternether.striped_bark_willow": "Okorowane wierzbowe drewno", + "block.betternether.striped_bark_wart": "Ociosane brodawczane drewno" +} diff --git a/src/main/resources/assets/betternether/lang/ru_ru.json b/src/main/resources/assets/betternether/lang/ru_ru.json new file mode 100644 index 0000000..670655e --- /dev/null +++ b/src/main/resources/assets/betternether/lang/ru_ru.json @@ -0,0 +1,698 @@ +{ + "container.forge": "Печь", + "container.chest_of_drawers": "Комод", + + "entity.betternether.firefly": "Светлячёк", + "entity.betternether.hydrogen_jellyfish": "Водородная медуза", + "entity.betternether.naga_projectile": "Снаряд наги", + "entity.betternether.naga": "Нага", + "item.betternether.spawn_egg_naga": "Яйцо призыва наги", + "entity.betternether.flying_pig": "Летающая свинья", + "item.betternether.spawn_egg_flying_pig": "Яйцо призыва летающей свиньи", + "entity.betternether.jungle_skeleton": "Скелет джунглей", + "item.betternether.spawn_egg_jungle_skeleton": "Яйцо призыва скелета джунглей", + "entity.betternether.skull": "Череп", + "item.betternether.spawn_egg_skull": "Яйцо призыва черепа", + + "item.betternether.black_apple": "Чёрное яблоко", + + "item.betternether.cincinnasite": "Цинцинназит", + "item.betternether.cincinnasite_axe": "Цинцинназитовый топор", + "item.betternether.cincinnasite_axe_diamond": "Цинцинназитово-алмазный топор", + "item.betternether.cincinnasite_pickaxe": "Цинцинназитовая кирка", + "item.betternether.cincinnasite_pickaxe_diamond": "Цинцинназитово-алмазная кирка", + + "block.betternether.stalagnate_bowl": "Сталагнатовая миска", + "item.betternether.stalagnate_bowl": "Сталагнатовая миска", + "item.betternether.stalagnate_bowl_apple": "Mиска c чёрным яблоком", + "item.betternether.stalagnate_bowl_mushroom": "Грибной суп", + "item.betternether.stalagnate_bowl_wart": "Суп из наростов", + + "itemGroup.betternether.items": "Улучшенный Нижний Мир", + + "message.spawn_help": "§c§lВы должны держать§r %s §c§lдля установления точки возрождения", + "message.spawn_set": "§2§lВаша точка возрождения установлена здесь", + + "block.betternether.agave": "Семя агавы", + "item.betternether.agave_leaf": "Лист Агавы", + "item.betternether.agave_medicine": "Лекарство из агавы", + "item.betternether.herbal_medicine": "Лекарство из трав", + + "block.betternether.barrel_cactus": "Бочковидный кактус", + + "block.betternether.black_apple_seed": "Семя чёрного яблока", + "block.betternether.black_bush": "Чёрный куст", + + "block.betternether.red_large_mushroom": "Большой красный гриб", + "block.betternether.brown_large_mushroom": "Большой коричневый гриб", + "block.betternether.lucis_mushroom": "Гриб Люцис", + + "block.betternether.eyeball": "Блок глаза", + "block.betternether.eyeball_small": "Маленький блок глаза", + + "block.betternether.bone_block": "Костный блок", + "block.betternether.bone_button": "Костяная кнопка", + "block.betternether.bone_cincinnasite_door": "Костяно-цинцинназитовая дверь", + "block.betternether.bone_mushroom": "Споры костяного гриба", + "block.betternether.bone_plate": "Костяная нажимная плита", + "block.betternether.bone_reed_door": "Костяно-тростниковая дверь", + "block.betternether.bone_slab": "Костяная плита", + "block.betternether.bone_stairs": "Костяные ступени", + "block.betternether.bone_tile": "Костяная плитка", + "block.betternether.bone_wall": "Костяная стена", + + "block.betternether.chest_of_drawers": "Комод", + + "block.betternether.cincinnasite_bars": "Цинцинназитовая решётка", + "block.betternether.cincinnasite_block": "Цинцинназитовый блок", + "block.betternether.cincinnasite_brick_plate": "Цинцинназитовая кирпичная плита", + "block.betternether.cincinnasite_bricks": "Цинцинназитовые кирпичи", + "block.betternether.cincinnasite_bricks_pillar": "Колонна из цинцинназитового кирпича", + "block.betternether.cincinnasite_button": "Цинцинназитовая кнопка", + "block.betternether.cincinnasite_carved": "Резной цинцинназит", + "block.betternether.cincinnasite_forge": "Цинцинназитовая печь", + "block.betternether.cincinnasite_forged": "Сплавленный цинцинназитовый блок", + "block.betternether.cincinnasite_frame": "Цинцинназитовая рамка", + "block.betternether.cincinnasite_lantern": "Цинцинназитовый фонарь", + "block.betternether.cincinnasite_ore": "Цинцинназитовая руда", + "block.betternether.cincinnasite_pedestal": "Цинцинназитовый пьедестал", + "block.betternether.cincinnasite_pillar": "Цинцинназитовая колонна", + "block.betternether.cincinnasite_plate": "Цинцинназитовая нажимная плита", + "block.betternether.cincinnasite_pot": "Цинцинназитовый горшок", + "block.betternether.cincinnasite_slab": "Цинцинназитовая плита", + "block.betternether.cincinnasite_stairs": "Цинцинназитовые ступени", + "block.betternether.cincinnasite_tile_large": "Большая цинцинназитовая плитка", + "block.betternether.cincinnasite_tile_small": "Маленькая цинцинназитовая плитка", + "block.betternether.cincinnasite_wall": "Цинцинназитовая стена", + + "block.betternether.egg_plant": "Яйцевидное растение", + + "block.betternether.eye_seed": "Глазное семечко", + + "block.betternether.farmland": "Грядка", + + "block.betternether.gray_mold": "Серая плесень", + + "block.betternether.ink_bush": "Чернильный куст", + "block.betternether.ink_bush_seed": "Семя чернильного куста", + + "block.betternether.lucis_spore": "Спора люциса", + + "block.betternether.magma_flower": "Семя магмового цветка", + + "block.betternether.nether_brick_tile_large": "Большая плитка", + "block.betternether.nether_brick_tile_slab": "Плита из маленькой плитки", + "block.betternether.nether_brick_tile_small": "Маленькая плитка", + "block.betternether.nether_brick_tile_stairs": "Ступени из маленькой плитки", + "block.betternether.nether_brick_wall": "Стена из кирпича нижнего мира", + "block.betternether.nether_cactus": "Кактус нижнего мира", + "block.betternether.nether_grass": "Трава нижнего мира", + "block.betternether.nether_mycelium": "Мицелий нижнего мира", + "block.betternether.nether_reed": "Тростник нижнего мира", + "block.betternether.netherrack_furnace": "Печь из камня нижнего мира", + "block.betternether.blackstone_furnace": "Печь из чернита", + "block.betternether.basalt_furnace": "Печь из базальта", + "block.betternether.netherrack_moss": "Мох нижнего мира", + + "block.betternether.orange_mushroom": "Оранжевый гриб", + + "block.betternether.pig_statue_respawner": "Статуя возрождения", + + "block.betternether.potted_plant": "Растение в горшке", + + "block.betternether.quartz_glass": "Кварцевое стекло", + "block.betternether.quartz_glass_framed": "Кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_pane": "Панель из кварцевого стекла в рамке", + "block.betternether.quartz_glass_pane": "Панель из кварцевого стекла", + "block.betternether.quartz_glass_black": "Чёрное кварцевое стекло", + "block.betternether.quartz_glass_blue": "Синее кварцевое стекло", + "block.betternether.quartz_glass_brown": "Коричневое кварцевое стекло", + "block.betternether.quartz_glass_cyan": "Бирюзовое кварцевое стекло", + "block.betternether.quartz_glass_gray": "Серое кварцевое стекло", + "block.betternether.quartz_glass_green": "Зелёное кварцевое стекло", + "block.betternether.quartz_glass_light_blue": "Голубое кварцевое стекло", + "block.betternether.quartz_glass_lime": "Лаймовое кварцевое стекло", + "block.betternether.quartz_glass_magenta": "Фиолетовое кварцевое стекло", + "block.betternether.quartz_glass_orange": "Оранжевое кварцевое стекло", + "block.betternether.quartz_glass_pink": "Розовое кварцевое стекло", + "block.betternether.quartz_glass_purple": "Пурпурное кварцевое стекло", + "block.betternether.quartz_glass_red": "Красное кварцевое стекло", + "block.betternether.quartz_glass_light_gray": "Светло-серое кварцевое стекло", + "block.betternether.quartz_glass_white": "Белое кварцевое стекло", + "block.betternether.quartz_glass_yellow": "Жёлтое кварцевое стекло", + "block.betternether.quartz_glass_framed_black": "Чёрное кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_blue": "Синее кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_brown": "Коричневое кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_cyan": "Бирюзовое кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_gray": "Серое кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_green": "Зелёное кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_light_blue": "Голубое кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_lime": "Лаймовое кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_magenta": "Фиолетовое кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_orange": "Оранжевое кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_pink": "Розовое кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_purple": "Пурпурное кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_red": "Красное кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_light_gray": "Светло-серое кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_white": "Белое кварцевое стекло в рамке", + "block.betternether.quartz_glass_framed_yellow": "Жёлтое кварцевое стекло в рамке", + + "block.betternether.red_mold": "Красная плесень", + + "block.betternether.reeds_block": "Тростниковый блок", + "block.betternether.reeds_button": "Тростниковая кнопка", + "block.betternether.reeds_fence": "Тростниковый забор", + "block.betternether.reeds_gate": "Тростниковая калитка", + "block.betternether.reeds_ladder": "Тростниковая лестница", + "block.betternether.reeds_plate": "Тростниковая нажимная плита", + "block.betternether.reeds_slab": "Тростниковая плита", + "block.betternether.reeds_stairs": "Тростниковые ступени", + "block.betternether.reeds_door": "Тростниковая дверь", + "block.betternether.reeds_trapdoor": "Тростниковый люк", + + "block.betternether.smoker": "Курильщик", + + "block.betternether.stalagnate": "Сталагнат", + "block.betternether.stalagnate_stem": "Стебель сталагната", + "block.betternether.stalagnate_log": "Бревно сталагната", + "block.betternether.stalagnate_bark": "Древесина сталагната", + "block.betternether.stalagnate_bowl_placed": "Сталагнатовая миска", + "block.betternether.stalagnate_planks": "Сталагнатовые доски", + "block.betternether.stalagnate_planks_button": "Сталагнатовая кнопка", + "block.betternether.stalagnate_planks_fence": "Сталагнатовый забор", + "block.betternether.stalagnate_planks_gate": "Сталагнатовая калитка", + "block.betternether.stalagnate_planks_plate": "Сталагнатовая нажимная плита", + "block.betternether.stalagnate_planks_slab": "Сталагнатовая плита", + "block.betternether.stalagnate_planks_stairs": "Сталагнатовые ступени", + "block.betternether.stalagnate_planks_door": "Сталагнатовая дверь", + "block.betternether.stalagnate_planks_trapdoor": "Сталагнатовый люк", + "block.betternether.stalagnate_seed": "Семя сталагната", + "block.betternether.wart_seed": "Семя нароста", + + "block.betternether.eye_vine": "Глазнвя лоза", + "block.betternether.black_apple": "Куст чёрного яблока", + + "commands.findnethercity.usage.console": "Не указаны координаты", + "commands.findnethercity.usage.coordinates": "Неверный формат координат", + "commands.findnethercity.usage": "Неверное число аргументов, допустимо /findNetherCity или /findNetherCity x y z", + + "block.betternether.willow_branch": "Ветки ивы", + "block.betternether.willow_leaves": "Листья ивы", + "block.betternether.willow_trunk": "Ствол ивы", + "block.betternether.willow_log": "Древесина ивы", + "block.betternether.willow_bark": "Ивовая Древесина", + "block.betternether.willow_sapling": "Саженец ивы", + + "block.betternether.swamp_grass": "Болотная трава", + + "block.betternether.willow_planks": "Ивовые доски", + "block.betternether.willow_stairs": "Ивовые ступени", + "block.betternether.willow_slab": "Ивовая плита", + "block.betternether.willow_fence": "Ивовый забор", + "block.betternether.willow_gate": "Ивовая калитка", + "block.betternether.willow_button": "Ивовая кнопка", + "block.betternether.willow_plate": "Ивовая нажимная плита", + "block.betternether.willow_trapdoor": "Ивовый люк", + "block.betternether.willow_door": "Ивовая дверь", + + "block.betternether.wart_planks": "Доски из нароста", + "block.betternether.wart_stairs": "Ступени из нароста", + "block.betternether.wart_slab": "Плита из нароста", + "block.betternether.wart_fence": "Забор из нароста", + "block.betternether.wart_gate": "Калитка из нароста", + "block.betternether.wart_button": "Кнопка из нароста", + "block.betternether.wart_plate": "Нажимная плита из нароста", + "block.betternether.wart_trapdoor": "Люк из нароста", + "block.betternether.wart_door": "Дверь из нароста", + + "block.betternether.black_vine": "Чёрная лоза", + "block.betternether.veined_sand": "Жилистый песок", + "block.betternether.soul_vein": "Жила души", + "block.betternether.blooming_vine": "Цветущая лоза", + "block.betternether.golden_vine": "Золотая лоза", + "block.betternether.geyser": "Гейзер", + + "item.betternether.cincinnasite_shovel": "Цинцинназитовая лопата", + "item.betternether.cincinnasite_shovel_diamond": "Цинцинназитово-алмазная лопата", + + "item.betternether.cincinnasite_helmet": "Цинцинназитовый шлем", + "item.betternether.cincinnasite_chestplate": "Цинцинназитовый нагрудник", + "item.betternether.cincinnasite_leggings": "Цинцинназитовые поножи", + "item.betternether.cincinnasite_boots": "Цинцинназитовые ботинки", + "item.betternether.cincinnasite_sword": "Цинцинназитовый меч", + "item.betternether.cincinnasite_sword_diamond": "Цинцинназитово-алмазный меч", + + "item.betternether.spawn_egg_firefly": "Яйцо призыва светлячка", + "item.betternether.cincinnasite_ingot": "Цинцинназитовый слиток", + + "block.betternether.mushroom_stem": "Грибной ствол", + "block.betternether.mushroom_planks": "Грибные доски", + "block.betternether.mushroom_stairs": "Грибные ступени", + "block.betternether.mushroom_slab": "Грибная плита", + "block.betternether.mushroom_fence": "Грибной забор", + "block.betternether.mushroom_gate": "Грибная калитка", + "block.betternether.mushroom_button": "Грибная кнопка", + "block.betternether.mushroom_plate": "Грибная нажимная плита", + "block.betternether.mushroom_trapdoor": "Грибной люк", + "block.betternether.mushroom_door": "Грибная дверь", + + "block.betternether.cincinnasite_lantern_small": "Маленький цинцинназитовый фонарь", + + "block.betternether.quartz_glass_pane_white": "Белая кварцевая панель", + "block.betternether.quartz_glass_pane_orange": "Оранжевая кварцевая панель", + "block.betternether.quartz_glass_pane_magenta": "Фиолетовая кварцевая панель", + "block.betternether.quartz_glass_pane_light_blue": "Голубая кварцевая панель", + "block.betternether.quartz_glass_pane_yellow": "Жёлтая кварцевая панель", + "block.betternether.quartz_glass_pane_lime": "Лаймовая кварцевая панель", + "block.betternether.quartz_glass_pane_pink": "Розовая кварцевая панель", + "block.betternether.quartz_glass_pane_gray": "Серая кварцевая панель", + "block.betternether.quartz_glass_pane_light_gray": "Светло-серая кварцевая панель", + "block.betternether.quartz_glass_pane_cyan": "Бирюзовая кварцевая панель", + "block.betternether.quartz_glass_pane_purple": "Пурпурная кварцевая панель", + "block.betternether.quartz_glass_pane_blue": "Синяя кварцевая панель", + "block.betternether.quartz_glass_pane_brown": "Коричневая кварцевая панель", + "block.betternether.quartz_glass_pane_green": "Зелёная кварцевая панель", + "block.betternether.quartz_glass_pane_red": "Красная кварцевая панель", + "block.betternether.quartz_glass_pane_black": "Чёрная кварцевая панель", + + "block.betternether.quartz_glass_framed_pane_white": "Белая кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_orange": "Оранжевая кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_magenta": "Фиолетовая кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_light_blue": "Голубая кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_yellow": "Жёлтая кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_lime": "Лаймовая кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_pink": "Розовая кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_gray": "Серая кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_light_gray": "Светло-серая кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_cyan": "Бирюзовая кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_purple": "Пурпурная кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_blue": "Синяя кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_brown": "Коричневая кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_green": "Зелёная кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_red": "Красная кварцевая панель в рамке", + "block.betternether.quartz_glass_framed_pane_black": "Чёрная кварцевая панель в рамке", + + "block.betternether.soul_lily": "Лилия души", + "block.betternether.soul_lily_sapling": "Саженец лилии души", + "block.betternether.soul_grass": "Трава души", + + "block.betternether.wart_log": "Бревно нароста", + "block.betternether.wart_bark": "Древесина нароста", + "block.betternether.wart_roots": "Корни нароста", + + "block.betternether.wall_moss": "Настенный мох", + "block.betternether.wall_mushroom_brown": "Настенный коричневый гриб", + "block.betternether.wall_mushroom_red": "Настенный красный гриб", + + "block.betternether.roof_tile_reeds": "Тростниковая черепица", + "block.betternether.roof_tile_reeds_stairs": "Ступени из тростниковой черепицы", + "block.betternether.roof_tile_reeds_slab": "Плита из тростниковой черепица", + "block.betternether.roof_tile_stalagnate": "Сталагнатовая черепица", + "block.betternether.roof_tile_stalagnate_stairs": "Ступени из сталагнатовой черепицы", + "block.betternether.roof_tile_stalagnate_slab": "Плита из сталагнатовой черепица", + "block.betternether.roof_tile_nether_bricks": "Кирпичная черепица", + "block.betternether.roof_tile_nether_bricks_stairs": "Ступени из кирпичной черепицы", + "block.betternether.roof_tile_nether_bricks_slab": "Плита из кирпичной черепица", + "block.betternether.roof_tile_cincinnasite": "Цинцинназитовая черепица", + "block.betternether.roof_tile_cincinnasite_stairs": "Ступени из цинцинназитовой черепицы", + "block.betternether.roof_tile_cincinnasite_slab": "Плита из цинцинназитовой черепица", + "block.betternether.roof_tile_willow": "Ивовая черепица", + "block.betternether.roof_tile_willow_stairs": "Ступени из ивовой черепицы", + "block.betternether.roof_tile_willow_slab": "Плита из ивовой черепица", + "block.betternether.roof_tile_wart": "Наростовая черепица", + "block.betternether.roof_tile_wart_stairs": "Ступени из наростовой черепицы", + "block.betternether.roof_tile_wart_slab": "Плита из наростовой черепица", + + "block.betternether.taburet_reeds": "Тростниковый табурет", + "block.betternether.taburet_stalagnate": "Сталагнатовый табурет", + "block.betternether.taburet_willow": "Ивовый табурет", + "block.betternether.taburet_wart": "Наростовый табурет", + "block.betternether.taburet_cincinnasite": "Цинцинназитовый табурет", + + "block.betternether.stalagnate_ladder": "Сталагнатовая лестница", + "block.betternether.willow_ladder": "Ивовая лестница", + "block.betternether.wart_ladder": "Наростовая лестница", + + "block.betternether.chair_reeds": "Тростниковый стул", + "block.betternether.chair_stalagnate": "Сталагнатовый стул", + "block.betternether.chair_willow": "Ивовый стул", + "block.betternether.chair_wart": "Наростовый стул", + "block.betternether.chair_cincinnasite": "Цинцинназитовый стул", + + "block.betternether.striped_log_stalagnate": "Обтёсанное бревно сталагната", + "block.betternether.striped_log_willow": "Обтёсанное бревно ивы", + "block.betternether.striped_log_wart": "Обтёсанное бревно нароста", + + "block.betternether.striped_bark_stalagnate": "Обтёсанная древесина сталагната", + "block.betternether.striped_bark_willow": "Обтёсанная древесина ивы", + "block.betternether.striped_bark_wart": "Обтёсанная древесина нароста", + + "block.betternether.giant_mold": "Гигантская плесень", + "block.betternether.giant_mold_sapling": "Саженец гигантской плесени", + + "block.betternether.bar_stool_reeds": "Тростниковый барный стул", + "block.betternether.bar_stool_stalagnate": "Сталагнатовый барный стул", + "block.betternether.bar_stool_willow": "Ивовый барный стул", + "block.betternether.bar_stool_wart": "Наростовый барный стул", + "block.betternether.bar_stool_cincinnasite": "Цинцинназитовый барный стул", + + "biome.betternether.gravel_desert": "Гравийная пустыня", + "biome.betternether.nether_jungle": "Адские джунгли", + "biome.betternether.wart_forest": "Лес наростов", + "biome.betternether.nether_grasslands": "Адские луга", + "biome.betternether.nether_mushroom_forest": "Адский грибной лес", + "biome.betternether.nether_mushroom_forest_edge": "Окраина адского грибного леса", + "biome.betternether.wart_forest_edge": "Ораина наростового леса", + "biome.betternether.bone_reef": "Костяной риф", + "biome.betternether.sulfuric_bone_reef": "Серный костяной риф", + "biome.betternether.poor_grasslands": "Обеднённые луга", + "biome.betternether.nether_swampland": "Адское болото", + "biome.betternether.nether_swampland_terraces": "Террасированное адское болото", + "biome.betternether.magma_land": "Магмовые земли", + "biome.betternether.soul_plain": "Равнины душ", + "biome.betternether.crimson_glowing_woods": "Светящийся багровый лес", + "biome.betternether.old_warped_woods": "Старый искажённый лес", + "biome.betternether.crimson_pinewood": "Багровый бор", + "biome.betternether.old_fungiwoods": "Старый грибной лес", + "biome.betternether.poor_nether_grasslands": "Обеднённые адские луга", + "biome.betternether.flooded_deltas": "Затопленные дельты", + "biome.betternether.upside_down_forest": "Перевёрнутый лес", + "biome.betternether.old_swampland": "Старое болото", + + "block.betternether.mushroom_fir": "Грибная ель", + "block.betternether.mushroom_fir_sapling": "Саженец грибной ели", + "block.betternether.mushroom_fir_stem": "Ствол грибной ели", + "block.betternether.mushroom_fir_log": "Бревно грибной ели", + "block.betternether.mushroom_fir_wood": "Древесина грибной ели", + "block.betternether.striped_log_mushroom_fir": "Обтёсанное бревно грибной ели", + "block.betternether.striped_wood_mushroom_fir": "Обтёсанная древесина грибной ели", + "block.betternether.mushroom_fir_planks": "Доски из грибной ели", + "block.betternether.mushroom_fir_stairs": "Ступени из грибной ели", + "block.betternether.mushroom_fir_slab": "Плита из грибной ели", + "block.betternether.mushroom_fir_fence": "Забор из грибной ели", + "block.betternether.mushroom_fir_gate": "Калитка из грибной ели", + "block.betternether.mushroom_fir_button": "Кнопка из грибной ели", + "block.betternether.mushroom_fir_plate": "Нажимная плита из грибной ели", + "block.betternether.mushroom_fir_trapdoor": "Люк из грибной ели", + "block.betternether.mushroom_fir_door": "Дверь из грибной ели", + "block.betternether.mushroom_fir_ladder": "Лестница из грибной ели", + + "block.betternether.chair_mushroom_fir": "Стул из грибной ели", + "block.betternether.taburet_mushroom_fir": "Табурет из грибной ели", + "block.betternether.bar_stool_mushroom_fir": "Барный стул из грибной ели", + + "block.betternether.obsidian_bricks": "Обсидиановые кирпичи", + "block.betternether.obsidian_bricks_stairs": "Ступени из обсидиановых кирпичей", + "block.betternether.obsidian_bricks_slab": "Плита из обсидиановых кирпичей", + "block.betternether.obsidian_tile": "Обсидиановая плитка", + "block.betternether.obsidian_tile_small": "Маленькая обсидиановая плитка", + "block.betternether.obsidian_tile_stairs": "Ступени из обсидиановой плитки", + "block.betternether.obsidian_tile_slab": "Плита из обсидиановой плитки", + "block.betternether.obsidian_glass": "Обсидиановое стекло", + "block.betternether.obsidian_glass_pane": "Панель из обсидианового стекла", + "block.betternether.blue_obsidian": "Синий обсидиан", + "block.betternether.blue_obsidian_bricks": "Синие обсидиановые кирпичи", + "block.betternether.blue_obsidian_bricks_stairs": "Ступени из синих обсидиановых кирпичей", + "block.betternether.blue_obsidian_bricks_slab": "Плита из синих обсидиановых кирпичей", + "block.betternether.blue_obsidian_tile": "Синяя обсидиановая плитка", + "block.betternether.blue_obsidian_tile_small": "Маленькая синяя обсидиановая плитка", + "block.betternether.blue_obsidian_tile_stairs": "Ступени из синей обсидиановой плитки", + "block.betternether.blue_obsidian_tile_slab": "Плита из синей обсидиановой плитки", + "block.betternether.blue_obsidian_glass": "Синее обсидиановое стекло", + "block.betternether.blue_obsidian_glass_pane": "Панель из синего обсидианового стекла", + + "block.betternether.taburet_oak": "Дубовый табурет", + "block.betternether.chair_oak": "Дубовый стул", + "block.betternether.bar_stool_oak": "Дубовый барный стул", + "block.betternether.taburet_spruce": "Еловый табурет", + "block.betternether.chair_spruce": "Еловый стул", + "block.betternether.bar_stool_spruce": "Еловый барный стул", + "block.betternether.taburet_birch": "Берёзовый табурет", + "block.betternether.chair_birch": "Берёзовый стул", + "block.betternether.bar_stool_birch": "Берёзовый барный стул", + "block.betternether.taburet_jungle": "Джунглевый табурет", + "block.betternether.chair_jungle": "Джунглевый стул", + "block.betternether.bar_stool_jungle": "Джунглевый барный стул", + "block.betternether.taburet_acacia": "Акациевый табурет", + "block.betternether.chair_acacia": "Акациевый стул", + "block.betternether.bar_stool_acacia": "Акациевый барный стул", + "block.betternether.taburet_dark_oak": "Табурет из тёмного дуба", + "block.betternether.chair_dark_oak": "Стул из тёмного дуба", + "block.betternether.bar_stool_dark_oak": "Барный стул из тёмного дуба", + + "item.betternether.cincinnasite_hammer": "Цинцинназитовый молот", + "item.betternether.cincinnasite_hammer_diamond": "Цинцинназитово-алмазный молот", + + "block.betternether.nether_brewing_stand": "Зельеварка нижнего мира", + + "betternether.flat_nether": "Плоский нижний мир", + + "item.betternether.spawn_egg_hydrogen_jellyfish": "Яйцо призыва водородной медузы", + "block.betternether.brick_pot": "Кирпичный горшок", + + "block.betternether.striped_log_rubeus": "Обтёсанное бревно рубейса", + "block.betternether.striped_bark_rubeus": "Обтёсанная древесина рубейса", + "block.betternether.rubeus_cone": "Шишка рубейса", + "block.betternether.rubeus_sapling": "Саженец рубейса", + "block.betternether.rubeus_log": "Бревно рубейса", + "block.betternether.rubeus_bark": "Древесина рубейса", + "block.betternether.rubeus_leaves": "Листья рубейса", + "block.betternether.rubeus_planks": "Рубейсовые доски", + "block.betternether.rubeus_stairs": "Рубейсовые ступени", + "block.betternether.rubeus_slab": "Рубейсовая плита", + "block.betternether.rubeus_fence": "Рубейсовый забор", + "block.betternether.rubeus_gate": "Рубейсовая калитка", + "block.betternether.rubeus_button": "Рубейсовая кнопка", + "block.betternether.rubeus_plate": "Рубейсовая нажимная плита", + "block.betternether.rubeus_trapdoor": "Рубейсовый люк", + "block.betternether.rubeus_door": "Рубейсовая дверь", + "block.betternether.taburet_rubeus": "Рубейсовый табурет", + "block.betternether.chair_rubeus": "Рубейсовый стул", + "block.betternether.bar_stool_rubeus": "Рубейсовый барный стул", + "block.betternether.rubeus_ladder": "Рубейсовая лестница", + + "item.betternether.cincinnasite_shears": "Цинцинназитовые ножницы", + "block.betternether.cincinnasite_anvil": "Цинцинназитовая наковальня", + + "block.betternether.jungle_grass": "Трава джунглей", + "block.betternether.jungle_plant": "Растение джунглей", + + "block.betternether.netherrack_stalactite": "Незеритовый сталактит", + "block.betternether.glowstone_stalactite": "Светокаменный сталактит", + "block.betternether.blackstone_stalactite": "Чернитовый сталактит", + "block.betternether.basalt_stalactite": "Базальтовый сталактит", + + "block.betternether.nether_ruby_ore": "Руда рубина нижнего мира", + "block.betternether.nether_ruby_block": "Блок рубина нижнего мира", + "block.betternether.nether_ruby_stairs": "Ступени из рубина нижнего мира", + "block.betternether.nether_ruby_slab": "Плита из рубина нижнего мира", + + "item.betternether.nether_ruby": "Рубин нижнего мира", + "item.betternether.nether_ruby_pickaxe": "Рубиновая кирка", + "item.betternether.nether_ruby_axe": "Рубиновый топор", + "item.betternether.nether_ruby_shovel": "Рубиновая лопата", + "item.betternether.nether_ruby_sword": "Рубиновый меч", + "item.betternether.nether_ruby_helmet": "Рубиновый шлем", + "item.betternether.nether_ruby_chestplate": "Рубиновый нагрудник", + "item.betternether.nether_ruby_leggings": "Рубиновые поножи", + "item.betternether.nether_ruby_boots": "Рубиновые ботинки", + + "block.betternether.soul_sandstone": "Песчаник душ", + "block.betternether.soul_sandstone_cut": "Обработанный песчаник душ", + "block.betternether.soul_sandstone_smooth": "Гладкий песчаник душ", + "block.betternether.soul_sandstone_chiseled": "Резной песчаник душ", + + "block.betternether.soul_sandstone_stairs": "Ступени из песчаника душ", + "block.betternether.soul_sandstone_cut_stairs": "Ступени из обработанного песчаника душ", + "block.betternether.soul_sandstone_smooth_stairs": "Ступени из гладкого песчаника душ", + + "block.betternether.soul_sandstone_slab": "Плита из песчаника душ", + "block.betternether.soul_sandstone_cut_slab": "Плита из обработанного песчаника душ", + "block.betternether.soul_sandstone_smooth_slab": "Плита из гладкого песчаника душ", + + "block.betternether.soul_sandstone_wall": "Стена из песчаника душ", + + "block.betternether.basalt_bricks": "Базальтовые кирпичи", + "block.betternether.basalt_bricks_stairs": "Ступени из базальтовых кирпичей", + "block.betternether.basalt_bricks_slab": "Плита из базальтовых кирпичей", + "block.betternether.basalt_bricks_wall": "Стена из базальтовых кирпичей", + + "item.betternether.cincinnasite_hoe": "Цинцинназитовая мотыга", + "item.betternether.cincinnasite_hoe_diamond": "Цинцинназитово-алмазная мотыга", + "item.betternether.nether_ruby_hoe": "Мотыга из рубина нижнего мира", + "item.betternether.nether_ruby_hammer": "Молот из рубина нижнего мира", + + "config.betternether.config": "Настройки BetterNether", + "config.betternether.mod_reload": "§b§lВам необходимо перезапустить Minecraft после изменений!", + "config.betternether.rendering": "Настройки графики", + "config.betternether.blocks": "Регистрация блоков", + "config.betternether.items": "Регистрация предметов", + "config.betternether.biomes": "Настройки биомов", + "config.betternether.subbiomes": "Настройки подбиомов", + "config.betternether.biomes_edges": "Настройки пограничных биомов", + "config.betternether.generator": "Настройки генерации", + "config.betternether.global_structures_density": "Глобальная плотность растений и структур", + "config.betternether.structures_density": "Плотность структур", + "config.betternether.cities_dist": "Расстояние между городами [в чанках]", + + "config.betternether.reset": "Сбросить", + "config.betternether.fog": "Расстояние до тумана", + "config.betternether.lavafalls": "§b*§rЧастицы лавопадов", + "config.betternether.armour": "§b*§rТонкая броня", + + "block.betternether.crafting_table_crimson": "Багровый верстак", + "block.betternether.crafting_table_warped": "Искажённый верстак", + + "block.betternether.crafting_table_stalagnate": "Сталагнатовый верстак", + "block.betternether.crafting_table_reed": "Тростниковый верстак", + "block.betternether.crafting_table_willow": "Ивовый верстак", + "block.betternether.crafting_table_wart": "Верстак из нароста", + "block.betternether.crafting_table_rubeus": "Рубейсовый верстак", + "block.betternether.crafting_table_mushroom": "Грибной верстак", + "block.betternether.crafting_table_mushroom_fir": "Верстак из грибной ели", + + "block.betternether.chest_stalagnate": "Сталагнатовый сундук", + "block.betternether.chest_reed": "Тростниковый сундук", + "block.betternether.chest_willow": "Ивовый сундук", + "block.betternether.chest_wart": "Сундук из нароста", + "block.betternether.chest_rubeus": "Рубейсовый сундук", + "block.betternether.chest_mushroom": "Грибной сундук", + "block.betternether.chest_mushroom_fir": "Сундук из грибной ели", + + "block.betternether.chest_crimson": "Багровый сундук", + "block.betternether.chest_warped": "Искажённый сундук", + + "block.betternether.jungle_moss": "Мох джунглей", + + "block.betternether.feather_fern": "Перистый папоротник", + + "block.betternether.sign_stalagnate": "Сталагнатовая табличка", + "block.betternether.sign_reed": "Тростниковая табличка", + "block.betternether.sign_willow": "Ивовая табличка", + "block.betternether.sign_wart": "Табличка из нароста", + "block.betternether.sign_rubeus": "Рубейсовая табличка", + "block.betternether.sign_mushroom": "Грибная табличка", + "block.betternether.sign_mushroom_fir": "Табличка из грибной ели", + + "block.betternether.barrel_stalagnate": "Сталагнатовая бочка", + "block.betternether.barrel_reed": "Тростниковая бочка", + "block.betternether.barrel_willow": "Ивовая бочка", + "block.betternether.barrel_wart": "Бочка из нароста", + "block.betternether.barrel_rubeus": "Рубейсовая бочка", + "block.betternether.barrel_mushroom": "Грибная бочка", + "block.betternether.barrel_mushroom_fir": "бочка из грибной ели", + + "block.betternether.barrel_crimson": "Багровая бочка", + "block.betternether.barrel_warped": "Искажённая бочка", + + "block.betternether.crimson_ladder": "Багровая лестница", + "block.betternether.warped_ladder": "Искажённая лестница", + "block.betternether.mushroom_ladder": "Грибная лестница", + + "block.betternether.taburet_crimson": "Багровый табурет", + "block.betternether.taburet_warped": "Искажённый табурет", + "block.betternether.taburet_mushroom": "Грибной табурет", + + "block.betternether.chair_crimson": "Багровый стул", + "block.betternether.chair_warped": "Искажённый стул", + "block.betternether.chair_mushroom": "Грибной стул", + + "block.betternether.bar_stool_crimson": "Багровый барный стул", + "block.betternether.bar_stool_warped": "Искажённый барный стул", + "block.betternether.bar_stool_mushroom": "Грибной барный стул", + + "block.betternether.mushroom_grass": "Грибная трава", + "block.betternether.bone_grass": "Костяная трава", + "block.betternether.lumabus_seed": "Семя люмабуса", + "block.betternether.lumabus_vine": "Лоза люмабуса", + "item.betternether.glowstone_pile": "Щепотка глоустоуна", + "block.betternether.jellyfish_mushroom": "Медузовый гриб", + "block.betternether.jellyfish_mushroom_sapling": "Саженец медузового гриба", + "block.betternether.bone_stalactite": "Костяной сталактит", + "block.betternether.cincinnasite_chain": "Цинцинназитовая цепь", + "block.betternether.nether_lapis_ore": "Лазуритовая руда нижнего мира", + "item.betternether.lapis_pile": "Щепотка лазурита", + "item.betternether.cincinnasite_excavator": "Цинцинназитовый экскаватор", + "item.betternether.cincinnasite_excavator_diamond": "Цинцинназитово-алмазный экскаватор", + "item.betternether.nether_ruby_excavator": "Рубиновый экскаватор", + + "block.betternether.sepia_mushroom_grass": "Сепиевая грибная трава", + "block.betternether.sepia_bone_grass": "Сепиевая грибная трава", + "block.betternether.golden_lumabus_seed": "Золотое семя люмабуса", + "block.betternether.golden_lumabus_vine": "Золотая лоза люмабуса", + + "block.betternether.cincinnasite_fire_bowl": "Цинцинназитовая огненная чаша", + "block.betternether.bricks_fire_bowl": "Кирпичная огненная чаша", + "block.betternether.netherite_fire_bowl": "Незеритовая огненная чаша", + "block.betternether.cincinnasite_fire_bowl_soul": "Цинцинназитовая огненная чаша души", + "block.betternether.bricks_fire_bowl_soul": "Кирпичная огненная чаша души", + "block.betternether.netherite_fire_bowl_soul": "Незеритовая огненная чаша души", + + "block.betternether.swampland_grass": "Болотный дёрн", + "block.betternether.basalt_slab": "Базальтовая плита", + + "block.betternether.anchor_tree_bark": "Кора якорного дерева", + "block.betternether.anchor_tree_button": "Кнопка из якорного дерева", + "block.betternether.anchor_tree_door": "Дверь из якорного дерева", + "block.betternether.anchor_tree_fence": "Забор из якорного дерева", + "block.betternether.anchor_tree_gate": "Калитка из якорного дерева", + "block.betternether.anchor_tree_ladder": "Лестница из якорного дерева", + "block.betternether.anchor_tree_log": "Бревно якорного дерева", + "block.betternether.anchor_tree_planks": "Доски якорного дерева", + "block.betternether.anchor_tree_plate": "Нажимная плита из якорного дерева", + "block.betternether.anchor_tree_slab": "Плита из якорного дерева", + "block.betternether.anchor_tree_stairs": "Ступени из якорного дерева", + "block.betternether.anchor_tree_trapdoor": "Люк из якорного дерева", + "block.betternether.barrel_anchor_tree": "Бочка из якорного дерева", + "block.betternether.bar_stool_anchor_tree": "Барный стул из якорного дерева", + "block.betternether.chair_anchor_tree": "Стул из якорного дерева", + "block.betternether.chest_anchor_tree": "Сундук из якорного дерева", + "block.betternether.crafting_table_anchor_tree": "Верстак из якорного дерева", + "block.betternether.sign_anchor_tree": "Табличка из якорного дерева", + "block.betternether.striped_bark_anchor_tree": "Обтёсанная кора якорного дерева", + "block.betternether.striped_log_anchor_tree": "Обтёсанное бревно якорного дерева", + "block.betternether.taburet_anchor_tree": "Табурет из якорного дерева", + + "block.betternether.anchor_tree_vine": "Лозая якорного дерева", + "block.betternether.anchor_tree_leaves": "Листва якорного дерева", + "block.betternether.anchor_tree_sapling": "Саженец якорного дерева", + + "block.betternether.giant_lucis": "Гигантский Люцис", + "block.betternether.moss_cover": "Мховое покрытие", + + "block.betternether.nether_sakura_bark": "Кора сакуры нижнего мира", + "block.betternether.nether_sakura_button": "Кнопка из сакуры", + "block.betternether.nether_sakura_door": "Дверь из сакуры", + "block.betternether.nether_sakura_fence": "Забор из сакуры", + "block.betternether.nether_sakura_gate": "Калитка из сакуры", + "block.betternether.nether_sakura_ladder": "Лестница из сакуры", + "block.betternether.nether_sakura_log": "Бревно из сакуры", + "block.betternether.nether_sakura_planks": "Доски сакуры нижнего мира", + "block.betternether.nether_sakura_plate": "Нажимная плита из сакуры", + "block.betternether.nether_sakura_slab": "Плита из сакуры", + "block.betternether.nether_sakura_stairs": "Ступени из сакуры", + "block.betternether.nether_sakura_trapdoor": "Люк из сакуры", + "block.betternether.barrel_nether_sakura": "Бочка из сакуры", + "block.betternether.bar_stool_nether_sakura": "Барный стул из сакуры", + "block.betternether.chair_nether_sakura": "Стул из сакуры", + "block.betternether.chest_nether_sakura": "Сундук из сакуры", + "block.betternether.crafting_table_nether_sakura": "Верстак из сакуры", + "block.betternether.sign_nether_sakura": "Табличка из сакуры", + "block.betternether.striped_bark_nether_sakura": "Обтёсанная кора сакуры", + "block.betternether.striped_log_nether_sakura": "Обтёсанное бревно сакуры", + "block.betternether.taburet_nether_sakura": "Табурет из сакуры", + + "block.betternether.nether_sakura_leaves": "Листья сакуры нижнего мира", + "block.betternether.nether_sakura_sapling": "Саженец сакуры нижнего мира", + + "block.betternether.ceiling_mushrooms": "Потолочные грибы", + "block.betternether.neon_equisetum": "Неоновый хвощ", + "block.betternether.hook_mushroom": "Цепляющийся гриб", + "item.betternether.hook_mushroom_cooked": "Приготовленный цепляющийся гриб", + + "block.betternether.whispering_gourd_vine": "Семена шепчущей тыква", + "block.betternether.whispering_gourd": "Шепчущая тыква", + "block.betternether.whispering_gourd_lantern": "Фонарь из шепчущей тыквы", + + "block.betternether.willow_torch": "Ивовый факел" +} diff --git a/src/main/resources/assets/betternether/lang/zh_cn.json b/src/main/resources/assets/betternether/lang/zh_cn.json new file mode 100644 index 0000000..9d8c30a --- /dev/null +++ b/src/main/resources/assets/betternether/lang/zh_cn.json @@ -0,0 +1,697 @@ +{ + "container.forge": "锻造炉", + "container.chest_of_drawers": "抽屉柜", + + "entity.betternether.firefly": "萤火虫", + "entity.betternether.hydrogen_jellyfish": "氢气水母", + "entity.betternether.naga_projectile": "娜迦发射物", + "entity.betternether.naga": "娜迦", + "item.betternether.spawn_egg_naga": "娜迦刷怪蛋", + "entity.betternether.flying_pig": "蝠猪", + "item.betternether.spawn_egg_flying_pig": "蝠猪刷怪蛋", + "entity.betternether.jungle_skeleton": "丛林骷髅", + "item.betternether.spawn_egg_jungle_skeleton": "丛林骷髅刷怪蛋", + "entity.betternether.skull": "髑", + "item.betternether.spawn_egg_skull": "髑刷怪蛋", + + "item.betternether.black_apple": "黑苹果", + + "item.betternether.cincinnasite": "辛辛那金", + "item.betternether.cincinnasite_axe": "辛辛那金斧", + "item.betternether.cincinnasite_axe_diamond": "镶钻辛辛那金斧", + "item.betternether.cincinnasite_pickaxe": "辛辛那金镐", + "item.betternether.cincinnasite_pickaxe_diamond": "镶钻辛辛那金镐", + + "block.betternether.stalagnate_bowl": "石结木碗", + "item.betternether.stalagnate_bowl": "石结木碗", + "item.betternether.stalagnate_bowl_apple": "黑苹果煲", + "item.betternether.stalagnate_bowl_mushroom": "蘑菇煲", + "item.betternether.stalagnate_bowl_wart": "下界疣煲", + + "itemGroup.betternether.items": "更好的下界", + + "message.spawn_help": "§c§l你必须拿着§r %s §c§l才能在此设置出生点", + "message.spawn_set": "§2§l你的出生点已设置", + + "block.betternether.agave": "龙舌兰", + "item.betternether.agave_leaf": "龙舌兰蕨", + "item.betternether.agave_medicine": "龙舌兰药汤", + "item.betternether.herbal_medicine": "草药汤", + + "block.betternether.barrel_cactus": "桶状仙人掌", + + "block.betternether.black_apple_seed": "黑苹果幼苗", + "block.betternether.black_bush": "黑灌木丛", + + "block.betternether.red_large_mushroom": "红色巨型蘑菇", + "block.betternether.brown_large_mushroom": "棕色巨型蘑菇", + "block.betternether.lucis_mushroom": "灵芝", + + "block.betternether.eyeball": "眼球块", + "block.betternether.eyeball_small": "小眼球块", + + "block.betternether.bone_block": "骨质块", + "block.betternether.bone_button": "骨制按钮", + "block.betternether.bone_cincinnasite_door": "镶辛辛那金骨制门", + "block.betternether.bone_mushroom": "骨菇孢子", + "block.betternether.bone_plate": "骨制压力板", + "block.betternether.bone_reed_door": "嵌下界甘蔗骨制门", + "block.betternether.bone_slab": "骨质台阶", + "block.betternether.bone_stairs": "骨质楼梯", + "block.betternether.bone_tile": "骨质瓷砖", + "block.betternether.bone_wall": "骨质墙", + + "block.betternether.chest_of_drawers": "抽屉柜", + + "block.betternether.cincinnasite_bars": "辛辛那金围栏", + "block.betternether.cincinnasite_block": "辛辛那金块", + "block.betternether.cincinnasite_brick_plate": "辛辛那金砖压力板", + "block.betternether.cincinnasite_bricks": "辛辛那金砖", + "block.betternether.cincinnasite_bricks_pillar": "辛辛那金砖支柱", + "block.betternether.cincinnasite_button": "辛辛那金按钮", + "block.betternether.cincinnasite_carved": "辛辛那金涡纹块", + "block.betternether.cincinnasite_forge": "辛辛那金锻造炉", + "block.betternether.cincinnasite_forged": "辛辛那金块", + "block.betternether.cincinnasite_frame": "辛辛那金框架", + "block.betternether.cincinnasite_lantern": "辛辛那金萤石灯", + "block.betternether.cincinnasite_ore": "辛辛那金矿", + "block.betternether.cincinnasite_pedestal": "辛辛那金底座", + "block.betternether.cincinnasite_pillar": "辛辛那金支柱", + "block.betternether.cincinnasite_plate": "辛辛那金压力板", + "block.betternether.cincinnasite_pot": "辛辛那金花盆", + "block.betternether.cincinnasite_slab": "辛辛那金台阶", + "block.betternether.cincinnasite_stairs": "辛辛那金楼梯", + "block.betternether.cincinnasite_tile_large": "大辛辛那金瓷砖", + "block.betternether.cincinnasite_tile_small": "小辛辛那金瓷砖", + "block.betternether.cincinnasite_wall": "辛辛那金墙", + + "block.betternether.egg_plant": "臭蛋花", + + "block.betternether.eye_seed": "眼珠藤幼苗", + + "block.betternether.farmland": "灵魂土耕地", + + "block.betternether.gray_mold": "灰霉", + + "block.betternether.ink_bush": "墨丛", + "block.betternether.ink_bush_seed": "墨丛幼苗", + + "block.betternether.lucis_spore": "灵芝孢子", + + "block.betternether.magma_flower": "岩浆花幼苗", + + "block.betternether.nether_brick_tile_large": "大下界砖瓷砖", + "block.betternether.nether_brick_tile_slab": "小下界砖瓷砖台阶", + "block.betternether.nether_brick_tile_small": "小下界砖瓷砖", + "block.betternether.nether_brick_tile_stairs": "小下界砖瓷砖楼梯", + "block.betternether.nether_brick_wall": "下界砖墙", + "block.betternether.nether_cactus": "下界仙人掌", + "block.betternether.nether_grass": "下界草", + "block.betternether.nether_mycelium": "下界菌丝", + "block.betternether.nether_reed": "下界芦苇", + "block.betternether.netherrack_furnace": "下界岩熔炉", + "block.betternether.blackstone_furnace": "黑石熔炉", + "block.betternether.basalt_furnace": "玄武岩熔炉", + "block.betternether.netherrack_moss": "下界苔岩", + + "block.betternether.orange_mushroom": "橙菇", + + "block.betternether.pig_statue_respawner": "重生雕像", + + "block.betternether.potted_plant": "盆栽", + + "block.betternether.quartz_glass": "石英玻璃", + "block.betternether.quartz_glass_framed": "镶边石英玻璃", + "block.betternether.quartz_glass_framed_pane": "镶边石英玻璃板", + "block.betternether.quartz_glass_pane": "石英玻璃板", + "block.betternether.quartz_glass_black": "黑色石英玻璃", + "block.betternether.quartz_glass_blue": "蓝色石英玻璃", + "block.betternether.quartz_glass_brown": "棕色石英玻璃", + "block.betternether.quartz_glass_cyan": "青色石英玻璃", + "block.betternether.quartz_glass_gray": "灰色石英玻璃", + "block.betternether.quartz_glass_green": "绿色石英玻璃", + "block.betternether.quartz_glass_light_blue": "淡蓝色石英玻璃", + "block.betternether.quartz_glass_lime": "黄绿色石英玻璃", + "block.betternether.quartz_glass_magenta": "品红色石英玻璃", + "block.betternether.quartz_glass_orange": "橙色石英玻璃", + "block.betternether.quartz_glass_pink": "品粉红色石英玻璃", + "block.betternether.quartz_glass_purple": "紫色石英玻璃", + "block.betternether.quartz_glass_red": "红色石英玻璃", + "block.betternether.quartz_glass_light_gray": "淡灰色石英玻璃", + "block.betternether.quartz_glass_white": "白色石英玻璃", + "block.betternether.quartz_glass_yellow": "黄色石英玻璃", + "block.betternether.quartz_glass_framed_black": "黑色镶边石英玻璃", + "block.betternether.quartz_glass_framed_blue": "蓝色镶边石英玻璃", + "block.betternether.quartz_glass_framed_brown": "棕色镶边石英玻璃", + "block.betternether.quartz_glass_framed_cyan": "青色镶边石英玻璃", + "block.betternether.quartz_glass_framed_gray": "灰色镶边石英玻璃", + "block.betternether.quartz_glass_framed_green": "绿色镶边石英玻璃", + "block.betternether.quartz_glass_framed_light_blue": "淡蓝色镶边石英玻璃", + "block.betternether.quartz_glass_framed_lime": "黄绿色镶边石英玻璃", + "block.betternether.quartz_glass_framed_magenta": "品红色镶边石英玻璃", + "block.betternether.quartz_glass_framed_orange": "橙色镶边石英玻璃", + "block.betternether.quartz_glass_framed_pink": "品粉红色镶边石英玻璃", + "block.betternether.quartz_glass_framed_purple": "紫色镶边石英玻璃", + "block.betternether.quartz_glass_framed_red": "红色镶边石英玻璃", + "block.betternether.quartz_glass_framed_light_gray": "淡灰色镶边石英玻璃", + "block.betternether.quartz_glass_framed_white": "白色镶边石英玻璃", + "block.betternether.quartz_glass_framed_yellow": "黄色镶边石英玻璃", + + "block.betternether.red_mold": "红色霉菌", + + "block.betternether.reeds_block": "下界芦苇块", + "block.betternether.reeds_button": "下界芦苇按钮", + "block.betternether.reeds_fence": "下界芦苇木栅栏", + "block.betternether.reeds_gate": "下界芦苇木栅栏门", + "block.betternether.reeds_ladder": "下界芦苇木梯子", + "block.betternether.reeds_plate": "下界芦苇压力板", + "block.betternether.reeds_slab": "下界芦苇台阶", + "block.betternether.reeds_stairs": "下界芦苇楼梯", + "block.betternether.reeds_door": "下界芦苇木门", + "block.betternether.reeds_trapdoor": "下界芦苇活板门", + + "block.betternether.smoker": "烟菇", + + "block.betternether.stalagnate": "石结木", + "block.betternether.stalagnate_stem": "石结木柄", + "block.betternether.stalagnate_log": "石结木原木", + "block.betternether.stalagnate_bark": "石结木", + "block.betternether.stalagnate_bowl_placed": "石结木碗", + "block.betternether.stalagnate_planks": "石结木板", + "block.betternether.stalagnate_planks_button": "石结木按钮", + "block.betternether.stalagnate_planks_fence": "石结木栅栏", + "block.betternether.stalagnate_planks_gate": "石结木栅栏门", + "block.betternether.stalagnate_planks_plate": "石结木压力板", + "block.betternether.stalagnate_planks_slab": "石结木台阶", + "block.betternether.stalagnate_planks_stairs": "石结木楼梯", + "block.betternether.stalagnate_planks_door": "石结木门", + "block.betternether.stalagnate_planks_trapdoor": "石结木活板门", + "block.betternether.stalagnate_seed": "石结木幼苗", + "block.betternether.wart_seed": "下界疣幼苗", + + "block.betternether.eye_vine": "眼珠藤", + "block.betternether.black_apple": "黑苹果灌木丛", + + "commands.findnethercity.usage.console": "输入内容中没有坐标!", + "commands.findnethercity.usage.coordinates": "错误的坐标!", + "commands.findnethercity.usage": "错误的用法,必须是 /findNetherCity 或 /findNetherCity x y z", + + "block.betternether.willow_branch": "下界柳树树枝", + "block.betternether.willow_leaves": "下界柳树叶子", + "block.betternether.willow_trunk": "下界柳树树干", + "block.betternether.willow_log": "下界柳木原木", + "block.betternether.willow_bark": "下界柳木", + "block.betternether.willow_sapling": "下界柳木幼苗", + + "block.betternether.swamp_grass": "沼草", + + "block.betternether.willow_planks": "下界柳木板", + "block.betternether.willow_stairs": "下界柳木楼梯", + "block.betternether.willow_slab": "下界柳木台阶", + "block.betternether.willow_fence": "下界柳木栅栏", + "block.betternether.willow_gate": "下界柳木栅栏门", + "block.betternether.willow_button": "下界柳木按钮", + "block.betternether.willow_plate": "下界柳木压力板", + "block.betternether.willow_trapdoor": "下界柳木活板门", + "block.betternether.willow_door": "下界柳木门", + + "block.betternether.wart_planks": "下界疣木板", + "block.betternether.wart_stairs": "下界疣楼梯", + "block.betternether.wart_slab": "下界疣台阶", + "block.betternether.wart_fence": "下界疣木栅栏", + "block.betternether.wart_gate": "下界疣木栅栏门", + "block.betternether.wart_button": "下界疣按钮", + "block.betternether.wart_plate": "下界疣压力板", + "block.betternether.wart_trapdoor": "下界疣活板门", + "block.betternether.wart_door": "下界疣木门", + + "block.betternether.black_vine": "黑色藤", + "block.betternether.veined_sand": "脉状沙", + "block.betternether.soul_vein": "灵魂叶脉", + "block.betternether.blooming_vine": "花藤", + "block.betternether.golden_vine": "金藤", + "block.betternether.geyser": "间歇熔岩泉", + + "item.betternether.cincinnasite_shovel": "辛辛那金锹", + "item.betternether.cincinnasite_shovel_diamond": "镶钻辛辛那金锹", + + "item.betternether.cincinnasite_helmet": "辛辛那金头盔", + "item.betternether.cincinnasite_chestplate": "辛辛那金胸甲", + "item.betternether.cincinnasite_leggings": "辛辛那金护腿", + "item.betternether.cincinnasite_boots": "辛辛那金靴子", + "item.betternether.cincinnasite_sword": "辛辛那金剑", + "item.betternether.cincinnasite_sword_diamond": "镶钻辛辛那金剑", + + "item.betternether.spawn_egg_firefly": "萤火虫刷怪蛋", + "item.betternether.cincinnasite_ingot": "辛辛那金锭", + + "block.betternether.mushroom_stem": "蘑菇柄", + "block.betternether.mushroom_planks": "蘑菇木板", + "block.betternether.mushroom_stairs": "蘑菇楼梯", + "block.betternether.mushroom_slab": "蘑菇台阶", + "block.betternether.mushroom_fence": "蘑菇木栅栏", + "block.betternether.mushroom_gate": "蘑菇木栅栏门", + "block.betternether.mushroom_button": "蘑菇按钮", + "block.betternether.mushroom_plate": "蘑菇压力板", + "block.betternether.mushroom_trapdoor": "蘑菇活板门", + "block.betternether.mushroom_door": "蘑菇木门", + + "block.betternether.cincinnasite_lantern_small": "小辛辛那金灯", + + "block.betternether.quartz_glass_pane_white": "白色石英板", + "block.betternether.quartz_glass_pane_orange": "橙色石英板", + "block.betternether.quartz_glass_pane_magenta": "品红色石英板", + "block.betternether.quartz_glass_pane_light_blue": "淡蓝色石英板", + "block.betternether.quartz_glass_pane_yellow": "黄色石英板", + "block.betternether.quartz_glass_pane_lime": "黄绿色石英板", + "block.betternether.quartz_glass_pane_pink": "品粉红色石英板", + "block.betternether.quartz_glass_pane_gray": "灰色石英板", + "block.betternether.quartz_glass_pane_light_gray": "淡灰色石英板", + "block.betternether.quartz_glass_pane_cyan": "青色石英板", + "block.betternether.quartz_glass_pane_purple": "紫色石英板", + "block.betternether.quartz_glass_pane_blue": "蓝色石英板", + "block.betternether.quartz_glass_pane_brown": "棕色石英板", + "block.betternether.quartz_glass_pane_green": "绿色石英板", + "block.betternether.quartz_glass_pane_red": "红色石英板", + "block.betternether.quartz_glass_pane_black": "黑色石英板", + + "block.betternether.quartz_glass_framed_pane_white": "白色镶边石英板", + "block.betternether.quartz_glass_framed_pane_orange": "橙色镶边石英板", + "block.betternether.quartz_glass_framed_pane_magenta": "品红色镶边石英板", + "block.betternether.quartz_glass_framed_pane_light_blue": "淡镶边蓝色石英板", + "block.betternether.quartz_glass_framed_pane_yellow": "黄色镶边石英板", + "block.betternether.quartz_glass_framed_pane_lime": "黄绿色镶边石英板", + "block.betternether.quartz_glass_framed_pane_pink": "品粉红色镶边石英板", + "block.betternether.quartz_glass_framed_pane_gray": "灰色镶边石英板", + "block.betternether.quartz_glass_framed_pane_light_gray": "淡灰色镶边石英板", + "block.betternether.quartz_glass_framed_pane_cyan": "青色镶边石英板", + "block.betternether.quartz_glass_framed_pane_purple": "紫色镶边石英板", + "block.betternether.quartz_glass_framed_pane_blue": "蓝色镶边石英板", + "block.betternether.quartz_glass_framed_pane_brown": "棕色镶边石英板", + "block.betternether.quartz_glass_framed_pane_green": "绿色镶边石英板", + "block.betternether.quartz_glass_framed_pane_red": "红色镶边石英板", + "block.betternether.quartz_glass_framed_pane_black": "黑色镶边石英板", + + "block.betternether.soul_lily": "灵魂睡莲", + "block.betternether.soul_lily_sapling": "灵魂睡莲幼苗", + "block.betternether.soul_grass": "灵魂草", + + "block.betternether.wart_log": "下界疣原木", + "block.betternether.wart_bark": "下界疣块", + "block.betternether.wart_roots": "下界疣根", + + "block.betternether.wall_moss": "墙苔", + "block.betternether.wall_mushroom_brown": "墙棕色菇", + "block.betternether.wall_mushroom_red": "墙红色菇", + + "block.betternether.roof_tile_reeds": "下界芦苇屋面瓦", + "block.betternether.roof_tile_reeds_stairs": "下界芦苇屋面瓦楼梯", + "block.betternether.roof_tile_reeds_slab": "下界芦苇屋面瓦台阶", + "block.betternether.roof_tile_stalagnate": "石结木屋面瓦", + "block.betternether.roof_tile_stalagnate_stairs": "石结木屋面瓦楼梯", + "block.betternether.roof_tile_stalagnate_slab": "石结木屋面瓦台阶", + "block.betternether.roof_tile_nether_bricks": "下界砖屋面瓦", + "block.betternether.roof_tile_nether_bricks_stairs": "下界砖屋面瓦楼梯", + "block.betternether.roof_tile_nether_bricks_slab": "下界砖屋面瓦台阶", + "block.betternether.roof_tile_cincinnasite": "辛辛那金屋面瓦", + "block.betternether.roof_tile_cincinnasite_stairs": "辛辛那金屋面瓦楼梯", + "block.betternether.roof_tile_cincinnasite_slab": "辛辛那金屋面瓦台阶", + "block.betternether.roof_tile_willow": "下界柳木屋面瓦", + "block.betternether.roof_tile_willow_stairs": "下界柳木屋面瓦楼梯", + "block.betternether.roof_tile_willow_slab": "下界柳木屋面瓦台阶", + "block.betternether.roof_tile_wart": "下界疣屋面瓦", + "block.betternether.roof_tile_wart_stairs": "下界疣屋面瓦楼梯", + "block.betternether.roof_tile_wart_slab": "下界疣屋面瓦台阶", + + "block.betternether.taburet_reeds": "下界芦苇凳子", + "block.betternether.taburet_stalagnate": "石结木凳子", + "block.betternether.taburet_willow": "下界柳木凳子", + "block.betternether.taburet_wart": "下界疣凳子", + "block.betternether.taburet_cincinnasite": "辛辛那金凳子", + + "block.betternether.stalagnate_ladder": "石结木梯子", + "block.betternether.willow_ladder": "下界柳木梯子", + "block.betternether.wart_ladder": "下界疣木梯子", + + "block.betternether.chair_reeds": "下界芦苇椅子", + "block.betternether.chair_stalagnate": "石结木椅子", + "block.betternether.chair_willow": "下界柳木椅子", + "block.betternether.chair_wart": "下界疣椅子", + "block.betternether.chair_cincinnasite": "辛辛那金椅子", + + "block.betternether.striped_log_stalagnate": "去皮石结木原木", + "block.betternether.striped_log_willow": "去皮下界柳木原木", + "block.betternether.striped_log_wart": "去皮下界疣原木", + + "block.betternether.striped_bark_stalagnate": "去皮石结木", + "block.betternether.striped_bark_willow": "去皮下界柳木", + "block.betternether.striped_bark_wart": "去皮下界疣", + + "block.betternether.giant_mold": "巨霉菌", + "block.betternether.giant_mold_sapling": "巨霉菌幼苗", + + "block.betternether.bar_stool_reeds": "下界芦苇高脚凳", + "block.betternether.bar_stool_stalagnate": "石结木高脚凳", + "block.betternether.bar_stool_willow": "下界柳木高脚凳", + "block.betternether.bar_stool_wart": "下界疣高脚凳", + "block.betternether.bar_stool_cincinnasite": "辛辛那金高脚凳", + + "biome.betternether.gravel_desert": "砾石沙漠", + "biome.betternether.nether_jungle": "下界丛林", + "biome.betternether.wart_forest": "下界疣森林", + "biome.betternether.nether_grasslands": "下界草原", + "biome.betternether.nether_mushroom_forest": "下界蘑菇森林", + "biome.betternether.nether_mushroom_forest_edge": "下界蘑菇森林边缘", + "biome.betternether.wart_forest_edge": "下界疣森林边缘", + "biome.betternether.sulfuric_bone_reef": "硫酸骨礁", + "biome.betternether.bone_reef": "骨礁", + "biome.betternether.poor_grasslands": "贫瘠的草原", + "biome.betternether.nether_swampland": "下界沼泽", + "biome.betternether.nether_swampland_terraces": "下界沼泽梯田", + "biome.betternether.magma_land": "岩浆块岛", + "biome.betternether.soul_plain": "灵魂平原", + "biome.betternether.crimson_glowing_woods": "绯红木发光树林", + "biome.betternether.old_warped_woods": "古老的诡异树林", + "biome.betternether.crimson_pinewood": "绯红木藤树林", + "biome.betternether.old_fungiwoods": "古老的真菌林", + "biome.betternether.poor_nether_grasslands": "贫瘠的下界草原", + "biome.betternether.upside_down_forest": "倒转森林", + "biome.betternether.old_swampland": "古老的沼泽", + + "block.betternether.mushroom_fir": "下界冷杉菇木", + "block.betternether.mushroom_fir_sapling": "下界冷杉菇木幼苗", + "block.betternether.mushroom_fir_stem": "下界冷杉菇木柄", + "block.betternether.mushroom_fir_log": "下界冷杉菇木原木", + "block.betternether.mushroom_fir_wood": "下界冷杉菇木", + "block.betternether.striped_log_mushroom_fir": "去皮菇下界冷杉木原木", + "block.betternether.striped_wood_mushroom_fir": "去皮菇下界冷杉木", + "block.betternether.mushroom_fir_planks": "下界冷杉菇木板", + "block.betternether.mushroom_fir_stairs": "下界冷杉菇木楼梯", + "block.betternether.mushroom_fir_slab": "下界冷杉菇木台阶", + "block.betternether.mushroom_fir_fence": "下界冷杉菇木栅栏", + "block.betternether.mushroom_fir_gate": "下界冷杉菇木栅栏门", + "block.betternether.mushroom_fir_button": "下界冷杉菇木按钮", + "block.betternether.mushroom_fir_plate": "下界冷杉菇木压力板", + "block.betternether.mushroom_fir_trapdoor": "下界冷杉菇木活板门", + "block.betternether.mushroom_fir_door": "下界冷杉菇木门", + "block.betternether.mushroom_fir_ladder": "下界冷杉菇木梯子", + + "block.betternether.chair_mushroom_fir": "下界冷杉菇木椅子", + "block.betternether.taburet_mushroom_fir": "下界冷杉菇木凳子", + "block.betternether.bar_stool_mushroom_fir": "下界冷杉菇木高脚凳", + + "block.betternether.obsidian_bricks": "黑曜石砖", + "block.betternether.obsidian_bricks_stairs": "黑曜石砖楼梯", + "block.betternether.obsidian_bricks_slab": "黑曜石砖台阶", + "block.betternether.obsidian_tile": "黑曜石瓷砖", + "block.betternether.obsidian_tile_small": "黑曜石小瓷砖", + "block.betternether.obsidian_tile_stairs": "黑曜石瓷砖楼梯", + "block.betternether.obsidian_tile_slab": "黑曜石瓷砖台阶", + "block.betternether.obsidian_glass": "黑曜石玻璃", + "block.betternether.obsidian_glass_pane": "黑曜石玻璃板", + "block.betternether.blue_obsidian": "蓝色黑曜石", + "block.betternether.blue_obsidian_bricks": "蓝色黑曜石砖", + "block.betternether.blue_obsidian_bricks_stairs": "蓝色黑曜石砖楼梯", + "block.betternether.blue_obsidian_bricks_slab": "蓝色黑曜石砖台阶", + "block.betternether.blue_obsidian_tile": "蓝色黑曜石瓷砖", + "block.betternether.blue_obsidian_tile_small": "蓝色黑曜石小瓷砖", + "block.betternether.blue_obsidian_tile_stairs": "蓝色黑曜石瓷砖楼梯", + "block.betternether.blue_obsidian_tile_slab": "蓝色黑曜石瓷砖台阶", + "block.betternether.blue_obsidian_glass": "蓝色黑曜石玻璃", + "block.betternether.blue_obsidian_glass_pane": "蓝色黑曜石玻璃板", + + "block.betternether.taburet_oak": "橡木凳子", + "block.betternether.chair_oak": "橡木椅子", + "block.betternether.bar_stool_oak": "橡木高脚凳", + "block.betternether.taburet_spruce": "云杉木凳子", + "block.betternether.chair_spruce": "云杉木椅子", + "block.betternether.bar_stool_spruce": "云杉木高脚凳", + "block.betternether.taburet_birch": "白桦木凳子", + "block.betternether.chair_birch": "白桦木椅子", + "block.betternether.bar_stool_birch": "白桦木高脚凳", + "block.betternether.taburet_jungle": "下界丛林凳子", + "block.betternether.chair_jungle": "下界丛林椅子", + "block.betternether.bar_stool_jungle": "下界丛林高脚凳", + "block.betternether.taburet_acacia": "金合欢木凳子", + "block.betternether.chair_acacia": "金合欢木椅子", + "block.betternether.bar_stool_acacia": "金合欢木高脚凳", + "block.betternether.taburet_dark_oak": "深色橡木凳子", + "block.betternether.chair_dark_oak": "深色橡木椅子", + "block.betternether.bar_stool_dark_oak": "深色橡木高脚凳", + + "item.betternether.cincinnasite_hammer": "辛辛那金锤", + "item.betternether.cincinnasite_hammer_diamond": "镶钻辛辛那金锤", + + "block.betternether.nether_brewing_stand": "下界酿造台", + + "betternether.flat_nether": "平坦下界", + + "item.betternether.spawn_egg_hydrogen_jellyfish": "氢水母刷怪蛋", + "block.betternether.brick_pot": "砖花盆", + + "block.betternether.striped_log_rubeus": "去皮宝红木原木", + "block.betternether.striped_bark_rubeus": "去皮宝红木", + "block.betternether.rubeus_cone": "宝红木果", + "block.betternether.rubeus_sapling": "宝红木幼苗", + "block.betternether.rubeus_log": "宝红木原木", + "block.betternether.rubeus_bark": "宝红木", + "block.betternether.rubeus_leaves": "宝红木叶子", + "block.betternether.rubeus_planks": "宝红木板", + "block.betternether.rubeus_stairs": "宝红木楼梯", + "block.betternether.rubeus_slab": "宝红木台阶", + "block.betternether.rubeus_fence": "宝红木栅栏", + "block.betternether.rubeus_gate": "宝红木栅栏门", + "block.betternether.rubeus_button": "宝红木按钮", + "block.betternether.rubeus_plate": "宝红木压力板", + "block.betternether.rubeus_trapdoor": "宝红木活板门", + "block.betternether.rubeus_door": "宝红木门", + "block.betternether.taburet_rubeus": "宝红木凳子", + "block.betternether.chair_rubeus": "宝红木椅子", + "block.betternether.bar_stool_rubeus": "宝红木高脚凳", + "block.betternether.rubeus_ladder": "宝红木梯子", + + "item.betternether.cincinnasite_shears": "辛辛那金剪刀", + "block.betternether.cincinnasite_anvil": "辛辛那金砧", + + "block.betternether.jungle_grass": "下界丛林草方块", + "block.betternether.jungle_plant": "下界丛林草", + + "block.betternether.netherrack_stalactite": "下界岩钟乳石", + "block.betternether.glowstone_stalactite": "萤石钟乳石", + "block.betternether.blackstone_stalactite": "黑石钟乳石", + "block.betternether.basalt_stalactite": "玄武岩钟乳石", + + "block.betternether.nether_ruby_ore": "下界红宝石矿", + "block.betternether.nether_ruby_block": "下界红宝石块", + "block.betternether.nether_ruby_stairs": "下界红宝石楼梯", + "block.betternether.nether_ruby_slab": "下界红宝石台阶", + + "item.betternether.nether_ruby": "下界红宝石", + "item.betternether.nether_ruby_pickaxe": "下界红宝石镐", + "item.betternether.nether_ruby_axe": "下界红宝石斧", + "item.betternether.nether_ruby_shovel": "下界红宝石锹", + "item.betternether.nether_ruby_sword": "下界红宝石剑", + "item.betternether.nether_ruby_helmet": "下界红宝石头盔", + "item.betternether.nether_ruby_chestplate": "下界红宝石胸甲", + "item.betternether.nether_ruby_leggings": "下界红宝石护腿", + "item.betternether.nether_ruby_boots": "下界红宝石靴子", + + "block.betternether.soul_sandstone": "灵魂沙石头", + "block.betternether.soul_sandstone_cut": "切制灵魂沙石头", + "block.betternether.soul_sandstone_smooth": "平滑灵魂沙石头", + "block.betternether.soul_sandstone_chiseled": "錾制灵魂沙石头", + + "block.betternether.soul_sandstone_stairs": "灵魂沙石头楼梯", + "block.betternether.soul_sandstone_cut_stairs": "切制灵魂沙石头楼梯", + "block.betternether.soul_sandstone_smooth_stairs": "平滑灵魂沙石头楼梯", + + "block.betternether.soul_sandstone_slab": "灵魂沙石头台阶", + "block.betternether.soul_sandstone_cut_slab": "切制灵魂沙石头台阶", + "block.betternether.soul_sandstone_smooth_slab": "平滑灵魂沙石头台阶", + + "block.betternether.soul_sandstone_wall": "灵魂沙石头墙", + + "block.betternether.basalt_bricks": "玄武岩砖", + "block.betternether.basalt_bricks_stairs": "玄武岩砖楼梯", + "block.betternether.basalt_bricks_slab": "玄武岩砖台阶", + "block.betternether.basalt_bricks_wall": "玄武岩砖墙", + + "item.betternether.cincinnasite_hoe": "辛辛那金锄", + "item.betternether.cincinnasite_hoe_diamond": "镶钻辛辛那金锄", + "item.betternether.nether_ruby_hoe": "下界红宝石锄", + "item.betternether.nether_ruby_hammer": "下界红宝石锤", + + "config.betternether.config": "更好的下界配置", + "config.betternether.mod_reload": "§b§l你需要重新启动Minecraft才能应用这些更改!", + "config.betternether.rendering": "渲染设置", + "config.betternether.blocks": "注册块", + "config.betternether.items": "注册物品", + "config.betternether.biomes": "生物群系选项", + "config.betternether.subbiomes": "副生物群系选项", + "config.betternether.biomes_edges": "生物群系边缘选项", + "config.betternether.generator": "生成结构选项", + "config.betternether.global_structures_density": "全下界植物和结构密度", + "config.betternether.structures_density": "结构密度", + "config.betternether.cities_dist": "每一座城市结构相距距离(以区块为单位)", + + "config.betternether.reset": "重置", + "config.betternether.fog": "迷雾距离", + "config.betternether.lavafalls": "§b*§r岩浆瀑布粒子效果", + "config.betternether.armour": "§b*§r瘦小的盔甲模型", + + "block.betternether.crafting_table_crimson": "绯红木工作台", + "block.betternether.crafting_table_warped": "诡异木工作台", + + "block.betternether.crafting_table_stalagnate": "石结木工作台", + "block.betternether.crafting_table_reed": "下界芦苇工作台", + "block.betternether.crafting_table_willow": "下界柳木工作台", + "block.betternether.crafting_table_wart": "下界疣工作台", + "block.betternether.crafting_table_rubeus": "宝红木工作台", + "block.betternether.crafting_table_mushroom": "蘑菇工作台", + "block.betternether.crafting_table_mushroom_fir": "下界冷杉菇木工作台", + + "block.betternether.chest_stalagnate": "石结木箱子", + "block.betternether.chest_reed": "下界芦苇箱子", + "block.betternether.chest_willow": "下界柳木箱子", + "block.betternether.chest_wart": "下界疣箱子", + "block.betternether.chest_rubeus": "宝红木箱子", + "block.betternether.chest_mushroom": "蘑菇箱子", + "block.betternether.chest_mushroom_fir": "下界冷杉菇木箱子", + + "block.betternether.chest_crimson": "绯红木箱子", + "block.betternether.chest_warped": "诡异木箱子", + + "block.betternether.jungle_moss": "下界丛林苔", + + "block.betternether.feather_fern": "毛蕨", + + "block.betternether.sign_stalagnate": "石结木告示牌", + "block.betternether.sign_reed": "下界芦苇告示牌", + "block.betternether.sign_willow": "下界柳木告示牌", + "block.betternether.sign_wart": "下界疣告示牌", + "block.betternether.sign_rubeus": "宝红木告示牌", + "block.betternether.sign_mushroom": "蘑菇告示牌", + "block.betternether.sign_mushroom_fir": "下界冷杉菇木告示牌", + + "block.betternether.barrel_stalagnate": "石结木桶", + "block.betternether.barrel_reed": "下界芦苇桶", + "block.betternether.barrel_willow": "下界柳木桶", + "block.betternether.barrel_wart": "下界疣桶", + "block.betternether.barrel_rubeus": "宝红木桶", + "block.betternether.barrel_mushroom": "蘑菇桶", + "block.betternether.barrel_mushroom_fir": "下界冷杉菇木桶", + + "block.betternether.barrel_crimson": "绯红木桶", + "block.betternether.barrel_warped": "诡异木桶", + + "block.betternether.crimson_ladder": "绯红木梯子", + "block.betternether.warped_ladder": "诡异木梯子", + "block.betternether.mushroom_ladder": "蘑菇木梯子", + + "block.betternether.taburet_crimson": "绯红木凳子", + "block.betternether.taburet_warped": "诡异木凳子", + "block.betternether.taburet_mushroom": "蘑菇凳子", + + "block.betternether.chair_crimson": "绯红木椅子", + "block.betternether.chair_warped": "诡异木椅子", + "block.betternether.chair_mushroom": "蘑菇椅子", + + "block.betternether.bar_stool_crimson": "绯红木高脚凳", + "block.betternether.bar_stool_warped": "诡异木高脚凳", + "block.betternether.bar_stool_mushroom": "蘑菇高脚凳", + + "block.betternether.mushroom_grass": "蘑菇草方块", + "block.betternether.bone_grass": "骨草", + "block.betternether.lumabus_seed": "鲁玛巴斯幼苗", + "block.betternether.lumabus_vine": "鲁玛巴斯藤", + "item.betternether.glowstone_pile": "萤石堆", + "block.betternether.jellyfish_mushroom": "水母菇", + "block.betternether.jellyfish_mushroom_sapling": "水母菇幼苗", + "block.betternether.bone_stalactite": "骨钟乳石", + "block.betternether.cincinnasite_chain": "辛辛那金链", + "block.betternether.nether_lapis_ore": "下界青金石矿", + "item.betternether.lapis_pile": "青金石堆", + "item.betternether.cincinnasite_excavator": "辛辛那金铲", + "item.betternether.cincinnasite_excavator_diamond": "镶钻辛辛那金铲", + "item.betternether.nether_ruby_excavator": "红宝石铲", + + "block.betternether.sepia_mushroom_grass": "墨菇草方块", + "block.betternether.sepia_bone_grass": "墨骨草", + "block.betternether.golden_lumabus_seed": "金鲁玛巴斯幼苗", + "block.betternether.golden_lumabus_vine": "金鲁玛巴斯藤", + + "block.betternether.cincinnasite_fire_bowl": "辛辛那金火盆", + "block.betternether.bricks_fire_bowl": "下界砖火盆", + "block.betternether.netherite_fire_bowl": "下界合金火盆", + "block.betternether.cincinnasite_fire_bowl_soul": "辛辛那金灵魂沙火盆", + "block.betternether.bricks_fire_bowl_soul": "下界砖灵魂沙火盆", + "block.betternether.netherite_fire_bowl_soul": "下界合金灵魂沙火盆", + + "block.betternether.swampland_grass": "沼泽草", + "block.betternether.basalt_slab": "玄武岩台阶", + + "block.betternether.anchor_tree_bark": "锚树", + "block.betternether.anchor_tree_button": "锚木按钮", + "block.betternether.anchor_tree_door": "锚木门", + "block.betternether.anchor_tree_fence": "锚木栅栏", + "block.betternether.anchor_tree_gate": "锚木栅栏门", + "block.betternether.anchor_tree_ladder": "锚木梯子", + "block.betternether.anchor_tree_log": "锚木原木", + "block.betternether.anchor_tree_planks": "锚木板", + "block.betternether.anchor_tree_plate": "锚木压力板", + "block.betternether.anchor_tree_slab": "锚木台阶", + "block.betternether.anchor_tree_stairs": "锚木楼梯", + "block.betternether.anchor_tree_trapdoor": "锚木活板门", + "block.betternether.barrel_anchor_tree": "锚木桶", + "block.betternether.bar_stool_anchor_tree": "锚木高脚凳", + "block.betternether.chair_anchor_tree": "锚木椅子", + "block.betternether.chest_anchor_tree": "锚木箱子", + "block.betternether.crafting_table_anchor_tree": "锚木工作台", + "block.betternether.sign_anchor_tree": "锚木告示牌", + "block.betternether.striped_bark_anchor_tree": "去皮锚木", + "block.betternether.striped_log_anchor_tree": "去皮锚木原木", + "block.betternether.taburet_anchor_tree": "锚木凳子", + + "block.betternether.anchor_tree_vine": "锚树藤", + "block.betternether.anchor_tree_leaves": "锚树叶子", + "block.betternether.anchor_tree_sapling": "锚树幼苗", + + "block.betternether.giant_lucis": "巨灵芝", + "block.betternether.moss_cover": "地衣", + + "block.betternether.nether_sakura_bark": "下界樱花树", + "block.betternether.nether_sakura_button": "下界樱花木按钮", + "block.betternether.nether_sakura_door": "下界樱花木门", + "block.betternether.nether_sakura_fence": "下界樱花木栅栏", + "block.betternether.nether_sakura_gate": "下界樱花木栅栏门", + "block.betternether.nether_sakura_ladder": "下界樱花木梯子", + "block.betternether.nether_sakura_log": "下界樱花木原木", + "block.betternether.nether_sakura_planks": "下界樱花木板", + "block.betternether.nether_sakura_plate": "下界樱花木压力板", + "block.betternether.nether_sakura_slab": "下界樱花木台阶", + "block.betternether.nether_sakura_stairs": "下界樱花木楼梯", + "block.betternether.nether_sakura_trapdoor": "下界樱花木活板门", + "block.betternether.barrel_nether_sakura": "下界樱花木桶", + "block.betternether.bar_stool_nether_sakura": "下界樱花木高脚凳", + "block.betternether.chair_nether_sakura": "下界樱花木椅子", + "block.betternether.chest_nether_sakura": "下界樱花木箱子", + "block.betternether.crafting_table_nether_sakura": "下界樱花木工作台", + "block.betternether.sign_nether_sakura": "下界樱花木告示牌", + "block.betternether.striped_bark_nether_sakura": "去皮下界樱花木", + "block.betternether.striped_log_nether_sakura": "去皮下界樱花木原木", + "block.betternether.taburet_nether_sakura": "下界樱花木凳子", + + "block.betternether.nether_sakura_leaves": "下界樱花树叶子", + "block.betternether.nether_sakura_sapling": "下界樱花树幼苗", + + "block.betternether.ceiling_mushrooms": "底部附着蘑菇的下界岩", + "block.betternether.neon_equisetum": "霓虹木贼", + "block.betternether.hook_mushroom": "钩菇", + "item.betternether.hook_mushroom_cooked": "煮熟的钩菇", + + "block.betternether.whispering_gourd_vine": "窃语葫芦幼苗", + "block.betternether.whispering_gourd": "窃语葫芦", + "block.betternether.whispering_gourd_lantern": "窃语葫芦灯", + + "block.betternether.willow_torch": "下界柳木火把" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/anchor_tree_leaves.json b/src/main/resources/assets/betternether/materialmaps/block/anchor_tree_leaves.json new file mode 100644 index 0000000..85f2f2c --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/anchor_tree_leaves.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/anchor_tree_sapling.json b/src/main/resources/assets/betternether/materialmaps/block/anchor_tree_sapling.json new file mode 100644 index 0000000..32f4ab7 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/anchor_tree_sapling.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_50_half" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/anchor_tree_vine.json b/src/main/resources/assets/betternether/materialmaps/block/anchor_tree_vine.json new file mode 100644 index 0000000..118d4a7 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/anchor_tree_vine.json @@ -0,0 +1,22 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "betternether:block/anchor_tree_vine_end_2", + "material": "betternether:large_wave_glow_50_half" + }, + { + "sprite": "betternether:block/anchor_tree_vine_end_1", + "material": "betternether:waving_large" + }, + { + "sprite": "betternether:block/anchor_tree_vine", + "material": "betternether:waving_large" + }, + { + "sprite": "betternether:block/anchor_tree_leaves_2", + "material": "betternether:waving_large" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/black_apple.json b/src/main/resources/assets/betternether/materialmaps/block/black_apple.json new file mode 100644 index 0000000..f7f8b69 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/black_apple.json @@ -0,0 +1,18 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "betternether:block/black_apple_medium", + "material": "betternether:waving_floor" + }, + { + "sprite": "betternether:block/black_apple_seed", + "material": "betternether:waving_floor" + }, + { + "sprite": "betternether:block/black_apple_young", + "material": "betternether:waving_floor" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/black_bush.json b/src/main/resources/assets/betternether/materialmaps/block/black_bush.json new file mode 100644 index 0000000..85f2f2c --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/black_bush.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/black_vine.json b/src/main/resources/assets/betternether/materialmaps/block/black_vine.json new file mode 100644 index 0000000..85f2f2c --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/black_vine.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/blooming_vine.json b/src/main/resources/assets/betternether/materialmaps/block/blooming_vine.json new file mode 100644 index 0000000..e9d226b --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/blooming_vine.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:wave_glow_33_half" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/bone_grass.json b/src/main/resources/assets/betternether/materialmaps/block/bone_grass.json new file mode 100644 index 0000000..f3f965c --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/bone_grass.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving_floor" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/bricks_fire_bowl.json b/src/main/resources/assets/betternether/materialmaps/block/bricks_fire_bowl.json new file mode 100644 index 0000000..9b20fbc --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/bricks_fire_bowl.json @@ -0,0 +1,14 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "block/fire_0", + "material": "betternether:glow_all" + }, + { + "sprite": "block/fire_1", + "material": "betternether:glow_all" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/bricks_fire_bowl_soul.json b/src/main/resources/assets/betternether/materialmaps/block/bricks_fire_bowl_soul.json new file mode 100644 index 0000000..f3ee92e --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/bricks_fire_bowl_soul.json @@ -0,0 +1,14 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "block/soul_fire_0", + "material": "betternether:glow_all" + }, + { + "sprite": "block/soul_fire_1", + "material": "betternether:glow_all" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_acacia.json b/src/main/resources/assets/betternether/materialmaps/block/chair_acacia.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_acacia.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_anchor_tree.json b/src/main/resources/assets/betternether/materialmaps/block/chair_anchor_tree.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_anchor_tree.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_birch.json b/src/main/resources/assets/betternether/materialmaps/block/chair_birch.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_birch.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_cincinnasite.json b/src/main/resources/assets/betternether/materialmaps/block/chair_cincinnasite.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_cincinnasite.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_crimson.json b/src/main/resources/assets/betternether/materialmaps/block/chair_crimson.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_crimson.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_dark_oak.json b/src/main/resources/assets/betternether/materialmaps/block/chair_dark_oak.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_dark_oak.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_jungle.json b/src/main/resources/assets/betternether/materialmaps/block/chair_jungle.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_jungle.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_mushroom.json b/src/main/resources/assets/betternether/materialmaps/block/chair_mushroom.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_mushroom.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_mushroom_fir.json b/src/main/resources/assets/betternether/materialmaps/block/chair_mushroom_fir.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_mushroom_fir.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_nether_sakura.json b/src/main/resources/assets/betternether/materialmaps/block/chair_nether_sakura.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_nether_sakura.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_oak.json b/src/main/resources/assets/betternether/materialmaps/block/chair_oak.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_oak.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_reeds.json b/src/main/resources/assets/betternether/materialmaps/block/chair_reeds.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_reeds.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_rubeus.json b/src/main/resources/assets/betternether/materialmaps/block/chair_rubeus.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_rubeus.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_spruce.json b/src/main/resources/assets/betternether/materialmaps/block/chair_spruce.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_spruce.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_stalagnate.json b/src/main/resources/assets/betternether/materialmaps/block/chair_stalagnate.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_stalagnate.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_warped.json b/src/main/resources/assets/betternether/materialmaps/block/chair_warped.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_warped.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_wart.json b/src/main/resources/assets/betternether/materialmaps/block/chair_wart.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_wart.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/chair_willow.json b/src/main/resources/assets/betternether/materialmaps/block/chair_willow.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/chair_willow.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/cincinnasite_fire_bowl.json b/src/main/resources/assets/betternether/materialmaps/block/cincinnasite_fire_bowl.json new file mode 100644 index 0000000..9b20fbc --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/cincinnasite_fire_bowl.json @@ -0,0 +1,14 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "block/fire_0", + "material": "betternether:glow_all" + }, + { + "sprite": "block/fire_1", + "material": "betternether:glow_all" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/cincinnasite_fire_bowl_soul.json b/src/main/resources/assets/betternether/materialmaps/block/cincinnasite_fire_bowl_soul.json new file mode 100644 index 0000000..f3ee92e --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/cincinnasite_fire_bowl_soul.json @@ -0,0 +1,14 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "block/soul_fire_0", + "material": "betternether:glow_all" + }, + { + "sprite": "block/soul_fire_1", + "material": "betternether:glow_all" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/cincinnasite_lantern.json b/src/main/resources/assets/betternether/materialmaps/block/cincinnasite_lantern.json new file mode 100644 index 0000000..a9a39e8 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/cincinnasite_lantern.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_all" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/cincinnasite_lantern_small.json b/src/main/resources/assets/betternether/materialmaps/block/cincinnasite_lantern_small.json new file mode 100644 index 0000000..902d003 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/cincinnasite_lantern_small.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_50" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/eye_vine.json b/src/main/resources/assets/betternether/materialmaps/block/eye_vine.json new file mode 100644 index 0000000..f7140f5 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/eye_vine.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving_small" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/feather_fern.json b/src/main/resources/assets/betternether/materialmaps/block/feather_fern.json new file mode 100644 index 0000000..aa505a8 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/feather_fern.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving_floor" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/geyser.json b/src/main/resources/assets/betternether/materialmaps/block/geyser.json new file mode 100644 index 0000000..5af3ce5 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/geyser.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_inc" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/giant_lucis.json b/src/main/resources/assets/betternether/materialmaps/block/giant_lucis.json new file mode 100644 index 0000000..a7432ae --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/giant_lucis.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_all_half" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/giant_mold.json b/src/main/resources/assets/betternether/materialmaps/block/giant_mold.json new file mode 100644 index 0000000..65b06d8 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/giant_mold.json @@ -0,0 +1,14 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "betternether:block/giant_mold_fur", + "material": "betternether:waving" + }, + { + "sprite": "betternether:block/giant_mold_small", + "material": "betternether:waving" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/glowstone_stalactite.json b/src/main/resources/assets/betternether/materialmaps/block/glowstone_stalactite.json new file mode 100644 index 0000000..a9a39e8 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/glowstone_stalactite.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_all" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/golden_lumabus_vine.json b/src/main/resources/assets/betternether/materialmaps/block/golden_lumabus_vine.json new file mode 100644 index 0000000..184127f --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/golden_lumabus_vine.json @@ -0,0 +1,30 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "betternether:block/golden_lumabus_bulb_1", + "material": "betternether:wave_glow_inc" + }, + { + "sprite": "betternether:block/golden_lumabus_bulb_2", + "material": "betternether:wave_glow_inc" + }, + { + "sprite": "betternether:block/golden_lumabus_bulb_3", + "material": "betternether:wave_glow_inc" + }, + { + "sprite": "betternether:block/golden_lumabus_bulb_4", + "material": "betternether:wave_glow_inc" + }, + { + "sprite": "betternether:block/golden_lumabus_vine", + "material": "betternether:waving" + }, + { + "sprite": "betternether:block/golden_lumabus_leaves", + "material": "betternether:waving" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/golden_vine.json b/src/main/resources/assets/betternether/materialmaps/block/golden_vine.json new file mode 100644 index 0000000..856d695 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/golden_vine.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:wave_glow_33" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/gray_mold.json b/src/main/resources/assets/betternether/materialmaps/block/gray_mold.json new file mode 100644 index 0000000..f3f965c --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/gray_mold.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving_floor" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/hook_mushroom.json b/src/main/resources/assets/betternether/materialmaps/block/hook_mushroom.json new file mode 100644 index 0000000..5518745 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/hook_mushroom.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_inc" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/ink_bush.json b/src/main/resources/assets/betternether/materialmaps/block/ink_bush.json new file mode 100644 index 0000000..6417745 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/ink_bush.json @@ -0,0 +1,10 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "betternether:block/ink_bush_leaves", + "material": "betternether:waving" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/jungle_moss.json b/src/main/resources/assets/betternether/materialmaps/block/jungle_moss.json new file mode 100644 index 0000000..81f3e5a --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/jungle_moss.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving_wall" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/jungle_plant.json b/src/main/resources/assets/betternether/materialmaps/block/jungle_plant.json new file mode 100644 index 0000000..f3f965c --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/jungle_plant.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving_floor" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/lucis_mushroom.json b/src/main/resources/assets/betternether/materialmaps/block/lucis_mushroom.json new file mode 100644 index 0000000..0be137f --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/lucis_mushroom.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_all_half" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/lucis_spore.json b/src/main/resources/assets/betternether/materialmaps/block/lucis_spore.json new file mode 100644 index 0000000..0be137f --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/lucis_spore.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_all_half" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/lumabus_vine.json b/src/main/resources/assets/betternether/materialmaps/block/lumabus_vine.json new file mode 100644 index 0000000..bd3c5bf --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/lumabus_vine.json @@ -0,0 +1,30 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "betternether:block/lumabus_bulb_1", + "material": "betternether:wave_glow_inc" + }, + { + "sprite": "betternether:block/lumabus_bulb_2", + "material": "betternether:wave_glow_inc" + }, + { + "sprite": "betternether:block/lumabus_bulb_3", + "material": "betternether:wave_glow_inc" + }, + { + "sprite": "betternether:block/lumabus_bulb_4", + "material": "betternether:wave_glow_inc" + }, + { + "sprite": "betternether:block/lumabus_vine", + "material": "betternether:waving" + }, + { + "sprite": "betternether:block/lumabus_leaves", + "material": "betternether:waving" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/magma_flower.json b/src/main/resources/assets/betternether/materialmaps/block/magma_flower.json new file mode 100644 index 0000000..3b3628b --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/magma_flower.json @@ -0,0 +1,14 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "betternether:block/magma_flower_side", + "material": "betternether:glow_33" + }, + { + "sprite": "betternether:block/magma_flower_top", + "material": "betternether:glow_33" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/moss_cover.json b/src/main/resources/assets/betternether/materialmaps/block/moss_cover.json new file mode 100644 index 0000000..b12f189 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/moss_cover.json @@ -0,0 +1,14 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "betternether:block/moss_parts", + "material": "betternether:wave_glow_50_half" + }, + { + "sprite": "betternether:block/moss_side", + "material": "betternether:offset_floor" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/neon_equisetum.json b/src/main/resources/assets/betternether/materialmaps/block/neon_equisetum.json new file mode 100644 index 0000000..cc4075f --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/neon_equisetum.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:wave_glow_33" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/nether_grass.json b/src/main/resources/assets/betternether/materialmaps/block/nether_grass.json new file mode 100644 index 0000000..f3f965c --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/nether_grass.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving_floor" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/nether_reed.json b/src/main/resources/assets/betternether/materialmaps/block/nether_reed.json new file mode 100644 index 0000000..f937d77 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/nether_reed.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:wave_glow_50_half" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/nether_sakura_leaves.json b/src/main/resources/assets/betternether/materialmaps/block/nether_sakura_leaves.json new file mode 100644 index 0000000..896e0a7 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/nether_sakura_leaves.json @@ -0,0 +1,26 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "betternether:block/nether_sakura_flowers_1", + "material": "betternether:wave_glow_all" + }, + { + "sprite": "betternether:block/nether_sakura_flowers_2", + "material": "betternether:wave_glow_all" + }, + { + "sprite": "betternether:block/nether_sakura_flowers_3", + "material": "betternether:wave_glow_all" + }, + { + "sprite": "betternether:block/nether_sakura_leaves_2", + "material": "betternether:waving" + }, + { + "sprite": "betternether:block/nether_sakura_leaves_side", + "material": "betternether:waving" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/nether_sakura_sapling.json b/src/main/resources/assets/betternether/materialmaps/block/nether_sakura_sapling.json new file mode 100644 index 0000000..1656fa4 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/nether_sakura_sapling.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_50" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/netherite_fire_bowl.json b/src/main/resources/assets/betternether/materialmaps/block/netherite_fire_bowl.json new file mode 100644 index 0000000..9b20fbc --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/netherite_fire_bowl.json @@ -0,0 +1,14 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "block/fire_0", + "material": "betternether:glow_all" + }, + { + "sprite": "block/fire_1", + "material": "betternether:glow_all" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/netherite_fire_bowl_soul.json b/src/main/resources/assets/betternether/materialmaps/block/netherite_fire_bowl_soul.json new file mode 100644 index 0000000..f3ee92e --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/netherite_fire_bowl_soul.json @@ -0,0 +1,14 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "block/soul_fire_0", + "material": "betternether:glow_all" + }, + { + "sprite": "block/soul_fire_1", + "material": "betternether:glow_all" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/pig_statue_respawner.json b/src/main/resources/assets/betternether/materialmaps/block/pig_statue_respawner.json new file mode 100644 index 0000000..2d4d326 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/pig_statue_respawner.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:noshade" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/rubeus_cone.json b/src/main/resources/assets/betternether/materialmaps/block/rubeus_cone.json new file mode 100644 index 0000000..5518745 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/rubeus_cone.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_inc" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/rubeus_leaves.json b/src/main/resources/assets/betternether/materialmaps/block/rubeus_leaves.json new file mode 100644 index 0000000..85f2f2c --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/rubeus_leaves.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/sepia_bone_grass.json b/src/main/resources/assets/betternether/materialmaps/block/sepia_bone_grass.json new file mode 100644 index 0000000..f3f965c --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/sepia_bone_grass.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving_floor" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/smoker.json b/src/main/resources/assets/betternether/materialmaps/block/smoker.json new file mode 100644 index 0000000..41e91db --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/smoker.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_10" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/soul_grass.json b/src/main/resources/assets/betternether/materialmaps/block/soul_grass.json new file mode 100644 index 0000000..f3f965c --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/soul_grass.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving_floor" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/stalagnate.json b/src/main/resources/assets/betternether/materialmaps/block/stalagnate.json new file mode 100644 index 0000000..bb46bfe --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/stalagnate.json @@ -0,0 +1,14 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "betternether:block/stalagnate_trunk_leaves", + "material": "betternether:waving_small" + }, + { + "sprite": "betternether:block/stalagnate_trunk_leaves_2", + "material": "betternether:waving_small" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/stalagnate_log.json b/src/main/resources/assets/betternether/materialmaps/block/stalagnate_log.json new file mode 100644 index 0000000..f65d9d0 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/stalagnate_log.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_transparent" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/swamp_grass.json b/src/main/resources/assets/betternether/materialmaps/block/swamp_grass.json new file mode 100644 index 0000000..f3f965c --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/swamp_grass.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving_floor" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/wall_moss.json b/src/main/resources/assets/betternether/materialmaps/block/wall_moss.json new file mode 100644 index 0000000..81f3e5a --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/wall_moss.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving_wall" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/willow_branch.json b/src/main/resources/assets/betternether/materialmaps/block/willow_branch.json new file mode 100644 index 0000000..b1ad608 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/willow_branch.json @@ -0,0 +1,22 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "betternether:block/willow_bark_end", + "material": "betternether:large_wave_glow_inc" + }, + { + "sprite": "betternether:block/willow_leaves", + "material": "betternether:waving_large" + }, + { + "sprite": "betternether:block/willow_leaves_end", + "material": "betternether:waving_large" + }, + { + "sprite": "betternether:block/willow_bark", + "material": "betternether:waving_large" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/materialmaps/block/willow_leaves.json b/src/main/resources/assets/betternether/materialmaps/block/willow_leaves.json new file mode 100644 index 0000000..85f2f2c --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/willow_leaves.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:waving" +} diff --git a/src/main/resources/assets/betternether/materialmaps/block/willow_torch.json b/src/main/resources/assets/betternether/materialmaps/block/willow_torch.json new file mode 100644 index 0000000..5af3ce5 --- /dev/null +++ b/src/main/resources/assets/betternether/materialmaps/block/willow_torch.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betternether:glow_inc" +} diff --git a/src/main/resources/assets/betternether/materials/glow_10.json b/src/main/resources/assets/betternether/materials/glow_10.json new file mode 100644 index 0000000..432a74c --- /dev/null +++ b/src/main/resources/assets/betternether/materials/glow_10.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "canvas:shaders/material/default.vert", + "fragmentSource": "betternether:shaders/material/glow_10.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/glow_33.json b/src/main/resources/assets/betternether/materials/glow_33.json new file mode 100644 index 0000000..f6328a3 --- /dev/null +++ b/src/main/resources/assets/betternether/materials/glow_33.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "canvas:shaders/material/default.vert", + "fragmentSource": "betternether:shaders/material/glow_33.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/glow_50.json b/src/main/resources/assets/betternether/materials/glow_50.json new file mode 100644 index 0000000..fe8569b --- /dev/null +++ b/src/main/resources/assets/betternether/materials/glow_50.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "canvas:shaders/material/default.vert", + "fragmentSource": "betternether:shaders/material/glow_50.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/glow_50_half.json b/src/main/resources/assets/betternether/materials/glow_50_half.json new file mode 100644 index 0000000..bea196b --- /dev/null +++ b/src/main/resources/assets/betternether/materials/glow_50_half.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "canvas:shaders/material/default.vert", + "fragmentSource": "betternether:shaders/material/glow_50_half.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/glow_all.json b/src/main/resources/assets/betternether/materials/glow_all.json new file mode 100644 index 0000000..c02572d --- /dev/null +++ b/src/main/resources/assets/betternether/materials/glow_all.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "canvas:shaders/material/default.vert", + "fragmentSource": "betternether:shaders/material/glow_all.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/glow_all_half.json b/src/main/resources/assets/betternether/materials/glow_all_half.json new file mode 100644 index 0000000..9ba448e --- /dev/null +++ b/src/main/resources/assets/betternether/materials/glow_all_half.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "canvas:shaders/material/default.vert", + "fragmentSource": "betternether:shaders/material/glow_all_half.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/glow_inc.json b/src/main/resources/assets/betternether/materials/glow_inc.json new file mode 100644 index 0000000..2d6157b --- /dev/null +++ b/src/main/resources/assets/betternether/materials/glow_inc.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "canvas:shaders/material/default.vert", + "fragmentSource": "betternether:shaders/material/glow_inc.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/glow_transparent.json b/src/main/resources/assets/betternether/materials/glow_transparent.json new file mode 100644 index 0000000..2ae9cbe --- /dev/null +++ b/src/main/resources/assets/betternether/materials/glow_transparent.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "canvas:shaders/material/default.vert", + "fragmentSource": "betternether:shaders/material/glow_transparent.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/large_wave_glow_50_half.json b/src/main/resources/assets/betternether/materials/large_wave_glow_50_half.json new file mode 100644 index 0000000..ebb7517 --- /dev/null +++ b/src/main/resources/assets/betternether/materials/large_wave_glow_50_half.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/wave_large.vert", + "fragmentSource": "betternether:shaders/material/glow_50_half.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/large_wave_glow_inc.json b/src/main/resources/assets/betternether/materials/large_wave_glow_inc.json new file mode 100644 index 0000000..4b30345 --- /dev/null +++ b/src/main/resources/assets/betternether/materials/large_wave_glow_inc.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/wave_large.vert", + "fragmentSource": "betternether:shaders/material/glow_inc.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/noshade.json b/src/main/resources/assets/betternether/materials/noshade.json new file mode 100644 index 0000000..ffc32c0 --- /dev/null +++ b/src/main/resources/assets/betternether/materials/noshade.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "canvas:shaders/material/default.vert", + "fragmentSource": "canvas:shaders/material/default.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/offset_floor.json b/src/main/resources/assets/betternether/materials/offset_floor.json new file mode 100644 index 0000000..bd0609d --- /dev/null +++ b/src/main/resources/assets/betternether/materials/offset_floor.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/offset_floor.vert", + "fragmentSource": "canvas:shaders/material/default.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/small_wave_glow_50_half.json b/src/main/resources/assets/betternether/materials/small_wave_glow_50_half.json new file mode 100644 index 0000000..36055d3 --- /dev/null +++ b/src/main/resources/assets/betternether/materials/small_wave_glow_50_half.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/small_wave.vert", + "fragmentSource": "betternether:shaders/material/glow_50_half.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/wave_glow_33.json b/src/main/resources/assets/betternether/materials/wave_glow_33.json new file mode 100644 index 0000000..fe69583 --- /dev/null +++ b/src/main/resources/assets/betternether/materials/wave_glow_33.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/wave.vert", + "fragmentSource": "betternether:shaders/material/glow_33.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/wave_glow_33_half.json b/src/main/resources/assets/betternether/materials/wave_glow_33_half.json new file mode 100644 index 0000000..6e42390 --- /dev/null +++ b/src/main/resources/assets/betternether/materials/wave_glow_33_half.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/wave.vert", + "fragmentSource": "betternether:shaders/material/glow_33_half.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/wave_glow_50_half.json b/src/main/resources/assets/betternether/materials/wave_glow_50_half.json new file mode 100644 index 0000000..15a1f6c --- /dev/null +++ b/src/main/resources/assets/betternether/materials/wave_glow_50_half.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/wave.vert", + "fragmentSource": "betternether:shaders/material/glow_50_half.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/wave_glow_all.json b/src/main/resources/assets/betternether/materials/wave_glow_all.json new file mode 100644 index 0000000..75a34e9 --- /dev/null +++ b/src/main/resources/assets/betternether/materials/wave_glow_all.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/wave.vert", + "fragmentSource": "betternether:shaders/material/glow_all.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/wave_glow_inc.json b/src/main/resources/assets/betternether/materials/wave_glow_inc.json new file mode 100644 index 0000000..8af170e --- /dev/null +++ b/src/main/resources/assets/betternether/materials/wave_glow_inc.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/wave.vert", + "fragmentSource": "betternether:shaders/material/glow_inc.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/waving.json b/src/main/resources/assets/betternether/materials/waving.json new file mode 100644 index 0000000..4c039cd --- /dev/null +++ b/src/main/resources/assets/betternether/materials/waving.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/wave.vert", + "fragmentSource": "canvas:shaders/material/default.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/waving_floor.json b/src/main/resources/assets/betternether/materials/waving_floor.json new file mode 100644 index 0000000..1c6caa9 --- /dev/null +++ b/src/main/resources/assets/betternether/materials/waving_floor.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/wave_floor.vert", + "fragmentSource": "canvas:shaders/material/default.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/waving_large.json b/src/main/resources/assets/betternether/materials/waving_large.json new file mode 100644 index 0000000..77e3b94 --- /dev/null +++ b/src/main/resources/assets/betternether/materials/waving_large.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/wave_large.vert", + "fragmentSource": "canvas:shaders/material/default.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/waving_small.json b/src/main/resources/assets/betternether/materials/waving_small.json new file mode 100644 index 0000000..392858a --- /dev/null +++ b/src/main/resources/assets/betternether/materials/waving_small.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/small_wave.vert", + "fragmentSource": "canvas:shaders/material/default.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/materials/waving_wall.json b/src/main/resources/assets/betternether/materials/waving_wall.json new file mode 100644 index 0000000..dd3c1ef --- /dev/null +++ b/src/main/resources/assets/betternether/materials/waving_wall.json @@ -0,0 +1,10 @@ +{ + "layers": [ + { + "vertexSource": "betternether:shaders/material/wall_wave.vert", + "fragmentSource": "canvas:shaders/material/default.frag", + "disableAo": true, + "disableDiffuse": true + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/agave.json b/src/main/resources/assets/betternether/models/block/agave.json new file mode 100644 index 0000000..1557aae --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/agave.json @@ -0,0 +1,130 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/agave_leaf", + "texture": "betternether:block/agave_leaf", + "texture2": "betternether:block/agave_leaf_02" + }, + "elements": [ + { + "__comment": "PlaneZ5", + "from": [ 0, 0, 7 ], + "to": [ 16, 16, 7.001 ], + "rotation": { "origin": [ 0, 0, 7 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ5", + "from": [ 0, 0, 9 ], + "to": [ 16, 16, 9.001 ], + "rotation": { "origin": [ 0, 0, 9 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 9, 0, 0 ], + "to": [ 9.001, 16, 16 ], + "rotation": { "origin": [ 9, 0, 0 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 7, 0, 0 ], + "to": [ 7.001, 16, 16 ], + "rotation": { "origin": [ 7, 0, 0 ], "axis": "z", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2" } + } + }, + { + "__comment": "PlaneX8", + "from": [ 0, 0, 0 ], + "to": [ 22, 16, 0.001 ], + "rotation": { "origin": [ 0, 0, 0 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 14, 0, 14.001, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 14, 0, 14.001, 16 ], "texture": "#texture", "rotation": 270 }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 1.999001, 0, 2, 16 ], "texture": "#texture" }, + "east": { "uv": [ 14, 0, 14.001, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX8", + "from": [ 0, 0, 16 ], + "to": [ 22, 16, 16.001 ], + "rotation": { "origin": [ 0, 0, 16 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 14, 0, 14.001, 16 ], "texture": "#texture2", "rotation": 90 }, + "up": { "uv": [ 14, 0, 14.001, 16 ], "texture": "#texture2", "rotation": 270 }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2" }, + "west": { "uv": [ 1.999001, 0, 2, 16 ], "texture": "#texture2" }, + "east": { "uv": [ 14, 0, 14.001, 16 ], "texture": "#texture2" } + } + }, + { + "__comment": "PlaneY7", + "from": [ 0, 6, -6.5 ], + "to": [ 16, 6.001, 9.5 ], + "rotation": { "origin": [ 0, 6, -6.5 ], "axis": "x", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY7", + "from": [ 0, 0, 8 ], + "to": [ 16, 0.001, 24 ], + "rotation": { "origin": [ 0, 0, 8 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture2", "rotation": 180 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture2", "rotation": 180 } + } + }, + { + "__comment": "PlaneY9", + "from": [ 8, 0, 0 ], + "to": [ 24, 0.001, 16 ], + "rotation": { "origin": [ 8, 0, 0 ], "axis": "z", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "PlaneY9", + "from": [ -7, 6, 0 ], + "to": [ 9, 6.001, 16 ], + "rotation": { "origin": [ -7, 6, 0 ], "axis": "z", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2", "rotation": 270 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture2", "rotation": 270 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/agave_1.json b/src/main/resources/assets/betternether/models/block/agave_1.json new file mode 100644 index 0000000..cb4d791 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/agave_1.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/agave", + "textures": { + "texture": "betternether:block/agave_leaf_03", + "texture2": "betternether:block/agave_leaf_03" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/agave_2.json b/src/main/resources/assets/betternether/models/block/agave_2.json new file mode 100644 index 0000000..53a0a26 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/agave_2.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/agave", + "textures": { + "texture": "betternether:block/agave_leaf_04", + "texture2": "betternether:block/agave_leaf_04" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/agave_3.json b/src/main/resources/assets/betternether/models/block/agave_3.json new file mode 100644 index 0000000..806401f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/agave_3.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/agave", + "textures": { + "texture": "betternether:block/agave_leaf_05", + "texture2": "betternether:block/agave_leaf_05" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_bark.json b/src/main/resources/assets/betternether/models/block/anchor_tree_bark.json new file mode 100644 index 0000000..6fce675 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_bark.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/anchor_tree_log_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_bark_2.json b/src/main/resources/assets/betternether/models/block/anchor_tree_bark_2.json new file mode 100644 index 0000000..1ac9b97 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_bark_2.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/anchor_tree_log_side_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_bark_3.json b/src/main/resources/assets/betternether/models/block/anchor_tree_bark_3.json new file mode 100644 index 0000000..1329248 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_bark_3.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/anchor_tree_log_side_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_button.json b/src/main/resources/assets/betternether/models/block/anchor_tree_button.json new file mode 100644 index 0000000..d097800 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_button.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button", + "textures": { + "texture": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_button_inventory.json b/src/main/resources/assets/betternether/models/block/anchor_tree_button_inventory.json new file mode 100644 index 0000000..e9ba09c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_button_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_inventory", + "textures": { + "texture": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_button_pressed.json b/src/main/resources/assets/betternether/models/block/anchor_tree_button_pressed.json new file mode 100644 index 0000000..b513b9b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_button_pressed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_pressed", + "textures": { + "texture": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_door_bottom.json b/src/main/resources/assets/betternether/models/block/anchor_tree_door_bottom.json new file mode 100644 index 0000000..85cec34 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_door_bottom.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalagnate_planks_door_bottom", + "textures": { + "texture": "betternether:block/anchor_tree_door_bottom", + "particle": "betternether:block/anchor_tree_door_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_door_bottom_hinge.json b/src/main/resources/assets/betternether/models/block/anchor_tree_door_bottom_hinge.json new file mode 100644 index 0000000..49602b7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_door_bottom_hinge.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalagnate_planks_door_bottom_hinge", + "textures": { + "texture": "betternether:block/anchor_tree_door_bottom", + "particle": "betternether:block/anchor_tree_door_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_door_top.json b/src/main/resources/assets/betternether/models/block/anchor_tree_door_top.json new file mode 100644 index 0000000..01b3a68 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_door_top.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalagnate_planks_door_top", + "textures": { + "texture": "betternether:block/anchor_tree_door_top", + "particle": "betternether:block/anchor_tree_door_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_door_top_hinge.json b/src/main/resources/assets/betternether/models/block/anchor_tree_door_top_hinge.json new file mode 100644 index 0000000..fd29dc6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_door_top_hinge.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalagnate_planks_door_top_hinge", + "textures": { + "texture": "betternether:block/anchor_tree_door_top", + "particle": "betternether:block/anchor_tree_door_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_fence_gate_closed.json b/src/main/resources/assets/betternether/models/block/anchor_tree_fence_gate_closed.json new file mode 100644 index 0000000..dda51f3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_fence_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate", + "textures": { + "texture": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_fence_gate_open.json b/src/main/resources/assets/betternether/models/block/anchor_tree_fence_gate_open.json new file mode 100644 index 0000000..36ca80d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_fence_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_open", + "textures": { + "texture": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_fence_inventory.json b/src/main/resources/assets/betternether/models/block/anchor_tree_fence_inventory.json new file mode 100644 index 0000000..f44bb6d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_fence_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_inventory", + "textures": { + "texture": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_fence_post.json b/src/main/resources/assets/betternether/models/block/anchor_tree_fence_post.json new file mode 100644 index 0000000..ae86256 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_fence_post.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_post", + "textures": { + "texture": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_fence_side.json b/src/main/resources/assets/betternether/models/block/anchor_tree_fence_side.json new file mode 100644 index 0000000..f36c182 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_fence_side.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_side", + "textures": { + "texture": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_half_slab.json b/src/main/resources/assets/betternether/models/block/anchor_tree_half_slab.json new file mode 100644 index 0000000..21f3c1c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/anchor_tree_planks", + "top": "betternether:block/anchor_tree_planks", + "side": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_inner_stairs.json b/src/main/resources/assets/betternether/models/block/anchor_tree_inner_stairs.json new file mode 100644 index 0000000..0c34625 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/anchor_tree_planks", + "top": "betternether:block/anchor_tree_planks", + "side": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_ladder.json b/src/main/resources/assets/betternether/models/block/anchor_tree_ladder.json new file mode 100644 index 0000000..e3a21f8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_ladder.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/reeds_ladder", + "textures": { + "particle": "betternether:block/anchor_tree_ladder", + "texture": "betternether:block/anchor_tree_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_leaves.json b/src/main/resources/assets/betternether/models/block/anchor_tree_leaves.json new file mode 100644 index 0000000..9fa1750 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_leaves.json @@ -0,0 +1,122 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/anchor_tree_vine", + "texture": "betternether:block/anchor_tree_leaves_2", + "texture1": "betternether:block/anchor_tree_vine" + }, + "elements": [ + { + "__comment": "PlaneY1", + "from": [ 0, 16, 8 ], + "to": [ 16, 16.001, 24 ], + "rotation": { "origin": [ 0, 16, 8 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, 0, 8 ], + "to": [ 16, 16, 8.001 ], + "rotation": { "origin": [ 0, 16, 8 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "north": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY5", + "from": [ 8, 11.5, 0 ], + "to": [ 24, 11.501, 16 ], + "rotation": { "origin": [ 8, 11.5, 0 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 270 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, 8, 8 ], + "to": [ 16, 8.001, 24 ], + "rotation": { "origin": [ 0, 8, 8 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, -8, 8 ], + "to": [ 16, 8, 8.001 ], + "rotation": { "origin": [ 0, 8, 8 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "north": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY5", + "from": [ 8, 3.5, 0 ], + "to": [ 24, 3.501, 16 ], + "rotation": { "origin": [ 8, 3.5, 0 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 270 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneY5", + "from": [ -3.5, -1, 0 ], + "to": [ 12.5, -0.999, 16 ], + "rotation": { "origin": [ -3.5, -1, 0 ], "axis": "z", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "PlaneY5", + "from": [ -3.5, -8, 0 ], + "to": [ 12.5, -7.999, 16 ], + "rotation": { "origin": [ -3.5, -8, 0 ], "axis": "z", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "PlaneX18", + "from": [ 0, 0, 0 ], + "to": [ 0.001, 16, 22.5 ], + "rotation": { "origin": [ 0, 0, 0 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX18", + "from": [ 16, 0, 0 ], + "to": [ 16.001, 16, 22.5 ], + "rotation": { "origin": [ 16, 0, 0 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_log.json b/src/main/resources/assets/betternether/models/block/anchor_tree_log.json new file mode 100644 index 0000000..5179292 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_log.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/anchor_tree_log_side", + "down": "betternether:block/anchor_tree_log_top", + "up": "betternether:block/anchor_tree_log_top", + "north": "betternether:block/anchor_tree_log_side", + "east": "betternether:block/anchor_tree_log_side", + "south": "betternether:block/anchor_tree_log_side", + "west": "betternether:block/anchor_tree_log_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_log_2.json b/src/main/resources/assets/betternether/models/block/anchor_tree_log_2.json new file mode 100644 index 0000000..e370987 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_log_2.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/anchor_tree_log_side_2", + "down": "betternether:block/anchor_tree_log_top", + "up": "betternether:block/anchor_tree_log_top", + "north": "betternether:block/anchor_tree_log_side_2", + "east": "betternether:block/anchor_tree_log_side_2", + "south": "betternether:block/anchor_tree_log_side_2", + "west": "betternether:block/anchor_tree_log_side_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_log_3.json b/src/main/resources/assets/betternether/models/block/anchor_tree_log_3.json new file mode 100644 index 0000000..77b5015 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_log_3.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/anchor_tree_log_side_3", + "down": "betternether:block/anchor_tree_log_top", + "up": "betternether:block/anchor_tree_log_top", + "north": "betternether:block/anchor_tree_log_side_3", + "east": "betternether:block/anchor_tree_log_side_3", + "south": "betternether:block/anchor_tree_log_side_3", + "west": "betternether:block/anchor_tree_log_side_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_outer_stairs.json b/src/main/resources/assets/betternether/models/block/anchor_tree_outer_stairs.json new file mode 100644 index 0000000..246c1d4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/anchor_tree_planks", + "top": "betternether:block/anchor_tree_planks", + "side": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_planks.json b/src/main/resources/assets/betternether/models/block/anchor_tree_planks.json new file mode 100644 index 0000000..95f6a99 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_planks.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_pressure_plate_down.json b/src/main/resources/assets/betternether/models/block/anchor_tree_pressure_plate_down.json new file mode 100644 index 0000000..93fea94 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_down", + "textures": { + "texture": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_pressure_plate_up.json b/src/main/resources/assets/betternether/models/block/anchor_tree_pressure_plate_up.json new file mode 100644 index 0000000..fcb6397 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_pressure_plate_up.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_up", + "textures": { + "texture": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_sapling.json b/src/main/resources/assets/betternether/models/block/anchor_tree_sapling.json new file mode 100644 index 0000000..edcc22d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/anchor_tree_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_stairs.json b/src/main/resources/assets/betternether/models/block/anchor_tree_stairs.json new file mode 100644 index 0000000..44867ba --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/anchor_tree_planks", + "top": "betternether:block/anchor_tree_planks", + "side": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_trapdoor.json b/src/main/resources/assets/betternether/models/block/anchor_tree_trapdoor.json new file mode 100644 index 0000000..17111a3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_trapdoor.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/stalagnate_planks_trapdoor", + "textures": { + "particle": "betternether:block/anchor_tree_trapdoor", + "texture": "betternether:block/anchor_tree_trapdoor", + "side": "betternether:block/anchor_tree_trapdoor" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_vine_bottom.json b/src/main/resources/assets/betternether/models/block/anchor_tree_vine_bottom.json new file mode 100644 index 0000000..396c019 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_vine_bottom.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/anchor_tree_vine_end_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_vine_bottom_2.json b/src/main/resources/assets/betternether/models/block/anchor_tree_vine_bottom_2.json new file mode 100644 index 0000000..c9dbc14 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_vine_bottom_2.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/cross_inverted", + "textures": { + "cross": "betternether:block/anchor_tree_vine_end_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_vine_middle.json b/src/main/resources/assets/betternether/models/block/anchor_tree_vine_middle.json new file mode 100644 index 0000000..b29aee9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_vine_middle.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/anchor_tree_vine_end_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_vine_middle_2.json b/src/main/resources/assets/betternether/models/block/anchor_tree_vine_middle_2.json new file mode 100644 index 0000000..e67389d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_vine_middle_2.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/cross_inverted", + "textures": { + "cross": "betternether:block/anchor_tree_vine_end_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_vine_top.json b/src/main/resources/assets/betternether/models/block/anchor_tree_vine_top.json new file mode 100644 index 0000000..c0799d4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_vine_top.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/anchor_tree_vine" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_vine_top_2.json b/src/main/resources/assets/betternether/models/block/anchor_tree_vine_top_2.json new file mode 100644 index 0000000..6933262 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_vine_top_2.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/cross_inverted", + "textures": { + "cross": "betternether:block/anchor_tree_vine" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_wall_gate_closed.json b/src/main/resources/assets/betternether/models/block/anchor_tree_wall_gate_closed.json new file mode 100644 index 0000000..85e071b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_wall_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall", + "textures": { + "texture": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/anchor_tree_wall_gate_open.json b/src/main/resources/assets/betternether/models/block/anchor_tree_wall_gate_open.json new file mode 100644 index 0000000..f7062e2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/anchor_tree_wall_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall_open", + "textures": { + "texture": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_acacia.json b/src/main/resources/assets/betternether/models/block/bar_stool_acacia.json new file mode 100644 index 0000000..dd5a0d4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_acacia.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "block/acacia_planks", + "cloth": "block/red_wool" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_anchor_tree.json b/src/main/resources/assets/betternether/models/block/bar_stool_anchor_tree.json new file mode 100644 index 0000000..d852155 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_anchor_tree.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "betternether:block/anchor_tree_planks", + "cloth": "betternether:block/nether_brick_tile_large" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_birch.json b/src/main/resources/assets/betternether/models/block/bar_stool_birch.json new file mode 100644 index 0000000..f711774 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_birch.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "block/birch_planks", + "cloth": "block/red_wool" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_cincinnasite.json b/src/main/resources/assets/betternether/models/block/bar_stool_cincinnasite.json new file mode 100644 index 0000000..166c763 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_cincinnasite.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "betternether:block/cincinnasite_forged", + "cloth": "betternether:block/nether_brick_tile_large" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_crimson.json b/src/main/resources/assets/betternether/models/block/bar_stool_crimson.json new file mode 100644 index 0000000..8795cd9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_crimson.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "block/crimson_planks", + "cloth": "block/red_wool" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_dark_oak.json b/src/main/resources/assets/betternether/models/block/bar_stool_dark_oak.json new file mode 100644 index 0000000..500de2a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_dark_oak.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "block/dark_oak_planks", + "cloth": "block/red_wool" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_jungle.json b/src/main/resources/assets/betternether/models/block/bar_stool_jungle.json new file mode 100644 index 0000000..11075d5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_jungle.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "block/jungle_planks", + "cloth": "block/red_wool" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_mushroom.json b/src/main/resources/assets/betternether/models/block/bar_stool_mushroom.json new file mode 100644 index 0000000..86b12ea --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_mushroom.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "betternether:block/mushroom_planks", + "cloth": "block/red_wool" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_mushroom_fir.json b/src/main/resources/assets/betternether/models/block/bar_stool_mushroom_fir.json new file mode 100644 index 0000000..cb280a4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_mushroom_fir.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "betternether:block/mushroom_fir_planks", + "cloth": "betternether:block/nether_brick_tile_large" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_nether_sakura.json b/src/main/resources/assets/betternether/models/block/bar_stool_nether_sakura.json new file mode 100644 index 0000000..17476b5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_nether_sakura.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "betternether:block/nether_sakura_planks", + "cloth": "betternether:block/nether_brick_tile_large" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_oak.json b/src/main/resources/assets/betternether/models/block/bar_stool_oak.json new file mode 100644 index 0000000..24c94ac --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_oak.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "block/oak_planks", + "cloth": "block/red_wool" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_reeds.json b/src/main/resources/assets/betternether/models/block/bar_stool_reeds.json new file mode 100644 index 0000000..ea5aba2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_reeds.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "betternether:block/reeds_block_side", + "cloth": "betternether:block/nether_brick_tile_large" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_rubeus.json b/src/main/resources/assets/betternether/models/block/bar_stool_rubeus.json new file mode 100644 index 0000000..bbbf1f8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_rubeus.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "betternether:block/rubeus_planks", + "cloth": "betternether:block/nether_brick_tile_large" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_spruce.json b/src/main/resources/assets/betternether/models/block/bar_stool_spruce.json new file mode 100644 index 0000000..5e32e52 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_spruce.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "block/spruce_planks", + "cloth": "block/red_wool" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_stalagnate.json b/src/main/resources/assets/betternether/models/block/bar_stool_stalagnate.json new file mode 100644 index 0000000..2400528 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_stalagnate.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "betternether:block/stalagnate_planks", + "cloth": "betternether:block/nether_brick_tile_large" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_warped.json b/src/main/resources/assets/betternether/models/block/bar_stool_warped.json new file mode 100644 index 0000000..e637e31 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_warped.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "block/warped_planks", + "cloth": "block/red_wool" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_wart.json b/src/main/resources/assets/betternether/models/block/bar_stool_wart.json new file mode 100644 index 0000000..63abb63 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_wart.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "betternether:block/wart_planks", + "cloth": "betternether:block/nether_brick_tile_large" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bar_stool_willow.json b/src/main/resources/assets/betternether/models/block/bar_stool_willow.json new file mode 100644 index 0000000..b8c9d7c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bar_stool_willow.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/bn_bar_stool", + "textures": { + "texture": "betternether:block/willow_planks", + "cloth": "betternether:block/nether_brick_tile_large" + } +} diff --git a/src/main/resources/assets/betternether/models/block/barrel_anchor_tree.json b/src/main/resources/assets/betternether/models/block/barrel_anchor_tree.json new file mode 100644 index 0000000..7f8eada --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_anchor_tree.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_anchor_tree_top", + "bottom": "betternether:block/barrel_anchor_tree_bottom", + "side": "betternether:block/barrel_anchor_tree_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/barrel_anchor_tree_open.json b/src/main/resources/assets/betternether/models/block/barrel_anchor_tree_open.json new file mode 100644 index 0000000..0cc5b28 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_anchor_tree_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_anchor_tree_top_open", + "bottom": "betternether:block/barrel_anchor_tree_bottom", + "side": "betternether:block/barrel_anchor_tree_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/barrel_cactus.json b/src/main/resources/assets/betternether/models/block/barrel_cactus.json new file mode 100644 index 0000000..7828862 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_cactus.json @@ -0,0 +1,76 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cactus_barrel_top", + "side": "betternether:block/cactus_barrel_side", + "top": "betternether:block/cactus_barrel_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 13, 2, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#top" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#top" }, + "north": { "uv": [ 3, 14, 13, 16 ], "texture": "#side" }, + "south": { "uv": [ 3, 14, 13, 16 ], "texture": "#side" }, + "west": { "uv": [ 3, 14, 13, 16 ], "texture": "#side" }, + "east": { "uv": [ 3, 14, 13, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 12, 3 ], + "to": [ 13, 14, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#top" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#top" }, + "north": { "uv": [ 3, 2, 13, 4 ], "texture": "#side" }, + "south": { "uv": [ 3, 2, 13, 4 ], "texture": "#side" }, + "west": { "uv": [ 3, 2, 13, 4 ], "texture": "#side" }, + "east": { "uv": [ 3, 2, 13, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 2, 14 ], + "to": [ 14, 12, 16 ], + "faces": { + "down": { "uv": [ 2, 0, 14, 2 ], "texture": "#top" }, + "up": { "uv": [ 2, 14, 14, 16 ], "texture": "#top" }, + "north": { "uv": [ 2, 4, 14, 14 ], "texture": "#side" }, + "south": { "uv": [ 2, 4, 14, 14 ], "texture": "#side" }, + "west": { "uv": [ 14, 4, 16, 14 ], "texture": "#side" }, + "east": { "uv": [ 0, 4, 2, 14 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 2, 0 ], + "to": [ 14, 12, 2 ], + "faces": { + "down": { "uv": [ 2, 14, 14, 16 ], "texture": "#top" }, + "up": { "uv": [ 2, 0, 14, 2 ], "texture": "#top" }, + "north": { "uv": [ 2, 4, 14, 14 ], "texture": "#side" }, + "south": { "uv": [ 2, 4, 14, 14 ], "texture": "#side" }, + "west": { "uv": [ 0, 4, 2, 14 ], "texture": "#side" }, + "east": { "uv": [ 14, 4, 16, 14 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 2, 2 ], + "to": [ 16, 12, 14 ], + "faces": { + "down": { "uv": [ 0, 2, 16, 14 ], "texture": "#top" }, + "up": { "uv": [ 0, 2, 16, 14 ], "texture": "#top" }, + "north": { "uv": [ 0, 4, 16, 14 ], "texture": "#side" }, + "south": { "uv": [ 0, 4, 16, 14 ], "texture": "#side" }, + "west": { "uv": [ 2, 4, 14, 14 ], "texture": "#side" }, + "east": { "uv": [ 2, 4, 14, 14 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_cactus_2.json b/src/main/resources/assets/betternether/models/block/barrel_cactus_2.json new file mode 100644 index 0000000..97f8842 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_cactus_2.json @@ -0,0 +1,50 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cactus_barrel_top", + "side": "betternether:block/cactus_barrel_side", + "top": "betternether:block/cactus_barrel_top_2" + }, + "elements": [ + { + "__comment": "Box6", + "from": [ 4, 0, 4 ], + "to": [ 12, 12, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 4, 12, 16 ], "texture": "#side" }, + "south": { "uv": [ 4, 4, 12, 16 ], "texture": "#side" }, + "west": { "uv": [ 4, 4, 12, 16 ], "texture": "#side" }, + "east": { "uv": [ 4, 4, 12, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box6", + "from": [ 2, 2, 4 ], + "to": [ 14, 10, 12 ], + "faces": { + "down": { "uv": [ 2, 4, 14, 12 ], "texture": "#top" }, + "up": { "uv": [ 2, 4, 14, 12 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 14 ], "texture": "#side" }, + "south": { "uv": [ 2, 6, 14, 14 ], "texture": "#side" }, + "west": { "uv": [ 4, 6, 12, 14 ], "texture": "#side" }, + "east": { "uv": [ 4, 6, 12, 14 ], "texture": "#side" } + } + }, + { + "__comment": "Box6", + "from": [ 4, 2, 2 ], + "to": [ 12, 10, 14 ], + "faces": { + "down": { "uv": [ 4, 2, 12, 14 ], "texture": "#top" }, + "up": { "uv": [ 4, 2, 12, 14 ], "texture": "#top" }, + "north": { "uv": [ 4, 6, 12, 14 ], "texture": "#side" }, + "south": { "uv": [ 4, 6, 12, 14 ], "texture": "#side" }, + "west": { "uv": [ 2, 6, 14, 14 ], "texture": "#side" }, + "east": { "uv": [ 2, 6, 14, 14 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_cactus_3.json b/src/main/resources/assets/betternether/models/block/barrel_cactus_3.json new file mode 100644 index 0000000..973f94b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_cactus_3.json @@ -0,0 +1,50 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cactus_barrel_top", + "side": "betternether:block/cactus_barrel_side", + "top": "betternether:block/cactus_barrel_top_2" + }, + "elements": [ + { + "__comment": "Box6", + "from": [ 5, 0, 5 ], + "to": [ 11, 9, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#top" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#top" }, + "north": { "uv": [ 5, 7, 11, 16 ], "texture": "#side" }, + "south": { "uv": [ 5, 7, 11, 16 ], "texture": "#side" }, + "west": { "uv": [ 5, 7, 11, 16 ], "texture": "#side" }, + "east": { "uv": [ 5, 7, 11, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box6", + "from": [ 3, 2, 4 ], + "to": [ 13, 8, 12 ], + "faces": { + "down": { "uv": [ 3, 4, 13, 12 ], "texture": "#top" }, + "up": { "uv": [ 3, 4, 13, 12 ], "texture": "#top" }, + "north": { "uv": [ 3, 8, 13, 14 ], "texture": "#side" }, + "south": { "uv": [ 3, 8, 13, 14 ], "texture": "#side" }, + "west": { "uv": [ 4, 8, 12, 14 ], "texture": "#side" }, + "east": { "uv": [ 4, 8, 12, 14 ], "texture": "#side" } + } + }, + { + "__comment": "Box6", + "from": [ 4, 2, 3 ], + "to": [ 12, 8, 13 ], + "faces": { + "down": { "uv": [ 4, 3, 12, 13 ], "texture": "#top" }, + "up": { "uv": [ 4, 3, 12, 13 ], "texture": "#top" }, + "north": { "uv": [ 4, 8, 12, 14 ], "texture": "#side" }, + "south": { "uv": [ 4, 8, 12, 14 ], "texture": "#side" }, + "west": { "uv": [ 3, 8, 13, 14 ], "texture": "#side" }, + "east": { "uv": [ 3, 8, 13, 14 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_cactus_4.json b/src/main/resources/assets/betternether/models/block/barrel_cactus_4.json new file mode 100644 index 0000000..14a5961 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_cactus_4.json @@ -0,0 +1,24 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cactus_barrel_top", + "side": "betternether:block/cactus_barrel_side", + "top": "betternether:block/cactus_barrel_top_2" + }, + "elements": [ + { + "__comment": "Box6", + "from": [ 5, 0, 5 ], + "to": [ 11, 5, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#top" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#top" }, + "north": { "uv": [ 5, 11, 11, 16 ], "texture": "#side" }, + "south": { "uv": [ 5, 11, 11, 16 ], "texture": "#side" }, + "west": { "uv": [ 5, 11, 11, 16 ], "texture": "#side" }, + "east": { "uv": [ 5, 11, 11, 16 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_crimson.json b/src/main/resources/assets/betternether/models/block/barrel_crimson.json new file mode 100644 index 0000000..489ffd8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_crimson.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_crimson_top", + "bottom": "betternether:block/barrel_crimson_bottom", + "side": "betternether:block/barrel_crimson_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_crimson_open.json b/src/main/resources/assets/betternether/models/block/barrel_crimson_open.json new file mode 100644 index 0000000..2d90192 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_crimson_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_crimson_top_open", + "bottom": "betternether:block/barrel_crimson_bottom", + "side": "betternether:block/barrel_crimson_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_mushroom.json b/src/main/resources/assets/betternether/models/block/barrel_mushroom.json new file mode 100644 index 0000000..9007138 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_mushroom.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_mushroom_top", + "bottom": "betternether:block/barrel_mushroom_bottom", + "side": "betternether:block/barrel_mushroom_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_mushroom_fir.json b/src/main/resources/assets/betternether/models/block/barrel_mushroom_fir.json new file mode 100644 index 0000000..536566c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_mushroom_fir.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_mushroom_fir_top", + "bottom": "betternether:block/barrel_mushroom_fir_bottom", + "side": "betternether:block/barrel_mushroom_fir_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_mushroom_fir_open.json b/src/main/resources/assets/betternether/models/block/barrel_mushroom_fir_open.json new file mode 100644 index 0000000..0073e4c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_mushroom_fir_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_mushroom_fir_top_open", + "bottom": "betternether:block/barrel_mushroom_fir_bottom", + "side": "betternether:block/barrel_mushroom_fir_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_mushroom_open.json b/src/main/resources/assets/betternether/models/block/barrel_mushroom_open.json new file mode 100644 index 0000000..b1afe59 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_mushroom_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_mushroom_top_open", + "bottom": "betternether:block/barrel_mushroom_bottom", + "side": "betternether:block/barrel_mushroom_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_nether_sakura.json b/src/main/resources/assets/betternether/models/block/barrel_nether_sakura.json new file mode 100644 index 0000000..4a80925 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_nether_sakura.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_nether_sakura_top", + "bottom": "betternether:block/barrel_nether_sakura_bottom", + "side": "betternether:block/barrel_nether_sakura_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/barrel_nether_sakura_open.json b/src/main/resources/assets/betternether/models/block/barrel_nether_sakura_open.json new file mode 100644 index 0000000..2eedce6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_nether_sakura_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_nether_sakura_top_open", + "bottom": "betternether:block/barrel_nether_sakura_bottom", + "side": "betternether:block/barrel_nether_sakura_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/barrel_reed.json b/src/main/resources/assets/betternether/models/block/barrel_reed.json new file mode 100644 index 0000000..06a2051 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_reed.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_reed_top", + "bottom": "betternether:block/barrel_reed_bottom", + "side": "betternether:block/barrel_reed_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_reed_open.json b/src/main/resources/assets/betternether/models/block/barrel_reed_open.json new file mode 100644 index 0000000..bbf107c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_reed_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_reed_top_open", + "bottom": "betternether:block/barrel_reed_bottom", + "side": "betternether:block/barrel_reed_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_rubeus.json b/src/main/resources/assets/betternether/models/block/barrel_rubeus.json new file mode 100644 index 0000000..6884eab --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_rubeus.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_rubeus_top", + "bottom": "betternether:block/barrel_rubeus_bottom", + "side": "betternether:block/barrel_rubeus_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_rubeus_open.json b/src/main/resources/assets/betternether/models/block/barrel_rubeus_open.json new file mode 100644 index 0000000..8e3b038 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_rubeus_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_rubeus_top_open", + "bottom": "betternether:block/barrel_rubeus_bottom", + "side": "betternether:block/barrel_rubeus_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_stalagnate.json b/src/main/resources/assets/betternether/models/block/barrel_stalagnate.json new file mode 100644 index 0000000..386710d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_stalagnate.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_stalagnate_top", + "bottom": "betternether:block/barrel_stalagnate_bottom", + "side": "betternether:block/barrel_stalagnate_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_stalagnate_open.json b/src/main/resources/assets/betternether/models/block/barrel_stalagnate_open.json new file mode 100644 index 0000000..a63b229 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_stalagnate_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_stalagnate_top_open", + "bottom": "betternether:block/barrel_stalagnate_bottom", + "side": "betternether:block/barrel_stalagnate_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_warped.json b/src/main/resources/assets/betternether/models/block/barrel_warped.json new file mode 100644 index 0000000..a3f3beb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_warped.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_warped_top", + "bottom": "betternether:block/barrel_warped_bottom", + "side": "betternether:block/barrel_warped_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_warped_open.json b/src/main/resources/assets/betternether/models/block/barrel_warped_open.json new file mode 100644 index 0000000..3ec63e8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_warped_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_warped_top_open", + "bottom": "betternether:block/barrel_warped_bottom", + "side": "betternether:block/barrel_warped_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_wart.json b/src/main/resources/assets/betternether/models/block/barrel_wart.json new file mode 100644 index 0000000..12a3763 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_wart.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_wart_top", + "bottom": "betternether:block/barrel_wart_bottom", + "side": "betternether:block/barrel_wart_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_wart_open.json b/src/main/resources/assets/betternether/models/block/barrel_wart_open.json new file mode 100644 index 0000000..3c4c141 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_wart_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_wart_top_open", + "bottom": "betternether:block/barrel_wart_bottom", + "side": "betternether:block/barrel_wart_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_willow.json b/src/main/resources/assets/betternether/models/block/barrel_willow.json new file mode 100644 index 0000000..f0f7c86 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_willow.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_willow_top", + "bottom": "betternether:block/barrel_willow_bottom", + "side": "betternether:block/barrel_willow_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/barrel_willow_open.json b/src/main/resources/assets/betternether/models/block/barrel_willow_open.json new file mode 100644 index 0000000..bf3de86 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/barrel_willow_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "betternether:block/barrel_willow_top_open", + "bottom": "betternether:block/barrel_willow_bottom", + "side": "betternether:block/barrel_willow_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/basalt_bricks_1.json b/src/main/resources/assets/betternether/models/block/basalt_bricks_1.json new file mode 100644 index 0000000..ec1f70f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_bricks_1.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/basalt_bricks_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/basalt_bricks_2.json b/src/main/resources/assets/betternether/models/block/basalt_bricks_2.json new file mode 100644 index 0000000..8a48a43 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_bricks_2.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/basalt_bricks_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/basalt_bricks_inner_stairs.json b/src/main/resources/assets/betternether/models/block/basalt_bricks_inner_stairs.json new file mode 100644 index 0000000..4245341 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_bricks_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/basalt_bricks_2", + "top": "betternether:block/basalt_bricks_2", + "side": "betternether:block/basalt_bricks_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/basalt_bricks_outer_stairs.json b/src/main/resources/assets/betternether/models/block/basalt_bricks_outer_stairs.json new file mode 100644 index 0000000..ab7259b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_bricks_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/basalt_bricks_2", + "top": "betternether:block/basalt_bricks_2", + "side": "betternether:block/basalt_bricks_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/basalt_bricks_post.json b/src/main/resources/assets/betternether/models/block/basalt_bricks_post.json new file mode 100644 index 0000000..d033871 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_bricks_post.json @@ -0,0 +1,118 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/basalt_bricks_2", + "texture": "betternether:block/basalt_bricks_post_side", + "top": "block/basalt_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 2, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#top", "cullface": "down" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 14, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 4, 14, 12, 16 ], "texture": "#texture" }, + "west": { "uv": [ 4, 14, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 4, 14, 12, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 14, 4 ], + "to": [ 12, 16, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 4, 0, 12, 2 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 12, 2 ], "texture": "#texture" }, + "west": { "uv": [ 4, 0, 12, 2 ], "texture": "#texture" }, + "east": { "uv": [ 4, 0, 12, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 2, 4 ], + "to": [ 5, 14, 5 ], + "faces": { + "north": { "uv": [ 11, 2, 12, 14 ], "texture": "#texture" }, + "south": { "uv": [ 4, 2, 5, 14 ], "texture": "#texture" }, + "west": { "uv": [ 4, 2, 5, 14 ], "texture": "#texture" }, + "east": { "uv": [ 11, 2, 12, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 2, 4 ], + "to": [ 12, 14, 5 ], + "faces": { + "north": { "uv": [ 4, 2, 5, 14 ], "texture": "#texture" }, + "south": { "uv": [ 11, 2, 12, 14 ], "texture": "#texture" }, + "west": { "uv": [ 4, 2, 5, 14 ], "texture": "#texture" }, + "east": { "uv": [ 11, 2, 12, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 2, 11 ], + "to": [ 12, 14, 12 ], + "faces": { + "north": { "uv": [ 4, 2, 5, 14 ], "texture": "#texture" }, + "south": { "uv": [ 11, 2, 12, 14 ], "texture": "#texture" }, + "west": { "uv": [ 11, 2, 12, 14 ], "texture": "#texture" }, + "east": { "uv": [ 4, 2, 5, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 2, 11 ], + "to": [ 5, 14, 12 ], + "faces": { + "north": { "uv": [ 11, 2, 12, 14 ], "texture": "#texture" }, + "south": { "uv": [ 4, 2, 5, 14 ], "texture": "#texture" }, + "west": { "uv": [ 11, 2, 12, 14 ], "texture": "#texture" }, + "east": { "uv": [ 4, 2, 5, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 4.9, 2, 4.9 ], + "to": [ 11.1, 14, 11.1 ], + "faces": { + "north": { "uv": [ 5, 2, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 2, 11, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 2, 11, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 2, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box8", + "from": [ 4, 3, 5.9 ], + "to": [ 12, 13, 10.1 ], + "faces": { + "down": { "uv": [ 4, 6, 12, 10 ], "texture": "#texture" }, + "up": { "uv": [ 4, 6, 12, 10 ], "texture": "#texture" }, + "north": { "uv": [ 4, 3, 12, 13 ], "texture": "#texture" }, + "south": { "uv": [ 4, 3, 12, 13 ], "texture": "#texture" }, + "west": { "uv": [ 6, 3, 10, 13 ], "texture": "#texture" }, + "east": { "uv": [ 6, 3, 10, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box8", + "from": [ 5.9, 3, 4 ], + "to": [ 10.1, 13, 12 ], + "faces": { + "down": { "uv": [ 6, 4, 10, 12 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 10, 12 ], "texture": "#texture" }, + "north": { "uv": [ 6, 3, 10, 13 ], "texture": "#texture" }, + "south": { "uv": [ 6, 3, 10, 13 ], "texture": "#texture" }, + "west": { "uv": [ 4, 3, 12, 13 ], "texture": "#texture" }, + "east": { "uv": [ 4, 3, 12, 13 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/basalt_bricks_slab_1.json b/src/main/resources/assets/betternether/models/block/basalt_bricks_slab_1.json new file mode 100644 index 0000000..96ec0b4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_bricks_slab_1.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/basalt_bricks_1", + "top": "betternether:block/basalt_bricks_1", + "side": "betternether:block/basalt_bricks_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/basalt_bricks_slab_2.json b/src/main/resources/assets/betternether/models/block/basalt_bricks_slab_2.json new file mode 100644 index 0000000..abedd35 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_bricks_slab_2.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/basalt_bricks_2", + "top": "betternether:block/basalt_bricks_2", + "side": "betternether:block/basalt_bricks_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/basalt_bricks_stairs.json b/src/main/resources/assets/betternether/models/block/basalt_bricks_stairs.json new file mode 100644 index 0000000..8cea231 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_bricks_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/basalt_bricks_2", + "top": "betternether:block/basalt_bricks_2", + "side": "betternether:block/basalt_bricks_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/basalt_bricks_wall_down.json b/src/main/resources/assets/betternether/models/block/basalt_bricks_wall_down.json new file mode 100644 index 0000000..1fa4bb9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_bricks_wall_down.json @@ -0,0 +1,44 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/basalt_bricks_wall_side", + "texture": "betternether:block/basalt_bricks_wall_side", + "top": "block/basalt_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 14, 0 ], + "to": [ 11, 16, 8 ], + "faces": { + "down": { "uv": [ 5, 8, 11, 16 ], "texture": "#top" }, + "up": { "uv": [ 5, 0, 11, 8 ], "texture": "#top" }, + "north": { "uv": [ 5, 0, 11, 2 ], "texture": "#texture", "cullface": "north" }, + "west": { "uv": [ 0, 0, 8, 2 ], "texture": "#texture" }, + "east": { "uv": [ 8, 0, 16, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 0, 0 ], + "to": [ 11, 2, 8 ], + "faces": { + "down": { "uv": [ 5, 8, 11, 16 ], "texture": "#top", "cullface": "down" }, + "up": { "uv": [ 5, 0, 11, 8 ], "texture": "#top" }, + "north": { "uv": [ 5, 14, 11, 16 ], "texture": "#texture", "cullface": "north" }, + "west": { "uv": [ 0, 14, 8, 16 ], "texture": "#texture" }, + "east": { "uv": [ 8, 14, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 2, 0 ], + "to": [ 10, 14, 8 ], + "faces": { + "north": { "uv": [ 6, 2, 10, 14 ], "texture": "#texture", "cullface": "north" }, + "west": { "uv": [ 0, 2, 8, 14 ], "texture": "#texture" }, + "east": { "uv": [ 8, 2, 16, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/basalt_bricks_wall_up.json b/src/main/resources/assets/betternether/models/block/basalt_bricks_wall_up.json new file mode 100644 index 0000000..73c658f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_bricks_wall_up.json @@ -0,0 +1,44 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/basalt_bricks_wall_side", + "texture": "betternether:block/basalt_bricks_wall_side", + "top": "block/basalt_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 12, 0 ], + "to": [ 11, 14, 8 ], + "faces": { + "down": { "uv": [ 5, 8, 11, 16 ], "texture": "#top" }, + "up": { "uv": [ 5, 0, 11, 8 ], "texture": "#top" }, + "north": { "uv": [ 5, 2, 11, 4 ], "texture": "#texture", "cullface": "north" }, + "west": { "uv": [ 0, 2, 8, 4 ], "texture": "#texture" }, + "east": { "uv": [ 8, 2, 16, 4 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 0, 0 ], + "to": [ 11, 2, 8 ], + "faces": { + "down": { "uv": [ 5, 8, 11, 16 ], "texture": "#top", "cullface": "down" }, + "up": { "uv": [ 5, 0, 11, 8 ], "texture": "#top" }, + "north": { "uv": [ 5, 14, 11, 16 ], "texture": "#texture", "cullface": "north" }, + "west": { "uv": [ 0, 14, 8, 16 ], "texture": "#texture" }, + "east": { "uv": [ 8, 14, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 2, 0 ], + "to": [ 10, 12, 8 ], + "faces": { + "north": { "uv": [ 6, 4, 10, 14 ], "texture": "#texture", "cullface": "north" }, + "west": { "uv": [ 0, 3, 8, 13 ], "texture": "#texture" }, + "east": { "uv": [ 8, 3, 16, 13 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/basalt_furnace.json b/src/main/resources/assets/betternether/models/block/basalt_furnace.json new file mode 100644 index 0000000..b34fac0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_furnace.json @@ -0,0 +1,8 @@ +{ + "parent": "block/orientable", + "textures": { + "top": "betternether:block/basalt_furnace_top", + "front": "betternether:block/basalt_furnace_front_off", + "side": "betternether:block/basalt_furnace_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/basalt_furnace_on.json b/src/main/resources/assets/betternether/models/block/basalt_furnace_on.json new file mode 100644 index 0000000..769c689 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_furnace_on.json @@ -0,0 +1,8 @@ +{ + "parent": "block/orientable", + "textures": { + "top": "betternether:block/basalt_furnace_top", + "front": "betternether:block/basalt_furnace_front_on", + "side": "betternether:block/basalt_furnace_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/basalt_slab.json b/src/main/resources/assets/betternether/models/block/basalt_slab.json new file mode 100644 index 0000000..a207278 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "block/basalt_top", + "top": "block/basalt_top", + "side": "block/basalt_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/basalt_stalactite_0.json b/src/main/resources/assets/betternether/models/block/basalt_stalactite_0.json new file mode 100644 index 0000000..7e21b0b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_stalactite_0.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_0", + "textures": { + "particle": "block/basalt_side", + "texture": "block/basalt_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/basalt_stalactite_1.json b/src/main/resources/assets/betternether/models/block/basalt_stalactite_1.json new file mode 100644 index 0000000..ac993f9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_stalactite_1.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_1", + "textures": { + "particle": "block/basalt_side", + "texture": "block/basalt_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/basalt_stalactite_2.json b/src/main/resources/assets/betternether/models/block/basalt_stalactite_2.json new file mode 100644 index 0000000..f6bd833 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_stalactite_2.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_2", + "textures": { + "particle": "block/basalt_side", + "texture": "block/basalt_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/basalt_stalactite_3.json b/src/main/resources/assets/betternether/models/block/basalt_stalactite_3.json new file mode 100644 index 0000000..b4ce242 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_stalactite_3.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_3", + "textures": { + "particle": "block/basalt_side", + "texture": "block/basalt_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/basalt_stalactite_4.json b/src/main/resources/assets/betternether/models/block/basalt_stalactite_4.json new file mode 100644 index 0000000..a5aab4d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_stalactite_4.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_4", + "textures": { + "particle": "block/basalt_side", + "texture": "block/basalt_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/basalt_stalactite_5.json b/src/main/resources/assets/betternether/models/block/basalt_stalactite_5.json new file mode 100644 index 0000000..d30f104 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_stalactite_5.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_5", + "textures": { + "particle": "block/basalt_side", + "texture": "block/basalt_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/basalt_stalactite_6.json b/src/main/resources/assets/betternether/models/block/basalt_stalactite_6.json new file mode 100644 index 0000000..6ba7353 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_stalactite_6.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_6", + "textures": { + "particle": "block/basalt_side", + "texture": "block/basalt_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/basalt_stalactite_7.json b/src/main/resources/assets/betternether/models/block/basalt_stalactite_7.json new file mode 100644 index 0000000..f1e6ee3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/basalt_stalactite_7.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_7", + "textures": { + "particle": "block/basalt_side", + "texture": "block/basalt_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/black_apple_1.json b/src/main/resources/assets/betternether/models/block/black_apple_1.json new file mode 100644 index 0000000..ea15d20 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/black_apple_1.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/black_apple_young" + } +} diff --git a/src/main/resources/assets/betternether/models/block/black_apple_2.json b/src/main/resources/assets/betternether/models/block/black_apple_2.json new file mode 100644 index 0000000..4e2ca32 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/black_apple_2.json @@ -0,0 +1,44 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/black_apple_medium", + "texture": "betternether:block/black_apple_medium" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7.5, 0, 6 ], + "to": [ 8.5, 5, 8 ], + "faces": { + "down": { "uv": [ 5.5, 14, 7.5, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 5, 10, 7, 12 ], "texture": "#texture" }, + "north": { "uv": [ 5, 10, 6, 16 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 7, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 10, 7, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 10, 7, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7.5, 6, 6 ], + "to": [ 8.5, 8, 7.5 ], + "faces": { + "up": { "uv": [ 6, 8, 7, 9.5 ], "texture": "#texture" }, + "north": { "uv": [ 5, 8, 6, 10 ], "texture": "#texture" }, + "south": { "uv": [ 6, 8, 7, 10 ], "texture": "#texture" }, + "west": { "uv": [ 5, 8, 6.5, 10 ], "texture": "#texture" }, + "east": { "uv": [ 5, 8, 6.5, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX12", + "from": [ 8, 4, 1 ], + "to": [ 8.001, 16, 10 ], + "faces": { + "west": { "uv": [ 0, 0, 9, 12 ], "texture": "#texture" }, + "east": { "uv": [ 9, 0, 0, 12 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/black_apple_3.json b/src/main/resources/assets/betternether/models/block/black_apple_3.json new file mode 100644 index 0000000..7e5132c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/black_apple_3.json @@ -0,0 +1,69 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/black_apple", + "texture": "betternether:block/black_apple" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 0, 6 ], + "to": [ 9, 6, 8 ], + "faces": { + "down": { "uv": [ 5.5, 14, 7.5, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 5, 10, 7, 12 ], "texture": "#texture" }, + "north": { "uv": [ 5, 10, 7, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 10, 7, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 10, 7, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 10, 7, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7.5, 6, 6 ], + "to": [ 8.5, 8, 7.5 ], + "faces": { + "up": { "uv": [ 6, 8, 7, 9.5 ], "texture": "#texture" }, + "north": { "uv": [ 5, 8, 6, 10 ], "texture": "#texture" }, + "south": { "uv": [ 6, 8, 7, 10 ], "texture": "#texture" }, + "west": { "uv": [ 5, 8, 6.5, 10 ], "texture": "#texture" }, + "east": { "uv": [ 5, 8, 6.5, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "Box9", + "from": [ 6, 7, 8.5 ], + "to": [ 10, 11, 12.5 ], + "faces": { + "down": { "uv": [ 10, 6, 14, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 10, 6, 14, 10 ], "texture": "#texture" }, + "north": { "uv": [ 14, 6, 10, 10 ], "texture": "#texture" }, + "south": { "uv": [ 10, 6, 14, 10 ], "texture": "#texture", "rotation": 180 }, + "west": { "uv": [ 10, 6, 14, 10 ], "texture": "#texture" }, + "east": { "uv": [ 10, 6, 14, 10 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "Box10", + "from": [ 7, 6, 9.5 ], + "to": [ 9, 7, 11.5 ], + "faces": { + "down": { "uv": [ 11, 13, 13, 15 ], "texture": "#texture" }, + "north": { "uv": [ 11, 11, 13, 12 ], "texture": "#texture" }, + "south": { "uv": [ 11, 11, 13, 12 ], "texture": "#texture" }, + "west": { "uv": [ 11, 11, 13, 12 ], "texture": "#texture" }, + "east": { "uv": [ 11, 11, 13, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX12", + "from": [ 8, 4, 1 ], + "to": [ 8.001, 16, 11 ], + "faces": { + "west": { "uv": [ 0, 0, 10, 12 ], "texture": "#texture" }, + "east": { "uv": [ 10, 0, 0, 12 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/black_apple_seed.json b/src/main/resources/assets/betternether/models/block/black_apple_seed.json new file mode 100644 index 0000000..881e37c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/black_apple_seed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/black_apple_seed" + } +} diff --git a/src/main/resources/assets/betternether/models/block/black_bush_01.json b/src/main/resources/assets/betternether/models/block/black_bush_01.json new file mode 100644 index 0000000..e217414 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/black_bush_01.json @@ -0,0 +1,21 @@ +{ + "parent": "block/block", + "textures": + { + "particle": "betternether:block/black_bush", + "texture": "betternether:block/black_bush" + }, + "elements": [ + { "from": [ 6, 0, 6 ], + "to": [ 10, 4, 10 ], + "faces": { + "down": { "texture": "#texture" }, + "up": { "texture": "#texture" }, + "north": { "texture": "#texture" }, + "south": { "texture": "#texture" }, + "west": { "texture": "#texture" }, + "east": { "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/black_bush_02.json b/src/main/resources/assets/betternether/models/block/black_bush_02.json new file mode 100644 index 0000000..4488223 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/black_bush_02.json @@ -0,0 +1,21 @@ +{ + "parent": "block/block", + "textures": + { + "particle": "betternether:block/black_bush", + "texture": "betternether:block/black_bush" + }, + "elements": [ + { "from": [ 5, 0, 5 ], + "to": [ 11, 6, 11 ], + "faces": { + "down": { "texture": "#texture" }, + "up": { "texture": "#texture" }, + "north": { "texture": "#texture" }, + "south": { "texture": "#texture" }, + "west": { "texture": "#texture" }, + "east": { "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/black_bush_03.json b/src/main/resources/assets/betternether/models/block/black_bush_03.json new file mode 100644 index 0000000..e0181e4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/black_bush_03.json @@ -0,0 +1,21 @@ +{ + "parent": "block/block", + "textures": + { + "particle": "betternether:block/black_bush", + "texture": "betternether:block/black_bush" + }, + "elements": [ + { "from": [ 4, 0, 4 ], + "to": [ 12, 8, 12 ], + "faces": { + "down": { "texture": "#texture" }, + "up": { "texture": "#texture" }, + "north": { "texture": "#texture" }, + "south": { "texture": "#texture" }, + "west": { "texture": "#texture" }, + "east": { "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/black_bush_04.json b/src/main/resources/assets/betternether/models/block/black_bush_04.json new file mode 100644 index 0000000..54a1010 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/black_bush_04.json @@ -0,0 +1,21 @@ +{ + "parent": "block/block", + "textures": + { + "particle": "betternether:block/black_bush", + "texture": "betternether:block/black_bush" + }, + "elements": [ + { "from": [ 3, 0, 3 ], + "to": [ 13, 10, 13 ], + "faces": { + "down": { "texture": "#texture" }, + "up": { "texture": "#texture" }, + "north": { "texture": "#texture" }, + "south": { "texture": "#texture" }, + "west": { "texture": "#texture" }, + "east": { "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/black_vine_1.json b/src/main/resources/assets/betternether/models/block/black_vine_1.json new file mode 100644 index 0000000..acbab5f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/black_vine_1.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/black_vine" + } +} diff --git a/src/main/resources/assets/betternether/models/block/black_vine_2.json b/src/main/resources/assets/betternether/models/block/black_vine_2.json new file mode 100644 index 0000000..1b2a82d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/black_vine_2.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block_inverted", + "textures": { + "texture": "betternether:block/black_vine" + } +} diff --git a/src/main/resources/assets/betternether/models/block/black_vine_bottom_1.json b/src/main/resources/assets/betternether/models/block/black_vine_bottom_1.json new file mode 100644 index 0000000..c696ddc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/black_vine_bottom_1.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/black_vine_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/black_vine_bottom_2.json b/src/main/resources/assets/betternether/models/block/black_vine_bottom_2.json new file mode 100644 index 0000000..f5851b1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/black_vine_bottom_2.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block_inverted", + "textures": { + "texture": "betternether:block/black_vine_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blackstone_furnace.json b/src/main/resources/assets/betternether/models/block/blackstone_furnace.json new file mode 100644 index 0000000..faa8c08 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blackstone_furnace.json @@ -0,0 +1,8 @@ +{ + "parent": "block/orientable", + "textures": { + "top": "betternether:block/blackstone_furnace_top", + "front": "betternether:block/blackstone_furnace_front_off", + "side": "betternether:block/blackstone_furnace_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blackstone_furnace_on.json b/src/main/resources/assets/betternether/models/block/blackstone_furnace_on.json new file mode 100644 index 0000000..6b83ef4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blackstone_furnace_on.json @@ -0,0 +1,8 @@ +{ + "parent": "block/orientable", + "textures": { + "top": "betternether:block/blackstone_furnace_top", + "front": "betternether:block/blackstone_furnace_front_on", + "side": "betternether:block/blackstone_furnace_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blackstone_stalactite_0.json b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_0.json new file mode 100644 index 0000000..5158ead --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_0.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_0", + "textures": { + "particle": "block/blackstone", + "texture": "block/blackstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/blackstone_stalactite_1.json b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_1.json new file mode 100644 index 0000000..05975ef --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_1.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_1", + "textures": { + "particle": "block/blackstone", + "texture": "block/blackstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/blackstone_stalactite_2.json b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_2.json new file mode 100644 index 0000000..b2f27f1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_2.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_2", + "textures": { + "particle": "block/blackstone", + "texture": "block/blackstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/blackstone_stalactite_3.json b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_3.json new file mode 100644 index 0000000..5921522 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_3.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_3", + "textures": { + "particle": "block/blackstone", + "texture": "block/blackstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/blackstone_stalactite_4.json b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_4.json new file mode 100644 index 0000000..63f9ab2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_4.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_4", + "textures": { + "particle": "block/blackstone", + "texture": "block/blackstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/blackstone_stalactite_5.json b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_5.json new file mode 100644 index 0000000..07647ea --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_5.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_5", + "textures": { + "particle": "block/blackstone", + "texture": "block/blackstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/blackstone_stalactite_6.json b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_6.json new file mode 100644 index 0000000..6f9650f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_6.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_6", + "textures": { + "particle": "block/blackstone", + "texture": "block/blackstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/blackstone_stalactite_7.json b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_7.json new file mode 100644 index 0000000..fa82a65 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blackstone_stalactite_7.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_7", + "textures": { + "particle": "block/blackstone", + "texture": "block/blackstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/block_eyeball.json b/src/main/resources/assets/betternether/models/block/block_eyeball.json new file mode 100644 index 0000000..04b3a37 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/block_eyeball.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/eye_side", + "down": "betternether:block/eye_bottom", + "up": "betternether:block/eye_top", + "north": "betternether:block/eye_side", + "east": "betternether:block/eye_side", + "south": "betternether:block/eye_side", + "west": "betternether:block/eye_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/block_eyeball_small.json b/src/main/resources/assets/betternether/models/block/block_eyeball_small.json new file mode 100644 index 0000000..0fa556a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/block_eyeball_small.json @@ -0,0 +1,22 @@ +{ + "parent": "block/block", + "textures": { + "particle": "betternether:block/eye_side", + "down": "betternether:block/eye_small_bottom", + "up": "betternether:block/eye_top", + "side": "betternether:block/eye_side" + }, + "elements": [ + { "from": [ 4, 8, 4 ], + "to": [ 12, 16, 12 ], + "faces": { + "down": { "texture": "#down" }, + "up": { "texture": "#up", "cullface": "up" }, + "north": { "texture": "#side" }, + "south": { "texture": "#side" }, + "west": { "texture": "#side" }, + "east": { "texture": "#side" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian.json b/src/main/resources/assets/betternether/models/block/blue_obsidian.json new file mode 100644 index 0000000..12ffe2f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/blue_obsidian" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks.json new file mode 100644 index 0000000..0c229c7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/blue_obsidian_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks_half_slab.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks_half_slab.json new file mode 100644 index 0000000..31d1a7d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/blue_obsidian_bricks", + "top": "betternether:block/blue_obsidian_bricks", + "side": "betternether:block/blue_obsidian_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks_inner_stairs.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks_inner_stairs.json new file mode 100644 index 0000000..9393ad8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/blue_obsidian_bricks", + "top": "betternether:block/blue_obsidian_bricks", + "side": "betternether:block/blue_obsidian_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks_outer_stairs.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks_outer_stairs.json new file mode 100644 index 0000000..4333362 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/blue_obsidian_bricks", + "top": "betternether:block/blue_obsidian_bricks", + "side": "betternether:block/blue_obsidian_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks_stairs.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks_stairs.json new file mode 100644 index 0000000..89965e1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_bricks_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/blue_obsidian_bricks", + "top": "betternether:block/blue_obsidian_bricks", + "side": "betternether:block/blue_obsidian_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_glass.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_glass.json new file mode 100644 index 0000000..b379615 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_glass.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/blue_obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_noside.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_noside.json new file mode 100644 index 0000000..44ba052 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/blue_obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_noside_alt.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_noside_alt.json new file mode 100644 index 0000000..a498b80 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/blue_obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_post.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_post.json new file mode 100644 index 0000000..318b918 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/blue_obsidian_glass", + "pane": "betternether:block/blue_obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_side.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_side.json new file mode 100644 index 0000000..f159bf0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/blue_obsidian_glass", + "pane": "betternether:block/blue_obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_side_alt.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_side_alt.json new file mode 100644 index 0000000..a0f3a93 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_glass_pane_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/blue_obsidian_glass", + "pane": "betternether:block/blue_obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_tile.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_tile.json new file mode 100644 index 0000000..338e0d3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_tile.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/blue_obsidian_tile" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_half_slab.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_half_slab.json new file mode 100644 index 0000000..4bd8ee1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/blue_obsidian_tile_small", + "top": "betternether:block/blue_obsidian_tile_small", + "side": "betternether:block/blue_obsidian_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_inner_stairs.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_inner_stairs.json new file mode 100644 index 0000000..0a450d1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/blue_obsidian_tile_small", + "top": "betternether:block/blue_obsidian_tile_small", + "side": "betternether:block/blue_obsidian_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_outer_stairs.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_outer_stairs.json new file mode 100644 index 0000000..472641f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/blue_obsidian_tile_small", + "top": "betternether:block/blue_obsidian_tile_small", + "side": "betternether:block/blue_obsidian_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_small.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_small.json new file mode 100644 index 0000000..0dfc42e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_small.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/blue_obsidian_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_stairs.json b/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_stairs.json new file mode 100644 index 0000000..73f699d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/blue_obsidian_tile_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/blue_obsidian_tile_small", + "top": "betternether:block/blue_obsidian_tile_small", + "side": "betternether:block/blue_obsidian_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bn_bar_stool.json b/src/main/resources/assets/betternether/models/block/bn_bar_stool.json new file mode 100644 index 0000000..38d88ea --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bn_bar_stool.json @@ -0,0 +1,162 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "#texture" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 13, 5 ], + "to": [ 12, 15, 11 ], + "faces": { + "down": { "uv": [ 4, 5, 12, 11 ], "texture": "#texture" }, + "up": { "uv": [ 4, 5, 12, 11 ], "texture": "#texture" }, + "north": { "uv": [ 4, 1, 12, 3 ], "texture": "#texture" }, + "south": { "uv": [ 4, 1, 12, 3 ], "texture": "#texture" }, + "west": { "uv": [ 5, 1, 11, 3 ], "texture": "#texture" }, + "east": { "uv": [ 5, 1, 11, 3 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 13, 4 ], + "to": [ 11, 15, 5 ], + "faces": { + "down": { "uv": [ 5, 11, 11, 12 ], "texture": "#texture" }, + "up": { "uv": [ 5, 4, 11, 5 ], "texture": "#texture" }, + "north": { "uv": [ 5, 1, 11, 3 ], "texture": "#texture" }, + "west": { "uv": [ 4, 1, 5, 3 ], "texture": "#texture" }, + "east": { "uv": [ 11, 1, 12, 3 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 13, 11 ], + "to": [ 11, 15, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 11, 5 ], "texture": "#texture" }, + "up": { "uv": [ 5, 11, 11, 12 ], "texture": "#texture" }, + "south": { "uv": [ 5, 1, 11, 3 ], "texture": "#texture" }, + "west": { "uv": [ 11, 1, 12, 3 ], "texture": "#texture" }, + "east": { "uv": [ 4, 1, 5, 3 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 15, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#cloth" }, + "north": { "uv": [ 5, 0, 11, 1 ], "texture": "#cloth" }, + "south": { "uv": [ 5, 0, 11, 1 ], "texture": "#cloth" }, + "west": { "uv": [ 5, 0, 11, 1 ], "texture": "#cloth" }, + "east": { "uv": [ 5, 0, 11, 1 ], "texture": "#cloth" } + } + }, + { + "__comment": "Box5", + "from": [ 5.5, 12, 5.5 ], + "to": [ 10.5, 13, 10.5 ], + "faces": { + "down": { "uv": [ 5.5, 5.5, 10.5, 10.5 ], "texture": "#texture" }, + "north": { "uv": [ 5.5, 3, 10.5, 4 ], "texture": "#texture" }, + "south": { "uv": [ 5.5, 3, 10.5, 4 ], "texture": "#texture" }, + "west": { "uv": [ 5.5, 3, 10.5, 4 ], "texture": "#texture" }, + "east": { "uv": [ 5.5, 3, 10.5, 4 ], "texture": "#texture" } + } + }, + { + "__comment": "Box5", + "from": [ 5, 0, 5 ], + "to": [ 6, 13, 6 ], + "faces": { + "down": { "uv": [ 5, 10, 6, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 1, 5, 14, 6 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 2, 9, 15, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 1, 13, 14, 14 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 2, 9, 15, 10 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box5", + "from": [ 5, 0, 10 ], + "to": [ 6, 13, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 6, 6 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 9, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 3, 13, 16, 14 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 3, 13, 16, 14 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 3, 1, 16, 2 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box5", + "from": [ 10, 0, 10 ], + "to": [ 11, 13, 11 ], + "faces": { + "down": { "uv": [ 10, 5, 11, 6 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 1, 16, 2 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 3, 5, 16, 6 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 3, 13, 16, 14 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 3, 9, 16, 10 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box5", + "from": [ 10, 0, 5 ], + "to": [ 11, 13, 6 ], + "faces": { + "down": { "uv": [ 10, 10, 11, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 13, 16, 14 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 0, 9, 13, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 3, 5, 16, 6 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 0, 1, 13, 2 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box5", + "from": [ 10, 5, 6 ], + "to": [ 11, 6, 10 ], + "faces": { + "down": { "uv": [ 7, 9, 11, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 3, 9, 7, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 3, 5, 7, 6 ], "texture": "#texture" }, + "east": { "uv": [ 3, 5, 7, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box5", + "from": [ 6, 7, 5 ], + "to": [ 10, 8, 6 ], + "faces": { + "down": { "uv": [ 6.5, 9, 10.5, 10 ], "texture": "#texture" }, + "up": { "uv": [ 4, 9, 8, 10 ], "texture": "#texture" }, + "north": { "uv": [ 2, 9, 6, 10 ], "texture": "#texture" }, + "south": { "uv": [ 7, 9, 11, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "Box5", + "from": [ 6, 7, 10 ], + "to": [ 10, 8, 11 ], + "faces": { + "down": { "uv": [ 4, 5, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 6, 9, 10, 10 ], "texture": "#texture" }, + "north": { "uv": [ 4, 9, 8, 10 ], "texture": "#texture" }, + "south": { "uv": [ 5, 9, 9, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "Box5", + "from": [ 5, 5, 6 ], + "to": [ 6, 6, 10 ], + "faces": { + "down": { "uv": [ 7, 9, 11, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 3, 9, 7, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 3, 5, 7, 6 ], "texture": "#texture" }, + "east": { "uv": [ 3, 5, 7, 6 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bn_chair.json b/src/main/resources/assets/betternether/models/block/bn_chair.json new file mode 100644 index 0000000..3f71e29 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bn_chair.json @@ -0,0 +1,200 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "#texture" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 3, 9, 3 ], + "to": [ 13, 10, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture" }, + "north": { "uv": [ 3, 6, 13, 7 ], "texture": "#texture" }, + "south": { "uv": [ 3, 6, 13, 7 ], "texture": "#texture" }, + "west": { "uv": [ 3, 6, 13, 7 ], "texture": "#texture" }, + "east": { "uv": [ 3, 6, 13, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 9, 5 ], + "faces": { + "down": { "uv": [ 3, 11, 5, 13 ], "texture": "#texture" }, + "north": { "uv": [ 11, 7, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 7, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 7, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 7, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 16, 3 ], + "to": [ 5, 21, 5 ], + "faces": { + "up": { "uv": [ 3, 3, 5, 5 ], "texture": "#texture" }, + "north": { "uv": [ 11, 11, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 11, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 11, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 9, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 13, 13 ], "texture": "#texture" }, + "north": { "uv": [ 3, 7, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 7, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 7, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 7, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 16, 3 ], + "to": [ 13, 21, 5 ], + "faces": { + "up": { "uv": [ 11, 3, 13, 5 ], "texture": "#texture" }, + "north": { "uv": [ 3, 11, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 11, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 11, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 10, 3 ], + "to": [ 13, 16, 5 ], + "faces": { + "north": { "uv": [ 3, 0, 5, 6 ], "texture": "#texture" }, + "south": { "uv": [ 11, 0, 13, 6 ], "texture": "#texture" }, + "west": { "uv": [ 3, 0, 5, 6 ], "texture": "#texture" }, + "east": { "uv": [ 11, 0, 13, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 10, 3 ], + "to": [ 5, 16, 5 ], + "faces": { + "north": { "uv": [ 11, 0, 13, 6 ], "texture": "#texture" }, + "south": { "uv": [ 3, 0, 5, 6 ], "texture": "#texture" }, + "west": { "uv": [ 3, 0, 5, 6 ], "texture": "#texture" }, + "east": { "uv": [ 11, 0, 13, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 9, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 5, 5 ], "texture": "#texture" }, + "north": { "uv": [ 11, 7, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 7, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 7, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 7, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 9, 13 ], + "faces": { + "down": { "uv": [ 11, 3, 13, 5 ], "texture": "#texture" }, + "north": { "uv": [ 3, 7, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 7, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 7, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 7, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 14, 4 ], + "to": [ 13, 16, 5 ], + "faces": { + "down": { "uv": [ 3, 11, 13, 12 ], "texture": "#texture" }, + "north": { "uv": [ 3, 0, 13, 2 ], "texture": "#texture" }, + "south": { "uv": [ 3, 0, 13, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 21, 3 ], + "to": [ 12, 22, 5 ], + "faces": { + "down": { "uv": [ 4, 11, 12, 13 ], "texture": "#texture" }, + "up": { "uv": [ 4, 3, 12, 5 ], "texture": "#texture" }, + "north": { "uv": [ 4, 10, 12, 11 ], "texture": "#texture" }, + "south": { "uv": [ 4, 10, 12, 11 ], "texture": "#texture" }, + "west": { "uv": [ 3, 10, 5, 11 ], "texture": "#texture" }, + "east": { "uv": [ 11, 10, 13, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 16, 4 ], + "to": [ 13, 21, 5 ], + "faces": { + "up": { "uv": [ 3, 4, 13, 5 ], "texture": "#texture" }, + "north": { "uv": [ 3, 11, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 11, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 8, 4 ], + "to": [ 12, 9, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture" }, + "north": { "uv": [ 4, 7, 12, 8 ], "texture": "#texture" }, + "south": { "uv": [ 4, 7, 12, 8 ], "texture": "#texture" }, + "west": { "uv": [ 4, 7, 12, 8 ], "texture": "#texture" }, + "east": { "uv": [ 4, 7, 12, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 20, 3 ], + "to": [ 11, 21, 4 ], + "faces": { + "down": { "uv": [ 5, 12, 11, 13 ], "texture": "#texture" }, + "north": { "uv": [ 5, 11, 11, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 14, 3 ], + "to": [ 11, 16, 4 ], + "faces": { + "down": { "uv": [ 5, 12, 11, 13 ], "texture": "#texture" }, + "up": { "uv": [ 5, 3, 11, 4 ], "texture": "#texture" }, + "north": { "uv": [ 5, 0, 11, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 4, 5 ], + "to": [ 5, 5, 11 ], + "faces": { + "down": { "uv": [ 4, 5, 5, 11 ], "texture": "#texture" }, + "up": { "uv": [ 4, 5, 5, 11 ], "texture": "#texture" }, + "west": { "uv": [ 5, 11, 11, 12 ], "texture": "#texture" }, + "east": { "uv": [ 5, 11, 11, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 4, 5 ], + "to": [ 12, 5, 11 ], + "faces": { + "down": { "uv": [ 11, 5, 12, 11 ], "texture": "#texture" }, + "up": { "uv": [ 11, 5, 12, 11 ], "texture": "#texture" }, + "west": { "uv": [ 5, 11, 11, 12 ], "texture": "#texture" }, + "east": { "uv": [ 5, 11, 11, 12 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bn_door_bottom.json b/src/main/resources/assets/betternether/models/block/bn_door_bottom.json new file mode 100644 index 0000000..35514de --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bn_door_bottom.json @@ -0,0 +1,18 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#front" + }, + "elements": [ + { "from": [ 0, 0, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 13, 0, 16, 16 ], "texture": "#side", "cullface": "down" }, + "north": { "uv": [ 3, 0, 0, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#front" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/bn_door_bottom_rh.json b/src/main/resources/assets/betternether/models/block/bn_door_bottom_rh.json new file mode 100644 index 0000000..3f7fa46 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bn_door_bottom_rh.json @@ -0,0 +1,18 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#front" + }, + "elements": [ + { "from": [ 0, 0, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 13, 0, 16, 16 ], "texture": "#side", "cullface": "down" }, + "north": { "uv": [ 3, 0, 0, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#front" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/bn_door_top.json b/src/main/resources/assets/betternether/models/block/bn_door_top.json new file mode 100644 index 0000000..18148b5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bn_door_top.json @@ -0,0 +1,18 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#front" + }, + "elements": [ + { "from": [ 0, 0, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "up": { "uv": [ 13, 0, 16, 16 ], "texture": "#side", "cullface": "up" }, + "north": { "uv": [ 3, 0, 0, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#front" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/bn_door_top_2.json b/src/main/resources/assets/betternether/models/block/bn_door_top_2.json new file mode 100644 index 0000000..9d1bec3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bn_door_top_2.json @@ -0,0 +1,195 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/bone_cin_door_upper", + "front": "betternether:block/bone_cin_door_upper", + "side": "betternether:block/bone_cin_door_side" + }, + "elements": [ + { + "__comment": "Box11", + "from": [ 0, 12, 0 ], + "to": [ 3, 16, 4 ], + "faces": { + "down": { "uv": [ 1, 0, 4, 4 ], "texture": "#front" }, + "up": { "uv": [ 1, 0, 4, 4 ], "texture": "#front", "cullface": "up" }, + "north": { "uv": [ 13, 0, 16, 4 ], "texture": "#front", "cullface": "north" }, + "south": { "uv": [ 1, 0, 4, 4 ], "texture": "#front" }, + "west": { "uv": [ 4, 0, 0, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 0, 12, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 12, 12 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 1, 0, 4, 4 ], "texture": "#front" }, + "up": { "uv": [ 1, 0, 4, 4 ], "texture": "#front", "cullface": "up" }, + "north": { "uv": [ 13, 0, 16, 4 ], "texture": "#front" }, + "south": { "uv": [ 1, 0, 4, 4 ], "texture": "#front", "cullface": "south" }, + "west": { "uv": [ 16, 0, 12, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 0, 0, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 14, 4 ], + "to": [ 3, 16, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#front" }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "up" }, + "west": { "uv": [ 4, 0, 12, 2 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 0, 12, 2 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 0 ], + "to": [ 3, 12, 2 ], + "faces": { + "north": { "uv": [ 13, 4, 16, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 4, 3, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 4, 2, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 4, 0, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 14 ], + "to": [ 3, 12, 16 ], + "faces": { + "north": { "uv": [ 13, 4, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 4, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 14, 4, 16, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 4, 14, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 2 ], + "to": [ 3, 1, 14 ], + "faces": { + "up": { "uv": [ 0, 2, 3, 14 ], "texture": "#side" }, + "west": { "uv": [ 2, 15, 14, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 14, 15, 2, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 1, 12 ], + "to": [ 3, 2, 14 ], + "faces": { + "up": { "uv": [ 3, 10, 6, 12 ], "texture": "#side" }, + "north": { "uv": [ 6, 10, 9, 11 ], "texture": "#side" }, + "west": { "uv": [ 12, 14, 14, 15 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 14, 14, 15 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 1, 2 ], + "to": [ 2, 3, 14 ], + "faces": { + "up": { "uv": [ 2, 2, 3, 14 ], "texture": "#front" }, + "west": { "uv": [ 2, 13, 14, 15 ], "texture": "#front" }, + "east": { "uv": [ 14, 13, 2, 15 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 11, 2 ], + "to": [ 2, 14, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#front" }, + "up": { "uv": [ 1, 2, 2, 14 ], "texture": "#front" }, + "north": { "uv": [ 14, 2, 15, 5 ], "texture": "#front" }, + "south": { "uv": [ 1, 2, 2, 5 ], "texture": "#front" }, + "west": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" }, + "east": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 2 ], + "to": [ 2, 11, 4 ], + "faces": { + "south": { "uv": [ 12, 5, 13, 13 ], "texture": "#front" }, + "west": { "uv": [ 14, 5, 12, 13 ], "texture": "#front" }, + "east": { "uv": [ 12, 5, 14, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 12 ], + "to": [ 2, 11, 14 ], + "faces": { + "north": { "uv": [ 3, 5, 4, 13 ], "texture": "#front" }, + "west": { "uv": [ 4, 5, 2, 13 ], "texture": "#front" }, + "east": { "uv": [ 2, 5, 4, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 6 ], + "to": [ 2, 11, 7 ], + "faces": { + "north": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "south": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "west": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "east": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 9 ], + "to": [ 2, 11, 10 ], + "faces": { + "north": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "south": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "west": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "east": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 10 ], + "to": [ 2, 4, 12 ], + "faces": { + "up": { "uv": [ 3, 10, 4, 12 ], "texture": "#front" }, + "west": { "uv": [ 6, 12, 4, 13 ], "texture": "#front" }, + "east": { "uv": [ 4, 12, 6, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 10 ], + "to": [ 2, 11, 12 ], + "faces": { + "down": { "uv": [ 1, 4, 2, 6 ], "texture": "#front" }, + "west": { "uv": [ 6, 5, 4, 6 ], "texture": "#front" }, + "east": { "uv": [ 4, 5, 6, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 4 ], + "to": [ 2, 11, 6 ], + "faces": { + "down": { "uv": [ 1, 10, 2, 12 ], "texture": "#front" }, + "west": { "uv": [ 12, 5, 10, 6 ], "texture": "#front" }, + "east": { "uv": [ 10, 5, 12, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 4 ], + "to": [ 2, 4, 6 ], + "faces": { + "up": { "uv": [ 2, 4, 3, 6 ], "texture": "#front" }, + "west": { "uv": [ 12, 12, 10, 13 ], "texture": "#front" }, + "east": { "uv": [ 10, 12, 12, 13 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bn_door_top_rh.json b/src/main/resources/assets/betternether/models/block/bn_door_top_rh.json new file mode 100644 index 0000000..4e6fe5d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bn_door_top_rh.json @@ -0,0 +1,18 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#front" + }, + "elements": [ + { "from": [ 0, 0, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "up": { "uv": [ 13, 0, 16, 16 ], "texture": "#side", "cullface": "up" }, + "north": { "uv": [ 3, 0, 0, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#front" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/bn_door_top_rh_2.json b/src/main/resources/assets/betternether/models/block/bn_door_top_rh_2.json new file mode 100644 index 0000000..def3e6d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bn_door_top_rh_2.json @@ -0,0 +1,195 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/bone_cin_door_upper", + "front": "betternether:block/bone_cin_door_upper", + "side": "betternether:block/bone_cin_door_side" + }, + "elements": [ + { + "__comment": "Box11", + "from": [ 0, 12, 0 ], + "to": [ 3, 16, 4 ], + "faces": { + "down": { "uv": [ 1, 0, 4, 4 ], "texture": "#front" }, + "up": { "uv": [ 1, 0, 4, 4 ], "texture": "#front", "cullface": "up" }, + "north": { "uv": [ 13, 0, 16, 4 ], "texture": "#front", "cullface": "north" }, + "south": { "uv": [ 1, 0, 4, 4 ], "texture": "#front" }, + "west": { "uv": [ 0, 0, 4, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 0, 16, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 12, 12 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 1, 0, 4, 4 ], "texture": "#front" }, + "up": { "uv": [ 1, 0, 4, 4 ], "texture": "#front", "cullface": "up" }, + "north": { "uv": [ 13, 0, 16, 4 ], "texture": "#front" }, + "south": { "uv": [ 1, 0, 4, 4 ], "texture": "#front", "cullface": "south" }, + "west": { "uv": [ 12, 0, 16, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 0, 4, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 14, 4 ], + "to": [ 3, 16, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#front" }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "up" }, + "west": { "uv": [ 4, 0, 12, 2 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 0, 12, 2 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 0 ], + "to": [ 3, 12, 2 ], + "faces": { + "north": { "uv": [ 13, 4, 16, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 4, 3, 16 ], "texture": "#side" }, + "west": { "uv": [ 16, 4, 14, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 14, 4, 16, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 14 ], + "to": [ 3, 12, 16 ], + "faces": { + "north": { "uv": [ 13, 4, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 4, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 2, 4, 0, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 4, 2, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 2 ], + "to": [ 3, 1, 14 ], + "faces": { + "up": { "uv": [ 0, 2, 3, 14 ], "texture": "#side" }, + "west": { "uv": [ 2, 15, 14, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 15, 14, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 1, 2 ], + "to": [ 3, 2, 4 ], + "faces": { + "up": { "uv": [ 3, 10, 6, 12 ], "texture": "#side" }, + "south": { "uv": [ 10, 14, 13, 15 ], "texture": "#side" }, + "west": { "uv": [ 12, 14, 14, 15 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 14, 14, 15 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 1, 2 ], + "to": [ 2, 3, 14 ], + "faces": { + "up": { "uv": [ 2, 2, 3, 14 ], "texture": "#front" }, + "west": { "uv": [ 14, 13, 2, 15 ], "texture": "#front" }, + "east": { "uv": [ 2, 13, 14, 15 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 11, 2 ], + "to": [ 2, 14, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#front" }, + "up": { "uv": [ 1, 2, 2, 14 ], "texture": "#front" }, + "north": { "uv": [ 14, 2, 15, 5 ], "texture": "#front" }, + "south": { "uv": [ 1, 2, 2, 5 ], "texture": "#front" }, + "west": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" }, + "east": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 2 ], + "to": [ 2, 11, 4 ], + "faces": { + "south": { "uv": [ 12, 5, 13, 13 ], "texture": "#front" }, + "west": { "uv": [ 14, 5, 12, 13 ], "texture": "#front" }, + "east": { "uv": [ 12, 5, 14, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 12 ], + "to": [ 2, 11, 14 ], + "faces": { + "north": { "uv": [ 3, 5, 4, 13 ], "texture": "#front" }, + "west": { "uv": [ 4, 5, 2, 13 ], "texture": "#front" }, + "east": { "uv": [ 2, 5, 4, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 6 ], + "to": [ 2, 11, 7 ], + "faces": { + "north": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "south": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "west": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "east": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 9 ], + "to": [ 2, 11, 10 ], + "faces": { + "north": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "south": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "west": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "east": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 10 ], + "to": [ 2, 4, 12 ], + "faces": { + "up": { "uv": [ 3, 10, 4, 12 ], "texture": "#front" }, + "west": { "uv": [ 6, 12, 4, 13 ], "texture": "#front" }, + "east": { "uv": [ 4, 12, 6, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 10 ], + "to": [ 2, 11, 12 ], + "faces": { + "down": { "uv": [ 1, 4, 2, 6 ], "texture": "#front" }, + "west": { "uv": [ 6, 5, 4, 6 ], "texture": "#front" }, + "east": { "uv": [ 4, 5, 6, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 4 ], + "to": [ 2, 11, 6 ], + "faces": { + "down": { "uv": [ 1, 10, 2, 12 ], "texture": "#front" }, + "west": { "uv": [ 12, 5, 10, 6 ], "texture": "#front" }, + "east": { "uv": [ 10, 5, 12, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 4 ], + "to": [ 2, 4, 6 ], + "faces": { + "up": { "uv": [ 2, 4, 3, 6 ], "texture": "#front" }, + "west": { "uv": [ 12, 12, 10, 13 ], "texture": "#front" }, + "east": { "uv": [ 10, 12, 12, 13 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_block.json b/src/main/resources/assets/betternether/models/block/bone_block.json new file mode 100644 index 0000000..e16ddea --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_block.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/bone_block" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_button.json b/src/main/resources/assets/betternether/models/block/bone_button.json new file mode 100644 index 0000000..f3a8ada --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_button.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button", + "textures": { + "texture": "betternether:block/bone_button" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_button_inventory.json b/src/main/resources/assets/betternether/models/block/bone_button_inventory.json new file mode 100644 index 0000000..85a4564 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_button_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_inventory", + "textures": { + "texture": "betternether:block/bone_block" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_button_pressed.json b/src/main/resources/assets/betternether/models/block/bone_button_pressed.json new file mode 100644 index 0000000..7840dbb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_button_pressed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_pressed", + "textures": { + "texture": "betternether:block/bone_button" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_cin_door_bottom.json b/src/main/resources/assets/betternether/models/block/bone_cin_door_bottom.json new file mode 100644 index 0000000..b64c606 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_cin_door_bottom.json @@ -0,0 +1,102 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/bone_cin_door_lower", + "front": "betternether:block/bone_cin_door_lower", + "side": "betternether:block/bone_cin_door_side" + }, + "elements": [ + { + "__comment": "Box18", + "from": [ 0, 0, 12 ], + "to": [ 3, 4, 16 ], + "faces": { + "down": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "down", "rotation": 180 }, + "up": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 0, 12, 3, 16 ], "texture": "#side" }, + "south": { "uv": [ 13, 12, 16, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 12, 12, 16, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 12, 0, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 0, 0 ], + "to": [ 3, 4, 4 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "cullface": "down", "rotation": 180 }, + "up": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 13, 12, 16, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 12, 4, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 12, 12, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 0, 4 ], + "to": [ 3, 2, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "down", "rotation": 180 }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "rotation": 180 }, + "west": { "uv": [ 4, 14, 12, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 14, 4, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 4, 14 ], + "to": [ 3, 16, 16 ], + "faces": { + "north": { "uv": [ 0, 0, 3, 12 ], "texture": "#side" }, + "south": { "uv": [ 13, 0, 16, 12 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 14, 0, 16, 12 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 0, 14, 12 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 4, 0 ], + "to": [ 3, 16, 2 ], + "faces": { + "north": { "uv": [ 0, 0, 3, 12 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 13, 0, 16, 12 ], "texture": "#side" }, + "west": { "uv": [ 0, 0, 2, 12 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 0, 0, 12 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 15, 2 ], + "to": [ 3, 16, 14 ], + "faces": { + "down": { "uv": [ 0, 2, 3, 14 ], "texture": "#side", "rotation": 180 }, + "west": { "uv": [ 2, 0, 14, 1 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 14, 0, 2, 1 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 1, 2, 2 ], + "to": [ 2, 15, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 1, 1, 2, 14 ], "texture": "#side" }, + "south": { "uv": [ 14, 1, 15, 14 ], "texture": "#side" }, + "west": { "uv": [ 2, 1, 14, 14 ], "texture": "#front" }, + "east": { "uv": [ 14, 1, 2, 14 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 14, 12 ], + "to": [ 3, 15, 14 ], + "faces": { + "down": { "uv": [ 0, 12, 3, 14 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 0, 1, 3, 2 ], "texture": "#side" }, + "west": { "uv": [ 12, 1, 14, 2 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 1, 14, 2 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_cin_door_bottom_rh.json b/src/main/resources/assets/betternether/models/block/bone_cin_door_bottom_rh.json new file mode 100644 index 0000000..6424579 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_cin_door_bottom_rh.json @@ -0,0 +1,102 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/bone_cin_door_lower", + "front": "betternether:block/bone_cin_door_lower", + "side": "betternether:block/bone_cin_door_side" + }, + "elements": [ + { + "__comment": "Box18", + "from": [ 0, 0, 0 ], + "to": [ 3, 4, 4 ], + "faces": { + "down": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "down" }, + "up": { "uv": [ 0, 0, 3, 4 ], "texture": "#side" }, + "north": { "uv": [ 13, 12, 16, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 12, 3, 16 ], "texture": "#side" }, + "west": { "uv": [ 4, 12, 0, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 12, 16, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 0, 12 ], + "to": [ 3, 4, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "cullface": "down" }, + "up": { "uv": [ 0, 12, 3, 16 ], "texture": "#side" }, + "north": { "uv": [ 13, 12, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 16, 12, 12, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 12, 4, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 0, 4 ], + "to": [ 3, 2, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "down" }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side" }, + "west": { "uv": [ 12, 14, 4, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 14, 12, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 4, 0 ], + "to": [ 3, 16, 2 ], + "faces": { + "north": { "uv": [ 13, 0, 16, 12 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 12 ], "texture": "#side" }, + "west": { "uv": [ 16, 0, 14, 12 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 14, 0, 16, 12 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 4, 14 ], + "to": [ 3, 16, 16 ], + "faces": { + "north": { "uv": [ 13, 0, 16, 12 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 3, 12 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 2, 0, 0, 12 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 0, 2, 12 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 15, 2 ], + "to": [ 3, 16, 14 ], + "faces": { + "down": { "uv": [ 0, 2, 3, 14 ], "texture": "#side" }, + "west": { "uv": [ 14, 0, 2, 1 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 0, 14, 1 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 1, 2, 2 ], + "to": [ 2, 15, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#side" }, + "north": { "uv": [ 14, 1, 15, 14 ], "texture": "#side" }, + "south": { "uv": [ 1, 1, 2, 14 ], "texture": "#side" }, + "west": { "uv": [ 14, 1, 2, 14 ], "texture": "#front" }, + "east": { "uv": [ 2, 1, 14, 14 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 14, 2 ], + "to": [ 3, 15, 4 ], + "faces": { + "down": { "uv": [ 0, 12, 3, 14 ], "texture": "#side" }, + "south": { "uv": [ 0, 1, 3, 2 ], "texture": "#side" }, + "west": { "uv": [ 12, 1, 14, 2 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 1, 14, 2 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_cin_door_top.json b/src/main/resources/assets/betternether/models/block/bone_cin_door_top.json new file mode 100644 index 0000000..409dda2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_cin_door_top.json @@ -0,0 +1,195 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/bone_cin_door_upper", + "front": "betternether:block/bone_cin_door_upper", + "side": "betternether:block/bone_cin_door_side" + }, + "elements": [ + { + "__comment": "Box11", + "from": [ 0, 12, 0 ], + "to": [ 3, 16, 4 ], + "faces": { + "down": { "uv": [ 0, 12, 3, 16 ], "texture": "#side" }, + "up": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "cullface": "up" }, + "north": { "uv": [ 13, 0, 16, 4 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 4 ], "texture": "#side" }, + "west": { "uv": [ 0, 0, 4, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 0, 16, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 12, 12 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 4 ], "texture": "#side" }, + "up": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "up" }, + "north": { "uv": [ 13, 0, 16, 4 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 12, 0, 16, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 0, 4, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 14, 4 ], + "to": [ 3, 16, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#front" }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "up" }, + "west": { "uv": [ 4, 0, 12, 2 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 0, 12, 2 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 0 ], + "to": [ 3, 12, 2 ], + "faces": { + "north": { "uv": [ 13, 4, 16, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 4, 3, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 4, 2, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 4, 0, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 14 ], + "to": [ 3, 12, 16 ], + "faces": { + "north": { "uv": [ 13, 4, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 4, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 14, 4, 16, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 4, 14, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 2 ], + "to": [ 3, 1, 14 ], + "faces": { + "up": { "uv": [ 0, 2, 3, 14 ], "texture": "#side" }, + "west": { "uv": [ 2, 15, 14, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 14, 15, 2, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 1, 12 ], + "to": [ 3, 2, 14 ], + "faces": { + "up": { "uv": [ 3, 10, 6, 12 ], "texture": "#side" }, + "north": { "uv": [ 6, 10, 9, 11 ], "texture": "#side" }, + "west": { "uv": [ 12, 14, 14, 15 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 14, 14, 15 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 1, 2 ], + "to": [ 2, 3, 14 ], + "faces": { + "up": { "uv": [ 2, 2, 3, 14 ], "texture": "#front" }, + "west": { "uv": [ 2, 13, 14, 15 ], "texture": "#front" }, + "east": { "uv": [ 14, 13, 2, 15 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 11, 2 ], + "to": [ 2, 14, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#front" }, + "up": { "uv": [ 1, 2, 2, 14 ], "texture": "#front" }, + "north": { "uv": [ 14, 2, 15, 5 ], "texture": "#front" }, + "south": { "uv": [ 1, 2, 2, 5 ], "texture": "#front" }, + "west": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" }, + "east": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 2 ], + "to": [ 2, 11, 4 ], + "faces": { + "south": { "uv": [ 12, 5, 13, 13 ], "texture": "#front" }, + "west": { "uv": [ 14, 5, 12, 13 ], "texture": "#front" }, + "east": { "uv": [ 12, 5, 14, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 12 ], + "to": [ 2, 11, 14 ], + "faces": { + "north": { "uv": [ 3, 5, 4, 13 ], "texture": "#front" }, + "west": { "uv": [ 4, 5, 2, 13 ], "texture": "#front" }, + "east": { "uv": [ 2, 5, 4, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 6 ], + "to": [ 2, 11, 7 ], + "faces": { + "north": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "south": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "west": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "east": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 9 ], + "to": [ 2, 11, 10 ], + "faces": { + "north": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "south": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "west": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "east": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 10 ], + "to": [ 2, 4, 12 ], + "faces": { + "up": { "uv": [ 3, 10, 4, 12 ], "texture": "#front" }, + "west": { "uv": [ 6, 12, 4, 13 ], "texture": "#front" }, + "east": { "uv": [ 4, 12, 6, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 10 ], + "to": [ 2, 11, 12 ], + "faces": { + "down": { "uv": [ 1, 4, 2, 6 ], "texture": "#front" }, + "west": { "uv": [ 6, 5, 4, 6 ], "texture": "#front" }, + "east": { "uv": [ 4, 5, 6, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 4 ], + "to": [ 2, 11, 6 ], + "faces": { + "down": { "uv": [ 1, 10, 2, 12 ], "texture": "#front" }, + "west": { "uv": [ 12, 5, 10, 6 ], "texture": "#front" }, + "east": { "uv": [ 10, 5, 12, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 4 ], + "to": [ 2, 4, 6 ], + "faces": { + "up": { "uv": [ 2, 4, 3, 6 ], "texture": "#front" }, + "west": { "uv": [ 12, 12, 10, 13 ], "texture": "#front" }, + "east": { "uv": [ 10, 12, 12, 13 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_cin_door_top_rh.json b/src/main/resources/assets/betternether/models/block/bone_cin_door_top_rh.json new file mode 100644 index 0000000..3e17d6d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_cin_door_top_rh.json @@ -0,0 +1,195 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/bone_cin_door_upper", + "front": "betternether:block/bone_cin_door_upper", + "side": "betternether:block/bone_cin_door_side" + }, + "elements": [ + { + "__comment": "Box11", + "from": [ 0, 12, 12 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "cullface": "up", "rotation": 180 }, + "north": { "uv": [ 0, 0, 3, 4 ], "texture": "#side" }, + "south": { "uv": [ 13, 0, 16, 4 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 12, 0, 16, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 0, 4, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 12, 0 ], + "to": [ 3, 16, 4 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "up", "rotation": 180 }, + "north": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 13, 0, 16, 4 ], "texture": "#side" }, + "west": { "uv": [ 0, 0, 4, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 0, 16, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 14, 4 ], + "to": [ 3, 16, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#front", "rotation": 180 }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "up", "rotation": 180 }, + "west": { "uv": [ 4, 0, 12, 2 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 0, 12, 2 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 14 ], + "to": [ 3, 12, 16 ], + "faces": { + "north": { "uv": [ 0, 4, 3, 16 ], "texture": "#side" }, + "south": { "uv": [ 13, 4, 16, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 2, 4, 0, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 4, 2, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 0 ], + "to": [ 3, 12, 2 ], + "faces": { + "north": { "uv": [ 0, 4, 3, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 13, 4, 16, 16 ], "texture": "#side" }, + "west": { "uv": [ 16, 4, 14, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 14, 4, 16, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 2 ], + "to": [ 3, 1, 14 ], + "faces": { + "up": { "uv": [ 0, 2, 3, 14 ], "texture": "#side", "rotation": 180 }, + "west": { "uv": [ 14, 15, 2, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 15, 14, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 1, 2 ], + "to": [ 3, 2, 4 ], + "faces": { + "up": { "uv": [ 3, 10, 6, 12 ], "texture": "#side", "rotation": 180 }, + "south": { "uv": [ 6, 10, 9, 11 ], "texture": "#side" }, + "west": { "uv": [ 12, 14, 14, 15 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 14, 14, 15 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 1, 2 ], + "to": [ 2, 3, 14 ], + "faces": { + "up": { "uv": [ 2, 2, 3, 14 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 14, 13, 2, 15 ], "texture": "#front" }, + "east": { "uv": [ 2, 13, 14, 15 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 11, 2 ], + "to": [ 2, 14, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#front", "rotation": 180 }, + "up": { "uv": [ 1, 2, 2, 14 ], "texture": "#front", "rotation": 180 }, + "north": { "uv": [ 1, 2, 2, 5 ], "texture": "#front" }, + "south": { "uv": [ 14, 2, 15, 5 ], "texture": "#front" }, + "west": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" }, + "east": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 12 ], + "to": [ 2, 11, 14 ], + "faces": { + "north": { "uv": [ 12, 5, 13, 13 ], "texture": "#front" }, + "west": { "uv": [ 12, 5, 14, 13 ], "texture": "#front" }, + "east": { "uv": [ 14, 5, 12, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 2 ], + "to": [ 2, 11, 4 ], + "faces": { + "south": { "uv": [ 3, 5, 4, 13 ], "texture": "#front" }, + "west": { "uv": [ 2, 5, 4, 13 ], "texture": "#front" }, + "east": { "uv": [ 4, 5, 2, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 9 ], + "to": [ 2, 11, 10 ], + "faces": { + "north": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "south": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "west": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "east": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 6 ], + "to": [ 2, 11, 7 ], + "faces": { + "north": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "south": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "west": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "east": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 4 ], + "to": [ 2, 4, 6 ], + "faces": { + "up": { "uv": [ 3, 10, 4, 12 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 4, 12, 6, 13 ], "texture": "#front" }, + "east": { "uv": [ 6, 12, 4, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 4 ], + "to": [ 2, 11, 6 ], + "faces": { + "down": { "uv": [ 1, 4, 2, 6 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 4, 5, 6, 6 ], "texture": "#front" }, + "east": { "uv": [ 6, 5, 4, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 10 ], + "to": [ 2, 11, 12 ], + "faces": { + "down": { "uv": [ 1, 10, 2, 12 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 10, 5, 12, 6 ], "texture": "#front" }, + "east": { "uv": [ 12, 5, 10, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 10 ], + "to": [ 2, 4, 12 ], + "faces": { + "up": { "uv": [ 2, 4, 3, 6 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 10, 12, 12, 13 ], "texture": "#front" }, + "east": { "uv": [ 12, 12, 10, 13 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_double_slab.json b/src/main/resources/assets/betternether/models/block/bone_double_slab.json new file mode 100644 index 0000000..3f35cb9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_double_slab.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/bone_slab_side", + "down": "betternether:block/bone_slab_top", + "up": "betternether:block/bone_slab_top", + "north": "betternether:block/bone_slab_side", + "east": "betternether:block/bone_slab_side", + "south": "betternether:block/bone_slab_side", + "west": "betternether:block/bone_slab_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_grass_1.json b/src/main/resources/assets/betternether/models/block/bone_grass_1.json new file mode 100644 index 0000000..3c10c36 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_grass_1.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/bone_grass_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_grass_2.json b/src/main/resources/assets/betternether/models/block/bone_grass_2.json new file mode 100644 index 0000000..ebdbf23 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_grass_2.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/bone_grass_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_grass_3.json b/src/main/resources/assets/betternether/models/block/bone_grass_3.json new file mode 100644 index 0000000..8f036a5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_grass_3.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/bone_grass_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_grass_4.json b/src/main/resources/assets/betternether/models/block/bone_grass_4.json new file mode 100644 index 0000000..b04052b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_grass_4.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/bone_grass_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_grass_5.json b/src/main/resources/assets/betternether/models/block/bone_grass_5.json new file mode 100644 index 0000000..45fc973 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_grass_5.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/bone_grass_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_grass_6.json b/src/main/resources/assets/betternether/models/block/bone_grass_6.json new file mode 100644 index 0000000..afb5849 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_grass_6.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/bone_grass_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_half_slab.json b/src/main/resources/assets/betternether/models/block/bone_half_slab.json new file mode 100644 index 0000000..d450082 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/bone_slab_top", + "top": "betternether:block/bone_slab_top", + "side": "betternether:block/bone_slab_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_inner_stairs.json b/src/main/resources/assets/betternether/models/block/bone_inner_stairs.json new file mode 100644 index 0000000..97aa6d4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/bone_block", + "top": "betternether:block/bone_block", + "side": "betternether:block/bone_block" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_mushroom_floor.json b/src/main/resources/assets/betternether/models/block/bone_mushroom_floor.json new file mode 100644 index 0000000..d1fab74 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_mushroom_floor.json @@ -0,0 +1,186 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/bone_mushroom_up", + "texture": "betternether:block/bone_mushroom_up", + "cap": "betternether:block/bone_mushroom_cap", + "wall": "betternether:block/bone_mycelium" + }, + "elements": [ + { + "__comment": "outCap", + "from": [ 1, 9, 9.5 ], + "to": [ 5, 11, 13.5 ], + "faces": { + "up": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "inCap", + "from": [ 5, 11, 13.5 ], + "to": [ 1, 9, 9.5 ], + "faces": { + "down": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapOut", + "from": [ 11.5, 7, 9 ], + "to": [ 14.5, 8, 12 ], + "faces": { + "up": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapIn", + "from": [ 14.5, 8, 12 ], + "to": [ 11.5, 7, 9 ], + "faces": { + "down": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + }, + { + "__comment": "bgCapOut", + "from": [ 7, 11.5, 6.5 ], + "to": [ 12, 13.5, 11.5 ], + "faces": { + "up": { "uv": [ 4, 0, 9, 5 ], "texture": "#cap" }, + "north": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "south": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "west": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "east": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" } + } + }, + { + "__comment": "bgCapIn", + "from": [ 12, 13.5, 11.5 ], + "to": [ 7, 11.5, 6.5 ], + "faces": { + "down": { "uv": [ 4, 0, 9, 5 ], "texture": "#cap" }, + "north": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "south": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "west": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "east": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" } + } + }, + { + "__comment": "PlaneY24", + "from": [ 0, 0.5, 0 ], + "to": [ 16, 0.501, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 2, 0, 0 ], + "to": [ 2.001, 16, 16 ], + "rotation": { "origin": [ 2, 0, 0 ], "axis": "y", "angle": 22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 7.5, 0, 0 ], + "to": [ 7.501, 16, 16 ], + "rotation": { "origin": [ 7.5, 0, 0 ], "axis": "y", "angle": -22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 13, 0, 0 ], + "to": [ 13.001, 16, 16 ], + "rotation": { "origin": [ 13, 0, 0 ], "axis": "y", "angle": 0 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 0, 0, 7 ], + "to": [ 16, 16, 7.001 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "outCap", + "from": [ 3.5, 12, 2 ], + "to": [ 7.5, 14, 6 ], + "faces": { + "up": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "inCap", + "from": [ 7.5, 14, 6 ], + "to": [ 3.5, 12, 2 ], + "faces": { + "down": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapOut", + "from": [ 8.5, 7, 5.5 ], + "to": [ 11.5, 8, 8.5 ], + "faces": { + "up": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapIn", + "from": [ 11.5, 8, 8.5 ], + "to": [ 8.5, 7, 5.5 ], + "faces": { + "down": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_mushroom_floor_pre.json b/src/main/resources/assets/betternether/models/block/bone_mushroom_floor_pre.json new file mode 100644 index 0000000..ecb7e57 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_mushroom_floor_pre.json @@ -0,0 +1,64 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/bone_mushroom_up_pre", + "texture": "betternether:block/bone_mushroom_up_pre", + "wall": "betternether:block/bone_mycelium" + }, + "elements": [ + { + "__comment": "PlaneY24", + "from": [ 0, 0.5, 0 ], + "to": [ 16, 0.501, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 2, 0, 0 ], + "to": [ 2.001, 16, 16 ], + "rotation": { "origin": [ 2, 0, 0 ], "axis": "y", "angle": 22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 7.5, 0, 0 ], + "to": [ 7.501, 16, 16 ], + "rotation": { "origin": [ 7.5, 0, 0 ], "axis": "y", "angle": -22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 13, 0, 0 ], + "to": [ 13.001, 16, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 0, 0, 7 ], + "to": [ 16, 16, 7.001 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_mushroom_floor_young.json b/src/main/resources/assets/betternether/models/block/bone_mushroom_floor_young.json new file mode 100644 index 0000000..6e6a002 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_mushroom_floor_young.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/bone_mushroom_up_pre", + "texture": "betternether:block/bone_mushroom_up_pre", + "wall": "betternether:block/bone_mycelium" + }, + "elements": [ + { + "__comment": "PlaneY24", + "from": [ 0, 0.5, 0 ], + "to": [ 16, 0.501, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_mushroom_wall.json b/src/main/resources/assets/betternether/models/block/bone_mushroom_wall.json new file mode 100644 index 0000000..c22eff3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_mushroom_wall.json @@ -0,0 +1,283 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/bone_mushroom", + "texture": "betternether:block/bone_mushroom", + "cap": "betternether:block/bone_mushroom_cap", + "wall": "betternether:block/bone_mycelium" + }, + "elements": [ + { + "__comment": "Mass1", + "from": [ 4, 0, 0 ], + "to": [ 4.001, 16, 16 ], + "rotation": { "origin": [ 4, 0, 0 ], "axis": "y", "angle": -22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Mass2", + "from": [ 8, -1, 0 ], + "to": [ 8.001, 15, 16 ], + "rotation": { "origin": [ 8, -1, 0 ], "axis": "y", "angle": 22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Mass3", + "from": [ 13, -2, 0 ], + "to": [ 13.001, 14, 16 ], + "rotation": { "origin": [ 13, -2, 0 ], "axis": "y", "angle": -22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Mass", + "from": [ 2, 3, 0 ], + "to": [ 2.001, 19, 16 ], + "rotation": { "origin": [ 2, 3, 0 ], "axis": "y", "angle": 22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "outCap", + "from": [ -2.5, 9.5, 9.5 ], + "to": [ 1.5, 11.5, 13.5 ], + "faces": { + "up": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "inCap", + "from": [ 1.5, 11.5, 13.5 ], + "to": [ -2.5, 9.5, 9.5 ], + "faces": { + "down": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "outCap", + "from": [ 6.5, 7.5, 10 ], + "to": [ 10.5, 9.5, 14 ], + "faces": { + "up": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "inCap", + "from": [ 10.5, 9.5, 14 ], + "to": [ 6.5, 7.5, 10 ], + "faces": { + "down": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "inCap", + "from": [ 3, 13.5, 11 ], + "to": [ -1, 11.5, 7 ], + "faces": { + "down": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "outCap", + "from": [ -1, 11.5, 7 ], + "to": [ 3, 13.5, 11 ], + "faces": { + "up": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "outCap", + "from": [ 9, 10.5, 6.5 ], + "to": [ 13, 12.5, 10.5 ], + "faces": { + "up": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "inCap", + "from": [ 13, 12.5, 10.5 ], + "to": [ 9, 10.5, 6.5 ], + "faces": { + "down": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapOut", + "from": [ 5.5, 13, 10 ], + "to": [ 8.5, 14, 13 ], + "faces": { + "up": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapIn", + "from": [ 8.5, 14, 13 ], + "to": [ 5.5, 13, 10 ], + "faces": { + "down": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapOut", + "from": [ 11.5, 9.5, 10 ], + "to": [ 14.5, 10.5, 13 ], + "faces": { + "up": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapIn", + "from": [ 14.5, 10.5, 13 ], + "to": [ 11.5, 9.5, 10 ], + "faces": { + "down": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapIn", + "from": [ 5, 17, 6 ], + "to": [ 2, 16, 3 ], + "faces": { + "down": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapOut", + "from": [ 2, 16, 3 ], + "to": [ 5, 17, 6 ], + "faces": { + "up": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + }, + { + "__comment": "bgCapOut", + "from": [ 3.5, 14, 6.5 ], + "to": [ 8.5, 16, 11.5 ], + "faces": { + "up": { "uv": [ 4, 0, 9, 5 ], "texture": "#cap" }, + "north": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "south": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "west": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "east": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" } + } + }, + { + "__comment": "bgCapIn", + "from": [ 8.5, 16, 11.5 ], + "to": [ 3.5, 14, 6.5 ], + "faces": { + "down": { "uv": [ 4, 0, 9, 5 ], "texture": "#cap" }, + "north": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "south": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "west": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "east": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" } + } + }, + { + "__comment": "bgCapIn", + "from": [ 12, 13, 6.5 ], + "to": [ 7, 11, 1.5 ], + "faces": { + "down": { "uv": [ 4, 0, 9, 5 ], "texture": "#cap" }, + "north": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "south": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "west": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "east": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" } + } + }, + { + "__comment": "bgCapOut", + "from": [ 7, 11, 1.5 ], + "to": [ 12, 13, 6.5 ], + "faces": { + "up": { "uv": [ 4, 0, 9, 5 ], "texture": "#cap" }, + "north": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "south": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "west": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "east": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" } + } + }, + { + "__comment": "PlaneZ23", + "from": [ 0, 0, 0.5 ], + "to": [ 16, 16, 0.501 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_mushroom_wall_pre.json b/src/main/resources/assets/betternether/models/block/bone_mushroom_wall_pre.json new file mode 100644 index 0000000..90b7397 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_mushroom_wall_pre.json @@ -0,0 +1,66 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/bone_mushroom_pre", + "texture": "betternether:block/bone_mushroom_pre", + "wall": "betternether:block/bone_mycelium" + }, + "elements": [ + { + "__comment": "Mass1", + "from": [ 4, 0, 0 ], + "to": [ 4.001, 16, 16 ], + "rotation": { "origin": [ 4, 0, 0 ], "axis": "y", "angle": -22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Mass2", + "from": [ 8, -1, 0 ], + "to": [ 8.001, 15, 16 ], + "rotation": { "origin": [ 8, -1, 0 ], "axis": "y", "angle": 22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Mass3", + "from": [ 13, -2, 0 ], + "to": [ 13.001, 14, 16 ], + "rotation": { "origin": [ 13, -2, 0 ], "axis": "y", "angle": -22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Mass", + "from": [ 2, 3, 0 ], + "to": [ 2.001, 19, 16 ], + "rotation": { "origin": [ 2, 3, 0 ], "axis": "y", "angle": 22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ23", + "from": [ 0, 0, 0.5 ], + "to": [ 16, 16, 0.501 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_mushroom_wall_young.json b/src/main/resources/assets/betternether/models/block/bone_mushroom_wall_young.json new file mode 100644 index 0000000..96c8f4f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_mushroom_wall_young.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/bone_mushroom_pre", + "texture": "betternether:block/bone_mushroom_pre", + "wall": "betternether:block/bone_mycelium" + }, + "elements": [ + { + "__comment": "PlaneZ23", + "from": [ 0, 0, 0.5 ], + "to": [ 16, 16, 0.501 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_outer_stairs.json b/src/main/resources/assets/betternether/models/block/bone_outer_stairs.json new file mode 100644 index 0000000..eff7903 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/bone_block", + "top": "betternether:block/bone_block", + "side": "betternether:block/bone_block" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_post.json b/src/main/resources/assets/betternether/models/block/bone_post.json new file mode 100644 index 0000000..4bb6d5a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_post.json @@ -0,0 +1,141 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/bone_post", + "texture": "betternether:block/bone_post" + }, + "elements": [ + { + "__comment": "Box9", + "from": [ 4, 0, 4 ], + "to": [ 12, 1, 12 ], + "faces": { + "down": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture" }, + "north": { "uv": [ 8, 15, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 8, 15, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 8, 15, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 8, 15, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box14", + "from": [ 10, 2, 10 ], + "to": [ 11, 14, 11 ], + "faces": { + "north": { "uv": [ 9, 2, 10, 14 ], "texture": "#texture" }, + "south": { "uv": [ 14, 2, 15, 14 ], "texture": "#texture" }, + "west": { "uv": [ 14, 2, 15, 14 ], "texture": "#texture" }, + "east": { "uv": [ 9, 2, 10, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box9", + "from": [ 4, 15, 4 ], + "to": [ 12, 16, 12 ], + "faces": { + "down": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 8, 0, 16, 1 ], "texture": "#texture" }, + "south": { "uv": [ 8, 0, 16, 1 ], "texture": "#texture" }, + "west": { "uv": [ 8, 0, 16, 1 ], "texture": "#texture" }, + "east": { "uv": [ 8, 0, 16, 1 ], "texture": "#texture" } + } + }, + { + "__comment": "Box9", + "from": [ 5, 14, 5 ], + "to": [ 11, 15, 11 ], + "faces": { + "down": { "uv": [ 1, 1, 7, 7 ], "texture": "#texture" }, + "north": { "uv": [ 9, 1, 15, 2 ], "texture": "#texture" }, + "south": { "uv": [ 9, 1, 15, 2 ], "texture": "#texture" }, + "west": { "uv": [ 9, 1, 15, 2 ], "texture": "#texture" }, + "east": { "uv": [ 9, 1, 15, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box9", + "from": [ 5, 3, 7 ], + "to": [ 11, 13, 9 ], + "faces": { + "down": { "uv": [ 5, 7, 11, 9 ], "texture": "#texture" }, + "up": { "uv": [ 5, 7, 11, 9 ], "texture": "#texture" }, + "north": { "uv": [ 9, 3, 15, 13 ], "texture": "#texture" }, + "south": { "uv": [ 9, 3, 15, 13 ], "texture": "#texture" }, + "west": { "uv": [ 11, 3, 13, 13 ], "texture": "#texture" }, + "east": { "uv": [ 11, 3, 13, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box9", + "from": [ 7, 3, 5 ], + "to": [ 9, 13, 11 ], + "faces": { + "down": { "uv": [ 7, 5, 9, 11 ], "texture": "#texture" }, + "up": { "uv": [ 7, 5, 9, 11 ], "texture": "#texture" }, + "north": { "uv": [ 11, 3, 13, 13 ], "texture": "#texture" }, + "south": { "uv": [ 11, 3, 13, 13 ], "texture": "#texture" }, + "west": { "uv": [ 9, 3, 15, 13 ], "texture": "#texture" }, + "east": { "uv": [ 9, 3, 15, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box13", + "from": [ 6, 2, 6 ], + "to": [ 10, 14, 10 ], + "faces": { + "north": { "uv": [ 10, 2, 14, 14 ], "texture": "#texture" }, + "south": { "uv": [ 10, 2, 14, 14 ], "texture": "#texture" }, + "west": { "uv": [ 10, 2, 14, 14 ], "texture": "#texture" }, + "east": { "uv": [ 10, 2, 14, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box14", + "from": [ 5, 2, 5 ], + "to": [ 6, 14, 6 ], + "faces": { + "north": { "uv": [ 14, 2, 15, 14 ], "texture": "#texture" }, + "south": { "uv": [ 9, 2, 10, 14 ], "texture": "#texture" }, + "west": { "uv": [ 9, 2, 10, 14 ], "texture": "#texture" }, + "east": { "uv": [ 14, 2, 15, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box14", + "from": [ 5, 2, 10 ], + "to": [ 6, 14, 11 ], + "faces": { + "north": { "uv": [ 14, 2, 15, 14 ], "texture": "#texture" }, + "south": { "uv": [ 9, 2, 10, 14 ], "texture": "#texture" }, + "west": { "uv": [ 14, 2, 15, 14 ], "texture": "#texture" }, + "east": { "uv": [ 9, 2, 10, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box14", + "from": [ 10, 2, 5 ], + "to": [ 11, 14, 6 ], + "faces": { + "north": { "uv": [ 14, 2, 15, 14 ], "texture": "#texture" }, + "south": { "uv": [ 9, 2, 10, 14 ], "texture": "#texture" }, + "west": { "uv": [ 9, 2, 10, 14 ], "texture": "#texture" }, + "east": { "uv": [ 14, 2, 15, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box9", + "from": [ 5, 1, 5 ], + "to": [ 11, 2, 11 ], + "faces": { + "up": { "uv": [ 1, 1, 7, 7 ], "texture": "#texture" }, + "north": { "uv": [ 9, 14, 15, 15 ], "texture": "#texture" }, + "south": { "uv": [ 9, 14, 15, 15 ], "texture": "#texture" }, + "west": { "uv": [ 9, 14, 15, 15 ], "texture": "#texture" }, + "east": { "uv": [ 9, 14, 15, 15 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_pressure_plate_down.json b/src/main/resources/assets/betternether/models/block/bone_pressure_plate_down.json new file mode 100644 index 0000000..c3fe022 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_down", + "textures": { + "texture": "betternether:block/bone_block_plate" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_pressure_plate_up.json b/src/main/resources/assets/betternether/models/block/bone_pressure_plate_up.json new file mode 100644 index 0000000..bd1cef4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_pressure_plate_up.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_up", + "textures": { + "texture": "betternether:block/bone_block_plate" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_reed_door_bottom.json b/src/main/resources/assets/betternether/models/block/bone_reed_door_bottom.json new file mode 100644 index 0000000..5dfa765 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_reed_door_bottom.json @@ -0,0 +1,91 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/bone_reed_door_lower", + "front": "betternether:block/bone_reed_door_lower", + "side": "betternether:block/reeds_trapdoor" + }, + "elements": [ + { + "__comment": "Box18", + "from": [ 0, 0, 12 ], + "to": [ 3, 4, 16 ], + "faces": { + "down": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "down", "rotation": 180 }, + "up": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 0, 12, 3, 16 ], "texture": "#side" }, + "south": { "uv": [ 13, 12, 16, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 12, 12, 16, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 12, 0, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 0, 0 ], + "to": [ 3, 4, 4 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "cullface": "down", "rotation": 180 }, + "up": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 13, 12, 16, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 12, 4, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 12, 12, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 0, 4 ], + "to": [ 3, 2, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "down", "rotation": 180 }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "rotation": 180 }, + "west": { "uv": [ 4, 14, 12, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 14, 4, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 4, 14 ], + "to": [ 3, 16, 16 ], + "faces": { + "north": { "uv": [ 0, 0, 3, 12 ], "texture": "#side" }, + "south": { "uv": [ 13, 0, 16, 12 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 14, 0, 16, 12 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 0, 14, 12 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 4, 0 ], + "to": [ 3, 16, 2 ], + "faces": { + "north": { "uv": [ 0, 0, 3, 12 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 13, 0, 16, 12 ], "texture": "#side" }, + "west": { "uv": [ 0, 0, 2, 12 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 0, 0, 12 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 15, 2 ], + "to": [ 3, 16, 14 ], + "faces": { + "down": { "uv": [ 0, 2, 3, 14 ], "texture": "#side", "rotation": 180 }, + "west": { "uv": [ 2, 0, 14, 1 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 14, 0, 2, 1 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 1, 2, 2 ], + "to": [ 2, 15, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 1, 1, 2, 14 ], "texture": "#side" }, + "south": { "uv": [ 14, 1, 15, 14 ], "texture": "#side" }, + "west": { "uv": [ 2, 1, 14, 14 ], "texture": "#front" }, + "east": { "uv": [ 14, 1, 2, 14 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_reed_door_bottom_rh.json b/src/main/resources/assets/betternether/models/block/bone_reed_door_bottom_rh.json new file mode 100644 index 0000000..944243a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_reed_door_bottom_rh.json @@ -0,0 +1,91 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/bone_reed_door_lower", + "front": "betternether:block/bone_reed_door_lower", + "side": "betternether:block/reeds_trapdoor" + }, + "elements": [ + { + "__comment": "Box18", + "from": [ 0, 0, 0 ], + "to": [ 3, 4, 4 ], + "faces": { + "down": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "down" }, + "up": { "uv": [ 0, 0, 3, 4 ], "texture": "#side" }, + "north": { "uv": [ 13, 12, 16, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 12, 3, 16 ], "texture": "#side" }, + "west": { "uv": [ 4, 12, 0, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 12, 16, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 0, 12 ], + "to": [ 3, 4, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "cullface": "down" }, + "up": { "uv": [ 0, 12, 3, 16 ], "texture": "#side" }, + "north": { "uv": [ 13, 12, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 16, 12, 12, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 12, 4, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 0, 4 ], + "to": [ 3, 2, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "down" }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side" }, + "west": { "uv": [ 12, 14, 4, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 14, 12, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 4, 0 ], + "to": [ 3, 16, 2 ], + "faces": { + "north": { "uv": [ 13, 0, 16, 12 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 12 ], "texture": "#side" }, + "west": { "uv": [ 16, 0, 14, 12 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 14, 0, 16, 12 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 4, 14 ], + "to": [ 3, 16, 16 ], + "faces": { + "north": { "uv": [ 13, 0, 16, 12 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 3, 12 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 2, 0, 0, 12 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 0, 2, 12 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 15, 2 ], + "to": [ 3, 16, 14 ], + "faces": { + "down": { "uv": [ 0, 2, 3, 14 ], "texture": "#side" }, + "west": { "uv": [ 14, 0, 2, 1 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 0, 14, 1 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 1, 2, 2 ], + "to": [ 2, 15, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#side" }, + "north": { "uv": [ 14, 1, 15, 14 ], "texture": "#side" }, + "south": { "uv": [ 1, 1, 2, 14 ], "texture": "#side" }, + "west": { "uv": [ 14, 1, 2, 14 ], "texture": "#front" }, + "east": { "uv": [ 2, 1, 14, 14 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_reed_door_top.json b/src/main/resources/assets/betternether/models/block/bone_reed_door_top.json new file mode 100644 index 0000000..5cf1915 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_reed_door_top.json @@ -0,0 +1,184 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/bone_reed_door_upper", + "front": "betternether:block/bone_reed_door_upper", + "side": "betternether:block/reeds_trapdoor" + }, + "elements": [ + { + "__comment": "Box11", + "from": [ 0, 12, 0 ], + "to": [ 3, 16, 4 ], + "faces": { + "down": { "uv": [ 1, 0, 4, 4 ], "texture": "#side" }, + "up": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "cullface": "up" }, + "north": { "uv": [ 13, 0, 16, 4 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 1, 0, 4, 4 ], "texture": "#side" }, + "west": { "uv": [ 4, 0, 0, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 0, 12, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 12, 12 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 1, 0, 4, 4 ], "texture": "#side" }, + "up": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "cullface": "up" }, + "north": { "uv": [ 13, 0, 16, 4 ], "texture": "#side" }, + "south": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 16, 0, 12, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 0, 0, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 14, 4 ], + "to": [ 3, 16, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#front" }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "up" }, + "west": { "uv": [ 4, 0, 12, 2 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 0, 12, 2 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 0 ], + "to": [ 3, 12, 2 ], + "faces": { + "north": { "uv": [ 13, 4, 16, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 4, 3, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 4, 2, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 4, 0, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 14 ], + "to": [ 3, 12, 16 ], + "faces": { + "north": { "uv": [ 13, 4, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 4, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 14, 4, 16, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 4, 14, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 2 ], + "to": [ 3, 1, 14 ], + "faces": { + "up": { "uv": [ 0, 2, 3, 14 ], "texture": "#side" }, + "west": { "uv": [ 2, 15, 14, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 15, 14, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 1, 2 ], + "to": [ 2, 3, 14 ], + "faces": { + "up": { "uv": [ 2, 2, 3, 14 ], "texture": "#front" }, + "west": { "uv": [ 2, 13, 14, 15 ], "texture": "#front" }, + "east": { "uv": [ 14, 13, 2, 15 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 11, 2 ], + "to": [ 2, 14, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#front" }, + "up": { "uv": [ 1, 2, 2, 14 ], "texture": "#front" }, + "north": { "uv": [ 14, 2, 15, 5 ], "texture": "#front" }, + "south": { "uv": [ 1, 2, 2, 5 ], "texture": "#front" }, + "west": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" }, + "east": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 2 ], + "to": [ 2, 11, 4 ], + "faces": { + "south": { "uv": [ 12, 5, 13, 13 ], "texture": "#front" }, + "west": { "uv": [ 14, 5, 12, 13 ], "texture": "#front" }, + "east": { "uv": [ 12, 5, 14, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 12 ], + "to": [ 2, 11, 14 ], + "faces": { + "north": { "uv": [ 3, 5, 4, 13 ], "texture": "#front" }, + "west": { "uv": [ 4, 5, 2, 13 ], "texture": "#front" }, + "east": { "uv": [ 2, 5, 4, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 6 ], + "to": [ 2, 11, 7 ], + "faces": { + "north": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "south": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "west": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "east": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 9 ], + "to": [ 2, 11, 10 ], + "faces": { + "north": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "south": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "west": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "east": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 10 ], + "to": [ 2, 4, 12 ], + "faces": { + "up": { "uv": [ 3, 10, 4, 12 ], "texture": "#front" }, + "west": { "uv": [ 6, 12, 4, 13 ], "texture": "#front" }, + "east": { "uv": [ 4, 12, 6, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 10 ], + "to": [ 2, 11, 12 ], + "faces": { + "down": { "uv": [ 1, 4, 2, 6 ], "texture": "#front" }, + "west": { "uv": [ 6, 5, 4, 6 ], "texture": "#front" }, + "east": { "uv": [ 4, 5, 6, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 4 ], + "to": [ 2, 11, 6 ], + "faces": { + "down": { "uv": [ 1, 10, 2, 12 ], "texture": "#front" }, + "west": { "uv": [ 12, 5, 10, 6 ], "texture": "#front" }, + "east": { "uv": [ 10, 5, 12, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 4 ], + "to": [ 2, 4, 6 ], + "faces": { + "up": { "uv": [ 2, 4, 3, 6 ], "texture": "#front" }, + "west": { "uv": [ 12, 12, 10, 13 ], "texture": "#front" }, + "east": { "uv": [ 10, 12, 12, 13 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_reed_door_top_rh.json b/src/main/resources/assets/betternether/models/block/bone_reed_door_top_rh.json new file mode 100644 index 0000000..cadf16d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_reed_door_top_rh.json @@ -0,0 +1,184 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/bone_reed_door_upper", + "front": "betternether:block/bone_reed_door_upper", + "side": "betternether:block/reeds_trapdoor" + }, + "elements": [ + { + "__comment": "Box11", + "from": [ 0, 12, 12 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "cullface": "up", "rotation": 180 }, + "north": { "uv": [ 1, 0, 4, 4 ], "texture": "#side" }, + "south": { "uv": [ 13, 0, 16, 4 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 16, 0, 12, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 0, 0, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 12, 0 ], + "to": [ 3, 16, 4 ], + "faces": { + "down": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "cullface": "up", "rotation": 180 }, + "north": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 13, 0, 16, 4 ], "texture": "#side" }, + "west": { "uv": [ 4, 0, 0, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 0, 12, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 14, 4 ], + "to": [ 3, 16, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#front", "rotation": 180 }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "up", "rotation": 180 }, + "west": { "uv": [ 4, 0, 12, 2 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 0, 12, 2 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 14 ], + "to": [ 3, 12, 16 ], + "faces": { + "north": { "uv": [ 0, 4, 3, 16 ], "texture": "#side" }, + "south": { "uv": [ 13, 4, 16, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 2, 4, 0, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 4, 2, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 0 ], + "to": [ 3, 12, 2 ], + "faces": { + "north": { "uv": [ 0, 4, 3, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 13, 4, 16, 16 ], "texture": "#side" }, + "west": { "uv": [ 16, 4, 14, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 14, 4, 16, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 2 ], + "to": [ 3, 1, 14 ], + "faces": { + "up": { "uv": [ 0, 2, 3, 14 ], "texture": "#side", "rotation": 180 }, + "west": { "uv": [ 2, 15, 14, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 15, 14, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 1, 2 ], + "to": [ 2, 3, 14 ], + "faces": { + "up": { "uv": [ 2, 2, 3, 14 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 14, 13, 2, 15 ], "texture": "#front" }, + "east": { "uv": [ 2, 13, 14, 15 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 11, 2 ], + "to": [ 2, 14, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#front", "rotation": 180 }, + "up": { "uv": [ 1, 2, 2, 14 ], "texture": "#front", "rotation": 180 }, + "north": { "uv": [ 1, 2, 2, 5 ], "texture": "#front" }, + "south": { "uv": [ 14, 2, 15, 5 ], "texture": "#front" }, + "west": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" }, + "east": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 12 ], + "to": [ 2, 11, 14 ], + "faces": { + "north": { "uv": [ 12, 5, 13, 13 ], "texture": "#front" }, + "west": { "uv": [ 12, 5, 14, 13 ], "texture": "#front" }, + "east": { "uv": [ 14, 5, 12, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 2 ], + "to": [ 2, 11, 4 ], + "faces": { + "south": { "uv": [ 3, 5, 4, 13 ], "texture": "#front" }, + "west": { "uv": [ 2, 5, 4, 13 ], "texture": "#front" }, + "east": { "uv": [ 4, 5, 2, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 9 ], + "to": [ 2, 11, 10 ], + "faces": { + "north": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "south": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "west": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "east": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 6 ], + "to": [ 2, 11, 7 ], + "faces": { + "north": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "south": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "west": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "east": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 4 ], + "to": [ 2, 4, 6 ], + "faces": { + "up": { "uv": [ 3, 10, 4, 12 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 4, 12, 6, 13 ], "texture": "#front" }, + "east": { "uv": [ 6, 12, 4, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 4 ], + "to": [ 2, 11, 6 ], + "faces": { + "down": { "uv": [ 1, 4, 2, 6 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 4, 5, 6, 6 ], "texture": "#front" }, + "east": { "uv": [ 6, 5, 4, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 10 ], + "to": [ 2, 11, 12 ], + "faces": { + "down": { "uv": [ 1, 10, 2, 12 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 10, 5, 12, 6 ], "texture": "#front" }, + "east": { "uv": [ 12, 5, 10, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 10 ], + "to": [ 2, 4, 12 ], + "faces": { + "up": { "uv": [ 2, 4, 3, 6 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 10, 12, 12, 13 ], "texture": "#front" }, + "east": { "uv": [ 12, 12, 10, 13 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_stairs.json b/src/main/resources/assets/betternether/models/block/bone_stairs.json new file mode 100644 index 0000000..a3bf39f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/bone_block", + "top": "betternether:block/bone_block", + "side": "betternether:block/bone_block" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_stalactite_0.json b/src/main/resources/assets/betternether/models/block/bone_stalactite_0.json new file mode 100644 index 0000000..16d1e9b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_stalactite_0.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_0", + "textures": { + "particle": "betternether:block/bone_block", + "texture": "betternether:block/bone_block" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_stalactite_1.json b/src/main/resources/assets/betternether/models/block/bone_stalactite_1.json new file mode 100644 index 0000000..acf1126 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_stalactite_1.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_1", + "textures": { + "particle": "betternether:block/bone_block", + "texture": "betternether:block/bone_block" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_stalactite_2.json b/src/main/resources/assets/betternether/models/block/bone_stalactite_2.json new file mode 100644 index 0000000..d7d2496 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_stalactite_2.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_2", + "textures": { + "particle": "betternether:block/bone_block", + "texture": "betternether:block/bone_block" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_stalactite_3.json b/src/main/resources/assets/betternether/models/block/bone_stalactite_3.json new file mode 100644 index 0000000..639628d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_stalactite_3.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_3", + "textures": { + "particle": "betternether:block/bone_block", + "texture": "betternether:block/bone_block" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_stalactite_4.json b/src/main/resources/assets/betternether/models/block/bone_stalactite_4.json new file mode 100644 index 0000000..c8b7130 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_stalactite_4.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_4", + "textures": { + "particle": "betternether:block/bone_block", + "texture": "betternether:block/bone_block" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_stalactite_5.json b/src/main/resources/assets/betternether/models/block/bone_stalactite_5.json new file mode 100644 index 0000000..49c2c15 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_stalactite_5.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_5", + "textures": { + "particle": "betternether:block/bone_block", + "texture": "betternether:block/bone_block" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_stalactite_6.json b/src/main/resources/assets/betternether/models/block/bone_stalactite_6.json new file mode 100644 index 0000000..da4fe9d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_stalactite_6.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_6", + "textures": { + "particle": "betternether:block/bone_block", + "texture": "betternether:block/bone_block" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_stalactite_7.json b/src/main/resources/assets/betternether/models/block/bone_stalactite_7.json new file mode 100644 index 0000000..532ace9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_stalactite_7.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_7", + "textures": { + "particle": "betternether:block/bone_block", + "texture": "betternether:block/bone_block" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bone_tile.json b/src/main/resources/assets/betternether/models/block/bone_tile.json new file mode 100644 index 0000000..6631366 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_tile.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/bone_slab_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_wall_ew.json b/src/main/resources/assets/betternether/models/block/bone_wall_ew.json new file mode 100644 index 0000000..7a5a96f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_wall_ew.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bone_wall_ns", + "textures": { + "top": "betternether:block/bone_wall_top_ew" + } +} diff --git a/src/main/resources/assets/betternether/models/block/bone_wall_ns.json b/src/main/resources/assets/betternether/models/block/bone_wall_ns.json new file mode 100644 index 0000000..0dfee6f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bone_wall_ns.json @@ -0,0 +1,158 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/bone_wall_side", + "side": "betternether:block/bone_wall_side", + "top": "betternether:block/bone_wall_top_ns" + }, + "elements": [ + { + "__comment": "Box2", + "from": [ 5, 0, 0 ], + "to": [ 11, 1, 8 ], + "faces": { + "down": { "uv": [ 5, 8, 11, 16 ], "texture": "#top", "cullface": "down" }, + "up": { "uv": [ 5, 0, 11, 8 ], "texture": "#top" }, + "north": { "uv": [ 5, 15, 11, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 15, 8, 16 ], "texture": "#side" }, + "east": { "uv": [ 8, 15, 16, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 14, 0 ], + "to": [ 11, 15, 8 ], + "faces": { + "down": { "uv": [ 5, 8, 11, 16 ], "texture": "#top" }, + "up": { "uv": [ 5, 0, 11, 8 ], "texture": "#top" }, + "north": { "uv": [ 5, 1, 11, 2 ], "texture": "#side" }, + "west": { "uv": [ 0, 1, 8, 2 ], "texture": "#side" }, + "east": { "uv": [ 8, 1, 16, 2 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 6, 15, 0 ], + "to": [ 10, 15.5, 8 ], + "faces": { + "up": { "uv": [ 6, 0, 10, 8 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 6, 0, 10, 1 ], "texture": "#side" }, + "west": { "uv": [ 0, 0, 8, 1 ], "texture": "#side" }, + "east": { "uv": [ 8, 0, 16, 1 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 7, 3, 7 ], + "to": [ 9, 13, 8 ], + "faces": { + "north": { "uv": [ 7, 3, 9, 13 ], "texture": "#side" }, + "west": { "uv": [ 7, 3, 8, 13 ], "texture": "#side" }, + "east": { "uv": [ 8, 3, 9, 13 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 7, 3, 3 ], + "to": [ 9, 13, 5 ], + "faces": { + "north": { "uv": [ 7, 3, 9, 13 ], "texture": "#side" }, + "south": { "uv": [ 7, 3, 9, 13 ], "texture": "#side" }, + "west": { "uv": [ 3, 3, 5, 13 ], "texture": "#side" }, + "east": { "uv": [ 11, 3, 13, 13 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 7, 3, 0 ], + "to": [ 9, 13, 1 ], + "faces": { + "north": { "uv": [ 7, 3, 9, 13 ], "texture": "#side" }, + "south": { "uv": [ 7, 3, 9, 13 ], "texture": "#side" }, + "west": { "uv": [ 0, 3, 1, 13 ], "texture": "#side" }, + "east": { "uv": [ 15, 3, 16, 13 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 6.5, 2, 2.5 ], + "to": [ 9.5, 3, 5.5 ], + "faces": { + "up": { "uv": [ 6.5, 2.5, 9.5, 5.5 ], "texture": "#top" }, + "north": { "uv": [ 6.5, 13, 9.5, 14 ], "texture": "#side" }, + "south": { "uv": [ 6.5, 13, 9.5, 14 ], "texture": "#side" }, + "west": { "uv": [ 2.5, 13, 5.5, 14 ], "texture": "#side" }, + "east": { "uv": [ 10.5, 13, 13.5, 14 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 6.5, 13, 2.5 ], + "to": [ 9.5, 14, 5.5 ], + "faces": { + "down": { "uv": [ 6.5, 10.5, 9.5, 13.5 ], "texture": "#top" }, + "north": { "uv": [ 6.5, 2, 9.5, 3 ], "texture": "#side" }, + "south": { "uv": [ 6.5, 2, 9.5, 3 ], "texture": "#side" }, + "west": { "uv": [ 2.5, 2, 5.5, 3 ], "texture": "#side" }, + "east": { "uv": [ 10.5, 2, 13.5, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 6, 1, 0 ], + "to": [ 10, 2, 8 ], + "faces": { + "up": { "uv": [ 6, 0, 10, 8 ], "texture": "#top" }, + "north": { "uv": [ 6, 14, 10, 15 ], "texture": "#side" }, + "west": { "uv": [ 0, 14, 8, 15 ], "texture": "#side" }, + "east": { "uv": [ 8, 14, 16, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 6.5, 2, 6.5 ], + "to": [ 9.5, 3, 8 ], + "faces": { + "up": { "uv": [ 6.5, 6.5, 9.5, 8 ], "texture": "#top" }, + "north": { "uv": [ 6.5, 13, 9.5, 14 ], "texture": "#side" }, + "west": { "uv": [ 6.5, 13, 8, 14 ], "texture": "#side" }, + "east": { "uv": [ 8, 13, 9.5, 14 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 6.5, 13, 6.5 ], + "to": [ 9.5, 14, 8 ], + "faces": { + "down": { "uv": [ 6.5, 8, 9.5, 9.5 ], "texture": "#top" }, + "north": { "uv": [ 6.5, 2, 9.5, 3 ], "texture": "#side" }, + "west": { "uv": [ 6.5, 2, 8, 3 ], "texture": "#side" }, + "east": { "uv": [ 8, 2, 9.5, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 6.5, 13, 0 ], + "to": [ 9.5, 14, 1.5 ], + "faces": { + "down": { "uv": [ 6.5, 14.5, 9.5, 16 ], "texture": "#top" }, + "north": { "uv": [ 6.5, 2, 9.5, 3 ], "texture": "#side" }, + "south": { "uv": [ 6.5, 2, 9.5, 3 ], "texture": "#side" }, + "west": { "uv": [ 0, 2, 1.5, 3 ], "texture": "#side" }, + "east": { "uv": [ 14.5, 2, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 6.5, 2, 0 ], + "to": [ 9.5, 3, 1.5 ], + "faces": { + "up": { "uv": [ 6.5, 0, 9.5, 1.5 ], "texture": "#top" }, + "north": { "uv": [ 6.5, 13, 9.5, 14 ], "texture": "#side" }, + "south": { "uv": [ 6.5, 13, 9.5, 14 ], "texture": "#side" }, + "west": { "uv": [ 0, 13, 1.5, 14 ], "texture": "#side" }, + "east": { "uv": [ 14.5, 13, 16, 14 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/brick_pot.json b/src/main/resources/assets/betternether/models/block/brick_pot.json new file mode 100644 index 0000000..f2a0f6c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/brick_pot.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/cincinnasite_pot", + "textures": { + "particle": "betternether:block/brick_pot_side", + "side": "betternether:block/brick_pot_side", + "top": "betternether:block/brick_pot_top", + "bottom": "betternether:block/nether_brick_tile_large" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bricks_fire_bowl_off.json b/src/main/resources/assets/betternether/models/block/bricks_fire_bowl_off.json new file mode 100644 index 0000000..d003bba --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bricks_fire_bowl_off.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/cincinnasite_fire_bowl_off", + "textures": { + "particle": "betternether:block/nether_brick_tile_large", + "top": "betternether:block/bricks_fire_bowl_top", + "side": "betternether:block/bricks_fire_bowl_side", + "bottom": "betternether:block/nether_brick_tile_large" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bricks_fire_bowl_on.json b/src/main/resources/assets/betternether/models/block/bricks_fire_bowl_on.json new file mode 100644 index 0000000..710d722 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bricks_fire_bowl_on.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/cincinnasite_fire_bowl_on", + "textures": { + "particle": "betternether:block/nether_brick_tile_large", + "top": "betternether:block/bricks_fire_bowl_top", + "side": "betternether:block/bricks_fire_bowl_side", + "bottom": "betternether:block/nether_brick_tile_large" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bricks_fire_bowl_soul_off.json b/src/main/resources/assets/betternether/models/block/bricks_fire_bowl_soul_off.json new file mode 100644 index 0000000..cb20fc4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bricks_fire_bowl_soul_off.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bricks_fire_bowl_off", + "textures": { + "top": "betternether:block/bricks_fire_bowl_top_soul" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/bricks_fire_bowl_soul_on.json b/src/main/resources/assets/betternether/models/block/bricks_fire_bowl_soul_on.json new file mode 100644 index 0000000..ec0509a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/bricks_fire_bowl_soul_on.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/bricks_fire_bowl_on", + "textures": { + "top": "betternether:block/bricks_fire_bowl_top_soul", + "fire_0": "block/soul_fire_0", + "fire_1": "block/soul_fire_1" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/brown_mushroom_bottom.json b/src/main/resources/assets/betternether/models/block/brown_mushroom_bottom.json new file mode 100644 index 0000000..e5c63a3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/brown_mushroom_bottom.json @@ -0,0 +1,150 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/brown_head", + "skin": "betternether:block/brown_head", + "inside": "block/mushroom_block_inside", + "stem": "betternether:block/brown_stem" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#inside", "cullface": "up" }, + "north": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" }, + "south": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" }, + "west": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" }, + "east": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 8, 0, 2 ], + "to": [ 14, 8, 8 ], + "faces": { + "down": { "uv": [ 8, 8, 14, 14 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 8, 2, 14, 8 ], "texture": "#stem" }, + "north": { "uv": [ 2, 8, 8, 16 ], "texture": "#stem" }, + "south": { "uv": [ 8, 8, 14, 16 ], "texture": "#stem" }, + "west": { "uv": [ 2, 8, 8, 16 ], "texture": "#stem" }, + "east": { "uv": [ 8, 8, 14, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 8, 0, 8 ], + "to": [ 13, 6, 13 ], + "faces": { + "down": { "uv": [ 8, 3, 13, 8 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 8, 8, 13, 13 ], "texture": "#stem" }, + "south": { "uv": [ 8, 10, 13, 16 ], "texture": "#stem" }, + "west": { "uv": [ 8, 10, 13, 16 ], "texture": "#stem" }, + "east": { "uv": [ 3, 10, 8, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 0, 3 ], + "to": [ 9, 10, 8 ], + "faces": { + "down": { "uv": [ 4, 8, 9, 13 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 4, 3, 9, 8 ], "texture": "#stem" }, + "north": { "uv": [ 7, 6, 12, 16 ], "texture": "#stem" }, + "south": { "uv": [ 4, 6, 9, 16 ], "texture": "#stem" }, + "west": { "uv": [ 3, 6, 8, 16 ], "texture": "#stem" }, + "east": { "uv": [ 8, 6, 13, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 8 ], + "to": [ 9, 5, 14 ], + "faces": { + "down": { "uv": [ 3, 2, 9, 8 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 3, 8, 9, 14 ], "texture": "#stem" }, + "north": { "uv": [ 7, 11, 13, 16 ], "texture": "#stem" }, + "south": { "uv": [ 3, 11, 9, 16 ], "texture": "#stem" }, + "west": { "uv": [ 8, 11, 14, 16 ], "texture": "#stem" }, + "east": { "uv": [ 2, 11, 8, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 0, 13 ], + "to": [ 7, 3, 16 ], + "faces": { + "down": { "uv": [ 4, 0, 7, 3 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 4, 13, 7, 16 ], "texture": "#stem" }, + "south": { "uv": [ 4, 13, 7, 16 ], "texture": "#stem", "cullface": "south" }, + "west": { "uv": [ 13, 13, 16, 16 ], "texture": "#stem" }, + "east": { "uv": [ 0, 13, 3, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 10 ], + "to": [ 3, 3, 13 ], + "faces": { + "down": { "uv": [ 0, 3, 3, 6 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 0, 10, 3, 13 ], "texture": "#stem" }, + "north": { "uv": [ 13, 13, 16, 16 ], "texture": "#stem" }, + "south": { "uv": [ 0, 13, 3, 16 ], "texture": "#stem" }, + "west": { "uv": [ 10, 13, 13, 16 ], "texture": "#stem", "cullface": "west" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 1 ], + "to": [ 5, 3, 4 ], + "faces": { + "down": { "uv": [ 2, 12, 5, 15 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 2, 1, 5, 4 ], "texture": "#stem" }, + "north": { "uv": [ 11, 13, 14, 16 ], "texture": "#stem" }, + "south": { "uv": [ 2, 13, 5, 16 ], "texture": "#stem" }, + "west": { "uv": [ 1, 13, 4, 16 ], "texture": "#stem" }, + "east": { "uv": [ 12, 13, 15, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 14, 3, 14 ], + "faces": { + "down": { "uv": [ 11, 2, 14, 5 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 11, 11, 14, 14 ], "texture": "#stem" }, + "north": { "uv": [ 2, 13, 5, 16 ], "texture": "#stem" }, + "south": { "uv": [ 11, 13, 14, 16 ], "texture": "#stem" }, + "west": { "uv": [ 11, 13, 14, 16 ], "texture": "#stem" }, + "east": { "uv": [ 2, 13, 5, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 0, 0 ], + "to": [ 13, 3, 3 ], + "faces": { + "down": { "uv": [ 10, 13, 13, 16 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 10, 0, 13, 3 ], "texture": "#stem" }, + "north": { "uv": [ 3, 13, 6, 16 ], "texture": "#stem", "cullface": "north" }, + "west": { "uv": [ 0, 13, 3, 16 ], "texture": "#stem" }, + "east": { "uv": [ 13, 13, 16, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 0, 4 ], + "to": [ 15, 3, 7 ], + "faces": { + "down": { "uv": [ 12, 9, 15, 12 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 12, 4, 15, 7 ], "texture": "#stem" }, + "north": { "uv": [ 1, 13, 4, 16 ], "texture": "#stem" }, + "south": { "uv": [ 12, 13, 15, 16 ], "texture": "#stem" }, + "east": { "uv": [ 9, 13, 12, 16 ], "texture": "#stem" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/brown_mushroom_middle_01.json b/src/main/resources/assets/betternether/models/block/brown_mushroom_middle_01.json new file mode 100644 index 0000000..a65bba5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/brown_mushroom_middle_01.json @@ -0,0 +1,25 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/brown_head", + "skin": "betternether:block/brown_head", + "inside": "block/mushroom_block_inside", + "stem": "betternether:block/brown_stem" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#inside", "cullface": "up" }, + "north": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" }, + "south": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" }, + "west": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" }, + "east": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/brown_mushroom_middle_02.json b/src/main/resources/assets/betternether/models/block/brown_mushroom_middle_02.json new file mode 100644 index 0000000..a5d5dcb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/brown_mushroom_middle_02.json @@ -0,0 +1,38 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/brown_head", + "skin": "betternether:block/brown_head", + "inside": "block/mushroom_block_inside", + "stem": "betternether:block/brown_stem" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#inside", "cullface": "up" }, + "north": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" }, + "south": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" }, + "west": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" }, + "east": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box4", + "from": [ 3, 6, 8 ], + "to": [ 13, 9, 16 ], + "faces": { + "down": { "uv": [ 3, 0, 13, 8 ], "texture": "#inside" }, + "up": { "uv": [ 3, 8, 13, 16 ], "texture": "#skin" }, + "north": { "uv": [ 3, 7, 13, 10 ], "texture": "#skin" }, + "south": { "uv": [ 3, 7, 13, 10 ], "texture": "#skin", "cullface": "south" }, + "west": { "uv": [ 8, 7, 16, 10 ], "texture": "#skin" }, + "east": { "uv": [ 0, 7, 8, 10 ], "texture": "#skin" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/brown_mushroom_middle_03.json b/src/main/resources/assets/betternether/models/block/brown_mushroom_middle_03.json new file mode 100644 index 0000000..ed04822 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/brown_mushroom_middle_03.json @@ -0,0 +1,51 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/brown_head", + "skin": "betternether:block/brown_head", + "inside": "block/mushroom_block_inside", + "stem": "betternether:block/brown_stem" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#inside", "cullface": "down" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#inside", "cullface": "up" }, + "north": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" }, + "south": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" }, + "west": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" }, + "east": { "uv": [ 5, 0, 11, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box4", + "from": [ 3, 9.5, 8 ], + "to": [ 9, 12.5, 14 ], + "faces": { + "down": { "uv": [ 3, 2, 9, 8 ], "texture": "#inside" }, + "up": { "uv": [ 3, 8, 9, 14 ], "texture": "#skin" }, + "north": { "uv": [ 7, 3.5, 13, 6.5 ], "texture": "#skin" }, + "south": { "uv": [ 3, 3.5, 9, 6.5 ], "texture": "#skin", "cullface": "south" }, + "west": { "uv": [ 8, 3.5, 14, 6.5 ], "texture": "#skin" }, + "east": { "uv": [ 2, 3.5, 8, 6.5 ], "texture": "#skin" } + } + }, + { + "__comment": "Box4", + "from": [ 7, 4, 1 ], + "to": [ 13, 7, 7 ], + "faces": { + "down": { "uv": [ 7, 9, 13, 15 ], "texture": "#inside" }, + "up": { "uv": [ 7, 1, 13, 7 ], "texture": "#skin" }, + "north": { "uv": [ 3, 9, 9, 12 ], "texture": "#skin" }, + "south": { "uv": [ 7, 9, 13, 12 ], "texture": "#skin", "cullface": "south" }, + "west": { "uv": [ 1, 9, 7, 12 ], "texture": "#skin" }, + "east": { "uv": [ 9, 9, 15, 12 ], "texture": "#skin" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/brown_mushroom_top_center.json b/src/main/resources/assets/betternether/models/block/brown_mushroom_top_center.json new file mode 100644 index 0000000..a88e2ed --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/brown_mushroom_top_center.json @@ -0,0 +1,49 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/brown_mushroom_block", + "skin": "block/brown_mushroom_block", + "inside": "block/mushroom_block_inside", + "stem": "betternether:block/brown_stem" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 8, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#inside" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#skin", "cullface": "up" }, + "north": { "uv": [ 0, 0, 16, 8 ], "texture": "#inside", "cullface": "north" }, + "south": { "uv": [ 0, 0, 16, 8 ], "texture": "#inside", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 8 ], "texture": "#inside", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 8 ], "texture": "#inside", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 6, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#inside", "cullface": "down" }, + "north": { "uv": [ 5, 10, 11, 16 ], "texture": "#stem" }, + "south": { "uv": [ 5, 10, 11, 16 ], "texture": "#stem" }, + "west": { "uv": [ 5, 10, 11, 16 ], "texture": "#stem" }, + "east": { "uv": [ 5, 10, 11, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 6, 3 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#inside" }, + "north": { "uv": [ 3, 8, 13, 10 ], "texture": "#inside" }, + "south": { "uv": [ 3, 8, 13, 10 ], "texture": "#inside" }, + "west": { "uv": [ 3, 8, 13, 10 ], "texture": "#inside" }, + "east": { "uv": [ 3, 8, 13, 10 ], "texture": "#inside" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/brown_mushroom_top_corner.json b/src/main/resources/assets/betternether/models/block/brown_mushroom_top_corner.json new file mode 100644 index 0000000..66e1991 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/brown_mushroom_top_corner.json @@ -0,0 +1,37 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/brown_mushroom_block", + "skin": "block/brown_mushroom_block", + "inside": "block/mushroom_block_inside", + "stem": "betternether:block/brown_stem" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 8, 7 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 9 ], "texture": "#inside" }, + "up": { "uv": [ 0, 7, 16, 16 ], "texture": "#skin", "cullface": "up" }, + "north": { "uv": [ 0, 0, 16, 8 ], "texture": "#skin", "cullface": "north" }, + "south": { "uv": [ 0, 0, 16, 8 ], "texture": "#inside", "cullface": "south" }, + "west": { "uv": [ 7, 0, 16, 8 ], "texture": "#skin", "cullface": "west" }, + "east": { "uv": [ 0, 0, 9, 8 ], "texture": "#inside", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 8, 0 ], + "to": [ 16, 16, 7 ], + "faces": { + "down": { "uv": [ 7, 9, 16, 16 ], "texture": "#inside" }, + "up": { "uv": [ 7, 0, 16, 7 ], "texture": "#skin", "cullface": "up" }, + "north": { "uv": [ 0, 0, 9, 8 ], "texture": "#skin", "cullface": "north" }, + "west": { "uv": [ 0, 0, 7, 8 ], "texture": "#skin", "cullface": "west" }, + "east": { "uv": [ 9, 0, 16, 8 ], "texture": "#inside", "cullface": "east" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/brown_mushroom_top_side.json b/src/main/resources/assets/betternether/models/block/brown_mushroom_top_side.json new file mode 100644 index 0000000..a669e9b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/brown_mushroom_top_side.json @@ -0,0 +1,25 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/brown_mushroom_block", + "skin": "block/brown_mushroom_block", + "inside": "block/mushroom_block_inside", + "stem": "betternether:block/brown_stem" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 8, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#inside" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#skin", "cullface": "up" }, + "north": { "uv": [ 0, 0, 16, 8 ], "texture": "#skin", "cullface": "north" }, + "south": { "uv": [ 0, 0, 16, 8 ], "texture": "#inside", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 8 ], "texture": "#inside", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 8 ], "texture": "#inside", "cullface": "east" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/ceiling_mushrooms.json b/src/main/resources/assets/betternether/models/block/ceiling_mushrooms.json new file mode 100644 index 0000000..d15fc7c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/ceiling_mushrooms.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/ceiling_mushrooms_side", + "down": "betternether:block/ceiling_mushrooms_bottom", + "up": "block/netherrack", + "north": "betternether:block/ceiling_mushrooms_side", + "east": "betternether:block/ceiling_mushrooms_side", + "south": "betternether:block/ceiling_mushrooms_side", + "west": "betternether:block/ceiling_mushrooms_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_acacia.json b/src/main/resources/assets/betternether/models/block/chair_acacia.json new file mode 100644 index 0000000..2e5022a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_acacia.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "block/acacia_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_acacia_top.json b/src/main/resources/assets/betternether/models/block/chair_acacia_top.json new file mode 100644 index 0000000..828e405 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_acacia_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "block/acacia_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_anchor_tree.json b/src/main/resources/assets/betternether/models/block/chair_anchor_tree.json new file mode 100644 index 0000000..544df6d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_anchor_tree.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_anchor_tree_top.json b/src/main/resources/assets/betternether/models/block/chair_anchor_tree_top.json new file mode 100644 index 0000000..359a911 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_anchor_tree_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_birch.json b/src/main/resources/assets/betternether/models/block/chair_birch.json new file mode 100644 index 0000000..b5316d2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_birch.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "block/birch_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_birch_top.json b/src/main/resources/assets/betternether/models/block/chair_birch_top.json new file mode 100644 index 0000000..65e283c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_birch_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "block/birch_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_cincinnasite.json b/src/main/resources/assets/betternether/models/block/chair_cincinnasite.json new file mode 100644 index 0000000..a6c199b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_cincinnasite.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "betternether:block/cincinnasite_forged" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_cincinnasite_top.json b/src/main/resources/assets/betternether/models/block/chair_cincinnasite_top.json new file mode 100644 index 0000000..5e1ff7e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_cincinnasite_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/cincinnasite_forged" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_crimson.json b/src/main/resources/assets/betternether/models/block/chair_crimson.json new file mode 100644 index 0000000..5b7a7df --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_crimson.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "block/crimson_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_dark_oak.json b/src/main/resources/assets/betternether/models/block/chair_dark_oak.json new file mode 100644 index 0000000..d851f2a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_dark_oak.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "block/dark_oak_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_dark_oak_top.json b/src/main/resources/assets/betternether/models/block/chair_dark_oak_top.json new file mode 100644 index 0000000..1961ef6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_dark_oak_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "block/dark_oak_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_jungle.json b/src/main/resources/assets/betternether/models/block/chair_jungle.json new file mode 100644 index 0000000..90fdcbc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_jungle.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "block/jungle_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_jungle_top.json b/src/main/resources/assets/betternether/models/block/chair_jungle_top.json new file mode 100644 index 0000000..77bf9c3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_jungle_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "block/jungle_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_mushroom.json b/src/main/resources/assets/betternether/models/block/chair_mushroom.json new file mode 100644 index 0000000..972455e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_mushroom.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "betternether:block/mushroom_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_mushroom_fir.json b/src/main/resources/assets/betternether/models/block/chair_mushroom_fir.json new file mode 100644 index 0000000..d452776 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_mushroom_fir.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_mushroom_fir_top.json b/src/main/resources/assets/betternether/models/block/chair_mushroom_fir_top.json new file mode 100644 index 0000000..e034556 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_mushroom_fir_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_nether_sakura.json b/src/main/resources/assets/betternether/models/block/chair_nether_sakura.json new file mode 100644 index 0000000..16c8a15 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_nether_sakura.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_nether_sakura_top.json b/src/main/resources/assets/betternether/models/block/chair_nether_sakura_top.json new file mode 100644 index 0000000..5759122 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_nether_sakura_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_oak.json b/src/main/resources/assets/betternether/models/block/chair_oak.json new file mode 100644 index 0000000..dc84eac --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_oak.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "block/oak_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_oak_top.json b/src/main/resources/assets/betternether/models/block/chair_oak_top.json new file mode 100644 index 0000000..8f1d908 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_oak_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "block/oak_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_reeds.json b/src/main/resources/assets/betternether/models/block/chair_reeds.json new file mode 100644 index 0000000..8f8459e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_reeds.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_reeds_top.json b/src/main/resources/assets/betternether/models/block/chair_reeds_top.json new file mode 100644 index 0000000..4b24bb4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_reeds_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_rubeus.json b/src/main/resources/assets/betternether/models/block/chair_rubeus.json new file mode 100644 index 0000000..ac77836 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_rubeus.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_rubeus_top.json b/src/main/resources/assets/betternether/models/block/chair_rubeus_top.json new file mode 100644 index 0000000..5b7a941 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_rubeus_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_spruce.json b/src/main/resources/assets/betternether/models/block/chair_spruce.json new file mode 100644 index 0000000..a2d5556 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_spruce.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "block/spruce_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_spruce_top.json b/src/main/resources/assets/betternether/models/block/chair_spruce_top.json new file mode 100644 index 0000000..f5e2901 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_spruce_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "block/spruce_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_stalagnate.json b/src/main/resources/assets/betternether/models/block/chair_stalagnate.json new file mode 100644 index 0000000..80717eb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_stalagnate.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_stalagnate_top.json b/src/main/resources/assets/betternether/models/block/chair_stalagnate_top.json new file mode 100644 index 0000000..31cd03a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_stalagnate_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_warped.json b/src/main/resources/assets/betternether/models/block/chair_warped.json new file mode 100644 index 0000000..6c1009b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_warped.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "block/warped_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_wart.json b/src/main/resources/assets/betternether/models/block/chair_wart.json new file mode 100644 index 0000000..2025777 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_wart.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_wart_top.json b/src/main/resources/assets/betternether/models/block/chair_wart_top.json new file mode 100644 index 0000000..326e36b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_wart_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_willow.json b/src/main/resources/assets/betternether/models/block/chair_willow.json new file mode 100644 index 0000000..e4965dc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_willow.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/bn_chair", + "textures": { + "texture": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chair_willow_top.json b/src/main/resources/assets/betternether/models/block/chair_willow_top.json new file mode 100644 index 0000000..e623824 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chair_willow_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/chest_item.json b/src/main/resources/assets/betternether/models/block/chest_item.json new file mode 100644 index 0000000..500dadc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chest_item.json @@ -0,0 +1,42 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "elements": [ + { + "__comment": "Box1", + "from": [ 1, 0, 1 ], + "to": [ 15, 10, 15 ], + "faces": { + "down": { "uv": [ 3.5, 4.75, 7, 8.25 ], "texture": "#texture", "rotation": 180 }, + "north": { "uv": [ 10.5, 10.75, 14, 8.25 ], "texture": "#texture" }, + "south": { "uv": [ 0, 10.75, 3.5, 8.25 ], "texture": "#texture" }, + "west": { "uv": [ 7, 10.75, 10.5, 8.25 ], "texture": "#texture" }, + "east": { "uv": [ 3.5, 10.75, 7, 8.25 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 10, 1 ], + "to": [ 15, 14, 15 ], + "faces": { + "up": { "uv": [ 7, 0, 10.5, 3.5 ], "texture": "#texture", "rotation": 180 }, + "north": { "uv": [ 10.5, 4.75, 14, 3.75 ], "texture": "#texture" }, + "south": { "uv": [ 0, 4.75, 3.5, 3.75 ], "texture": "#texture" }, + "west": { "uv": [ 7, 4.75, 10.5, 3.75 ], "texture": "#texture" }, + "east": { "uv": [ 3.5, 4.75, 7, 3.75 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 7, 0 ], + "to": [ 9, 11, 1 ], + "faces": { + "down": { "uv": [ 0.25, 0, 0.75, 0.25 ], "texture": "#texture", "rotation": 180 }, + "up": { "uv": [ 0.75, 0, 1.25, 0.25 ], "texture": "#texture", "rotation": 180 }, + "north": { "uv": [ 0.5, 1.25, 1, 0.25 ], "texture": "#texture" }, + "west": { "uv": [ 0, 1.25, 0.25, 0.25 ], "texture": "#texture" }, + "east": { "uv": [ 0, 1.25, 0.25, 0.25 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/chest_of_drawers.json b/src/main/resources/assets/betternether/models/block/chest_of_drawers.json new file mode 100644 index 0000000..3afbe46 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chest_of_drawers.json @@ -0,0 +1,335 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/chest_of_drawers_back", + "front": "betternether:block/chest_of_drawers_front", + "back": "betternether:block/chest_of_drawers_back", + "side": "betternether:block/chest_of_drawers_side", + "top": "betternether:block/chest_of_drawers_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 15, 0 ], + "to": [ 16, 16, 8 ], + "faces": { + "down": { "uv": [ 0, 0, 8, 16 ], "texture": "#top", "rotation": 270 }, + "up": { "uv": [ 0, 0, 8, 16 ], "texture": "#top", "cullface": "up", "rotation": 90 }, + "north": { "uv": [ 0, 0, 16, 1 ], "texture": "#back", "cullface": "north" }, + "south": { "uv": [ 0, 0, 16, 1 ], "texture": "#front" }, + "west": { "uv": [ 0, 0, 8, 1 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 8, 0, 16, 1 ], "texture": "#front", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 2, 0 ], + "to": [ 16, 15, 7 ], + "faces": { + "down": { "uv": [ 0.5, 0, 7.5, 16 ], "texture": "#top", "rotation": 270 }, + "north": { "uv": [ 0, 1, 16, 14 ], "texture": "#back", "cullface": "north" }, + "south": { "uv": [ 0, 1, 16, 14 ], "texture": "#front" }, + "west": { "uv": [ 0, 1, 7, 14 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 0, 1, 7, 14 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 0, 1 ], + "to": [ 15, 2, 2 ], + "faces": { + "down": { "uv": [ 1, 14, 2, 15 ], "texture": "#front", "cullface": "down", "rotation": 270 }, + "north": { "uv": [ 1, 14, 2, 16 ], "texture": "#front" }, + "south": { "uv": [ 14, 14, 15, 16 ], "texture": "#front" }, + "west": { "uv": [ 1, 14, 2, 16 ], "texture": "#front" }, + "east": { "uv": [ 14, 14, 15, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 0, 5 ], + "to": [ 15, 2, 6 ], + "faces": { + "down": { "uv": [ 5, 14, 6, 15 ], "texture": "#front", "cullface": "down", "rotation": 270 }, + "north": { "uv": [ 1, 14, 2, 16 ], "texture": "#front" }, + "south": { "uv": [ 14, 14, 15, 16 ], "texture": "#front" }, + "west": { "uv": [ 5, 14, 6, 16 ], "texture": "#front" }, + "east": { "uv": [ 10, 14, 11, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 11, 7 ], + "to": [ 15, 14, 8 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 0, 5 ], + "to": [ 2, 2, 6 ], + "faces": { + "down": { "uv": [ 1, 15, 2, 16 ], "texture": "#side", "cullface": "down", "rotation": 270 }, + "north": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "south": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "west": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "east": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 12.5, 12, 8 ], + "to": [ 13.5, 12.5, 8.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 11, 7 ], + "to": [ 10, 14, 8 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 7.5, 12, 8 ], + "to": [ 8.5, 12.5, 8.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 11, 7 ], + "to": [ 5, 14, 8 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 2.5, 12, 8 ], + "to": [ 3.5, 12.5, 8.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 12.5, 8, 8 ], + "to": [ 13.5, 8.5, 8.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 7, 7 ], + "to": [ 15, 10, 8 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 7.5, 8, 8 ], + "to": [ 8.5, 8.5, 8.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 7, 7 ], + "to": [ 10, 10, 8 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 2.5, 8, 8 ], + "to": [ 3.5, 8.5, 8.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 7, 7 ], + "to": [ 5, 10, 8 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 12.5, 4, 8 ], + "to": [ 13.5, 4.5, 8.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 3, 7 ], + "to": [ 15, 6, 8 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 7.5, 4, 8 ], + "to": [ 8.5, 4.5, 8.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 3, 7 ], + "to": [ 10, 6, 8 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 2.5, 4, 8 ], + "to": [ 3.5, 4.5, 8.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 3, 7 ], + "to": [ 5, 6, 8 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 0, 1 ], + "to": [ 2, 2, 2 ], + "faces": { + "down": { "uv": [ 1, 15, 2, 16 ], "texture": "#side", "cullface": "down", "rotation": 270 }, + "north": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "south": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "west": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "east": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 0, 1 ], + "to": [ 15, 2, 2 ], + "faces": { + "down": { "uv": [ 1, 15, 2, 16 ], "texture": "#side", "cullface": "down", "rotation": 270 }, + "north": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "south": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "west": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "east": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 0, 5 ], + "to": [ 15, 2, 6 ], + "faces": { + "down": { "uv": [ 1, 15, 2, 16 ], "texture": "#side", "cullface": "down", "rotation": 270 }, + "north": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "south": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "west": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "east": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" } + } + } + ], + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "scale": [ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/chest_of_drawers_open.json b/src/main/resources/assets/betternether/models/block/chest_of_drawers_open.json new file mode 100644 index 0000000..69fad69 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/chest_of_drawers_open.json @@ -0,0 +1,401 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/chest_of_drawers_back", + "front": "betternether:block/chest_of_drawers_front", + "back": "betternether:block/chest_of_drawers_back", + "side": "betternether:block/chest_of_drawers_side", + "top": "betternether:block/chest_of_drawers_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 15, 0 ], + "to": [ 16, 16, 8 ], + "faces": { + "down": { "uv": [ 0, 0, 8, 16 ], "texture": "#top", "rotation": 270 }, + "up": { "uv": [ 0, 0, 8, 16 ], "texture": "#top", "cullface": "up", "rotation": 90 }, + "north": { "uv": [ 0, 0, 16, 1 ], "texture": "#back", "cullface": "north" }, + "south": { "uv": [ 0, 0, 16, 1 ], "texture": "#front" }, + "west": { "uv": [ 0, 0, 8, 1 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 8, 0, 16, 1 ], "texture": "#front", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 2, 0 ], + "to": [ 16, 15, 7 ], + "faces": { + "down": { "uv": [ 0.5, 0, 7.5, 16 ], "texture": "#top", "rotation": 270 }, + "north": { "uv": [ 0, 1, 16, 14 ], "texture": "#back", "cullface": "north" }, + "south": { "uv": [ 0, 1, 16, 14 ], "texture": "#front" }, + "west": { "uv": [ 0, 1, 7, 14 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 0, 1, 7, 14 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 0, 1 ], + "to": [ 15, 2, 2 ], + "faces": { + "down": { "uv": [ 1, 14, 2, 15 ], "texture": "#front", "cullface": "down", "rotation": 270 }, + "north": { "uv": [ 1, 14, 2, 16 ], "texture": "#front" }, + "south": { "uv": [ 14, 14, 15, 16 ], "texture": "#front" }, + "west": { "uv": [ 1, 14, 2, 16 ], "texture": "#front" }, + "east": { "uv": [ 14, 14, 15, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 0, 5 ], + "to": [ 15, 2, 6 ], + "faces": { + "down": { "uv": [ 5, 14, 6, 15 ], "texture": "#front", "cullface": "down", "rotation": 270 }, + "north": { "uv": [ 1, 14, 2, 16 ], "texture": "#front" }, + "south": { "uv": [ 14, 14, 15, 16 ], "texture": "#front" }, + "west": { "uv": [ 5, 14, 6, 16 ], "texture": "#front" }, + "east": { "uv": [ 10, 14, 11, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 11, 9 ], + "to": [ 15, 14, 10 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 0, 5 ], + "to": [ 2, 2, 6 ], + "faces": { + "down": { "uv": [ 1, 15, 2, 16 ], "texture": "#side", "cullface": "down", "rotation": 270 }, + "north": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "south": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "west": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "east": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 12.5, 12, 10 ], + "to": [ 13.5, 12.5, 10.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 11, 7 ], + "to": [ 10, 14, 8 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 7.5, 12, 8 ], + "to": [ 8.5, 12.5, 8.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 11, 8 ], + "to": [ 5, 14, 9 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 2.5, 12, 9 ], + "to": [ 3.5, 12.5, 9.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 12.5, 8, 8.5 ], + "to": [ 13.5, 8.5, 9 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 7, 7.5 ], + "to": [ 15, 10, 8.5 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 7.5, 8, 10 ], + "to": [ 8.5, 8.5, 10.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 7, 9 ], + "to": [ 10, 10, 10 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 2.5, 8, 8 ], + "to": [ 3.5, 8.5, 8.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 7, 7 ], + "to": [ 5, 10, 8 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 12.5, 4, 8.5 ], + "to": [ 13.5, 4.5, 9 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 3, 7.5 ], + "to": [ 15, 6, 8.5 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 7.5, 4, 8 ], + "to": [ 8.5, 4.5, 8.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 3, 7 ], + "to": [ 10, 6, 8 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box21", + "from": [ 2.5, 4, 9 ], + "to": [ 3.5, 4.5, 9.5 ], + "faces": { + "down": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 270 }, + "up": { "uv": [ 10, 2, 10.5, 3 ], "texture": "#side", "rotation": 90 }, + "south": { "uv": [ 10, 2.5, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" }, + "east": { "uv": [ 10, 2, 10.5, 2.5 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 3, 8 ], + "to": [ 5, 6, 9 ], + "faces": { + "down": { "uv": [ 12, 2, 16, 3 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 12, 0, 16, 1 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 12, 0, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 15, 0, 16, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 0, 1 ], + "to": [ 2, 2, 2 ], + "faces": { + "down": { "uv": [ 1, 15, 2, 16 ], "texture": "#side", "cullface": "down", "rotation": 270 }, + "north": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "south": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "west": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "east": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 0, 1 ], + "to": [ 15, 2, 2 ], + "faces": { + "down": { "uv": [ 1, 15, 2, 16 ], "texture": "#side", "cullface": "down", "rotation": 270 }, + "north": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "south": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "west": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "east": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 0, 5 ], + "to": [ 15, 2, 6 ], + "faces": { + "down": { "uv": [ 1, 15, 2, 16 ], "texture": "#side", "cullface": "down", "rotation": 270 }, + "north": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "south": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "west": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" }, + "east": { "uv": [ 1, 14, 2, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box27", + "from": [ 1.5, 3, 5 ], + "to": [ 4.5, 5, 8 ], + "faces": { + "down": { "uv": [ 13, 0, 16, 3 ], "texture": "#side" }, + "up": { "uv": [ 13, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" }, + "east": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" } + } + }, + { + "__comment": "Box27", + "from": [ 11.5, 3, 4.5 ], + "to": [ 14.5, 5, 7.5 ], + "faces": { + "down": { "uv": [ 13, 0, 16, 3 ], "texture": "#side" }, + "up": { "uv": [ 13, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" }, + "east": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" } + } + }, + { + "__comment": "Box27", + "from": [ 6.5, 7, 6 ], + "to": [ 9.5, 9, 9 ], + "faces": { + "down": { "uv": [ 13, 0, 16, 3 ], "texture": "#side" }, + "up": { "uv": [ 13, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" }, + "east": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" } + } + }, + { + "__comment": "Box27", + "from": [ 1.5, 11, 6 ], + "to": [ 4.5, 13, 9 ], + "faces": { + "down": { "uv": [ 13, 0, 16, 3 ], "texture": "#side" }, + "up": { "uv": [ 13, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" }, + "east": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" } + } + }, + { + "__comment": "Box27", + "from": [ 11.5, 7, 5.5 ], + "to": [ 14.5, 9, 8.5 ], + "faces": { + "down": { "uv": [ 13, 0, 16, 3 ], "texture": "#side" }, + "up": { "uv": [ 13, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" }, + "east": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" } + } + }, + { + "__comment": "Box27", + "from": [ 11.5, 11, 6 ], + "to": [ 14.5, 13, 9 ], + "faces": { + "down": { "uv": [ 13, 0, 16, 3 ], "texture": "#side" }, + "up": { "uv": [ 13, 0, 16, 3 ], "texture": "#side" }, + "west": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" }, + "east": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" } + } + } + ], + "display": { + "gui": { + "rotation": [ 30, 225, 0 ], + "scale": [ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_anvil.json b/src/main/resources/assets/betternether/models/block/cincinnasite_anvil.json new file mode 100644 index 0000000..f1a530d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_anvil.json @@ -0,0 +1,68 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cincinnasite_anvil_side", + "side": "betternether:block/cincinnasite_anvil_side", + "front": "betternether:block/cincinnasite_anvil_front", + "top": "betternether:block/cincinnasite_anvil_top", + "bottom": "betternether:block/cincinnasite_anvil_bottom" + }, + "elements": [ + { + "__comment": "Anvil base", + "from": [ 2, 0, 2 ], + "to": [ 14, 4, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#bottom" }, + "north": { "uv": [ 2, 12, 14, 16 ], "texture": "#front" }, + "south": { "uv": [ 2, 12, 14, 16 ], "texture": "#front" }, + "west": { "uv": [ 2, 12, 14, 16 ], "texture": "#side" }, + "east": { "uv": [ 2, 12, 14, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Lower narrow portion", + "from": [ 4, 4, 3 ], + "to": [ 12, 5, 13 ], + "faces": { + "up": { "uv": [ 4, 3, 12, 13 ], "texture": "#bottom" }, + "north": { "uv": [ 4, 11, 12, 12 ], "texture": "#front" }, + "south": { "uv": [ 4, 11, 12, 12 ], "texture": "#front" }, + "west": { "uv": [ 3, 11, 13, 12 ], "texture": "#side" }, + "east": { "uv": [ 3, 11, 13, 12 ], "texture": "#side" } + } + }, + { + "__comment": "Wider section beneath top portion", + "from": [ 6, 5, 4 ], + "to": [ 10, 10, 12 ], + "faces": { + "north": { "uv": [ 6, 6, 10, 11 ], "texture": "#front" }, + "south": { "uv": [ 6, 6, 10, 11 ], "texture": "#front" }, + "west": { "uv": [ 4, 6, 12, 11 ], "texture": "#side" }, + "east": { "uv": [ 4, 6, 12, 11 ], "texture": "#side" } + } + }, + { + "__comment": "Anvil top", + "from": [ 3, 10, 0 ], + "to": [ 13, 16, 16 ], + "faces": { + "down": { "uv": [ 3, 0, 13, 16 ], "texture": "#top" }, + "up": { "uv": [ 3, 0, 13, 16 ], "texture": "#top" }, + "north": { "uv": [ 3, 0, 13, 6 ], "texture": "#front" }, + "south": { "uv": [ 3, 0, 13, 6 ], "texture": "#front" }, + "west": { "uv": [ 0, 0, 16, 6 ], "texture": "#side" }, + "east": { "uv": [ 0, 0, 16, 6 ], "texture": "#side" } + } + } + ], + "display": { + "fixed": { + "rotation": [ 0, 90, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_bars_post.json b/src/main/resources/assets/betternether/models/block/cincinnasite_bars_post.json new file mode 100644 index 0000000..a073a8d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_bars_post.json @@ -0,0 +1,24 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/cincinnasite_tiles_small", + "bars": "betternether:block/quartz_glass", + "edge": "betternether:block/cincinnasite_tiles_small" + }, + "elements": [ + { + "__comment": "Box6", + "from": [ 7, 0, 7 ], + "to": [ 9, 16, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#edge", "cullface": "down" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#edge", "cullface": "up" }, + "north": { "uv": [ 7, 0, 9, 16 ], "texture": "#edge" }, + "south": { "uv": [ 7, 0, 9, 16 ], "texture": "#edge", "cullface": "south" }, + "west": { "uv": [ 7, 0, 9, 16 ], "texture": "#edge" }, + "east": { "uv": [ 7, 0, 9, 16 ], "texture": "#edge" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_bars_side.json b/src/main/resources/assets/betternether/models/block/cincinnasite_bars_side.json new file mode 100644 index 0000000..7b32c1e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_bars_side.json @@ -0,0 +1,47 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/cincinnasite_tiles_small", + "edge": "betternether:block/cincinnasite_tiles_small" + }, + "elements": [ + { + "__comment": "Box10", + "from": [ 7, 0, 0 ], + "to": [ 9, 1, 8 ], + "faces": { + "down": { "uv": [ 7, 8, 9, 16 ], "texture": "#edge", "cullface": "down" }, + "up": { "uv": [ 7, 0, 9, 8 ], "texture": "#edge" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#edge", "cullface": "north" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#edge" }, + "west": { "uv": [ 0, 15, 8, 16 ], "texture": "#edge" }, + "east": { "uv": [ 8, 15, 16, 16 ], "texture": "#edge" } + } + }, + { + "__comment": "Box10", + "from": [ 7, 15, 0 ], + "to": [ 9, 16, 8 ], + "faces": { + "down": { "uv": [ 7, 8, 9, 16 ], "texture": "#edge" }, + "up": { "uv": [ 7, 0, 9, 8 ], "texture": "#edge", "cullface": "up" }, + "north": { "uv": [ 7, 0, 9, 1 ], "texture": "#edge", "cullface": "north" }, + "south": { "uv": [ 7, 0, 9, 1 ], "texture": "#edge" }, + "west": { "uv": [ 0, 0, 8, 1 ], "texture": "#edge" }, + "east": { "uv": [ 8, 0, 16, 1 ], "texture": "#edge" } + } + }, + { + "__comment": "Box10", + "from": [ 7, 1, 0 ], + "to": [ 9, 15, 1 ], + "faces": { + "north": { "uv": [ 7, 1, 9, 15 ], "texture": "#edge", "cullface": "north" }, + "south": { "uv": [ 7, 1, 9, 15 ], "texture": "#edge" }, + "west": { "uv": [ 0, 1, 1, 15 ], "texture": "#edge" }, + "east": { "uv": [ 15, 1, 16, 15 ], "texture": "#edge" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_bars_side_alt.json b/src/main/resources/assets/betternether/models/block/cincinnasite_bars_side_alt.json new file mode 100644 index 0000000..b623632 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_bars_side_alt.json @@ -0,0 +1,47 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/cincinnasite_tiles_small", + "edge": "betternether:block/cincinnasite_tiles_small" + }, + "elements": [ + { + "__comment": "Box6", + "from": [ 7, 0, 8 ], + "to": [ 9, 1, 16 ], + "faces": { + "down": { "uv": [ 7, 0, 9, 8 ], "texture": "#edge", "cullface": "down" }, + "up": { "uv": [ 7, 8, 9, 16 ], "texture": "#edge" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#edge" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#edge", "cullface": "south" }, + "west": { "uv": [ 8, 15, 16, 16 ], "texture": "#edge" }, + "east": { "uv": [ 0, 15, 8, 16 ], "texture": "#edge" } + } + }, + { + "__comment": "Box6", + "from": [ 7, 15, 8 ], + "to": [ 9, 16, 16 ], + "faces": { + "down": { "uv": [ 7, 0, 9, 8 ], "texture": "#edge" }, + "up": { "uv": [ 7, 8, 9, 16 ], "texture": "#edge", "cullface": "up" }, + "north": { "uv": [ 7, 0, 9, 1 ], "texture": "#edge" }, + "south": { "uv": [ 7, 0, 9, 1 ], "texture": "#edge", "cullface": "south" }, + "west": { "uv": [ 8, 0, 16, 1 ], "texture": "#edge" }, + "east": { "uv": [ 0, 0, 8, 1 ], "texture": "#edge" } + } + }, + { + "__comment": "Box6", + "from": [ 7, 1, 15 ], + "to": [ 9, 15, 16 ], + "faces": { + "north": { "uv": [ 7, 1, 9, 15 ], "texture": "#edge" }, + "south": { "uv": [ 7, 1, 9, 15 ], "texture": "#edge", "cullface": "south" }, + "west": { "uv": [ 15, 1, 16, 15 ], "texture": "#edge" }, + "east": { "uv": [ 0, 1, 1, 15 ], "texture": "#edge" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_block.json b/src/main/resources/assets/betternether/models/block/cincinnasite_block.json new file mode 100644 index 0000000..c29abca --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_block.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/cincinnasite" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_brick_plate.json b/src/main/resources/assets/betternether/models/block/cincinnasite_brick_plate.json new file mode 100644 index 0000000..474081e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_brick_plate.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/cincinnasite_brick_plate" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_bricks.json b/src/main/resources/assets/betternether/models/block/cincinnasite_bricks.json new file mode 100644 index 0000000..86ae62f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_bricks.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/cincinnasite_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_bricks_pillar.json b/src/main/resources/assets/betternether/models/block/cincinnasite_bricks_pillar.json new file mode 100644 index 0000000..fef3820 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_bricks_pillar.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/cincinnasite_bricks_side", + "down": "betternether:block/cincinnasite_bricks_top", + "up": "betternether:block/cincinnasite_bricks_top", + "north": "betternether:block/cincinnasite_bricks_side", + "east": "betternether:block/cincinnasite_bricks_side", + "south": "betternether:block/cincinnasite_bricks_side", + "west": "betternether:block/cincinnasite_bricks_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_button.json b/src/main/resources/assets/betternether/models/block/cincinnasite_button.json new file mode 100644 index 0000000..0dfd018 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_button.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button", + "textures": { + "texture": "betternether:block/cincinnasite_button" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_button_inventory.json b/src/main/resources/assets/betternether/models/block/cincinnasite_button_inventory.json new file mode 100644 index 0000000..757a823 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_button_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_inventory", + "textures": { + "texture": "betternether:block/cincinnasite_plate_up" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_button_pressed.json b/src/main/resources/assets/betternether/models/block/cincinnasite_button_pressed.json new file mode 100644 index 0000000..16a5c2a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_button_pressed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_pressed", + "textures": { + "texture": "betternether:block/cincinnasite_button" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_carved.json b/src/main/resources/assets/betternether/models/block/cincinnasite_carved.json new file mode 100644 index 0000000..6ef0a29 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_carved.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/cincinnasite_spiral" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_chain.json b/src/main/resources/assets/betternether/models/block/cincinnasite_chain.json new file mode 100644 index 0000000..a3dc746 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_chain.json @@ -0,0 +1,7 @@ +{ + "parent": "block/chain", + "textures": { + "particle": "betternether:block/cincinnasite_chain", + "all": "betternether:block/cincinnasite_chain" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_double_slab.json b/src/main/resources/assets/betternether/models/block/cincinnasite_double_slab.json new file mode 100644 index 0000000..8740851 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_double_slab.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/cincinnasite_slab", + "down": "betternether:block/cincinnasite_plate_up", + "up": "betternether:block/cincinnasite_plate_up", + "north": "betternether:block/cincinnasite_slab", + "east": "betternether:block/cincinnasite_slab", + "south": "betternether:block/cincinnasite_slab", + "west": "betternether:block/cincinnasite_slab" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_fire_bowl_off.json b/src/main/resources/assets/betternether/models/block/cincinnasite_fire_bowl_off.json new file mode 100644 index 0000000..374de8c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_fire_bowl_off.json @@ -0,0 +1,149 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cincinnasite_forged", + "top": "betternether:block/cincinnasite_fire_bowl_top", + "side": "betternether:block/cincinnasite_fire_bowl_side", + "bottom": "betternether:block/cincinnasite_plate_up" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 9, 0 ], + "to": [ 16, 12, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "north": { "uv": [ 0, 4, 16, 7 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 4, 16, 7 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 4, 16, 7 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 0, 4, 16, 7 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 5, 1 ], + "to": [ 15, 9, 15 ], + "faces": { + "down": { "uv": [ 1, 1, 15, 15 ], "texture": "#bottom" }, + "north": { "uv": [ 1, 7, 15, 11 ], "texture": "#side" }, + "south": { "uv": [ 1, 7, 15, 11 ], "texture": "#side" }, + "west": { "uv": [ 1, 7, 15, 11 ], "texture": "#side" }, + "east": { "uv": [ 1, 7, 15, 11 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 3, 3 ], + "to": [ 13, 5, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#bottom" }, + "north": { "uv": [ 3, 11, 13, 13 ], "texture": "#side" }, + "south": { "uv": [ 3, 11, 13, 13 ], "texture": "#side" }, + "west": { "uv": [ 3, 11, 13, 13 ], "texture": "#side" }, + "east": { "uv": [ 3, 11, 13, 13 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 1, 2 ], + "to": [ 5, 5, 5 ], + "faces": { + "down": { "uv": [ 2, 11, 5, 14 ], "texture": "#bottom" }, + "north": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" }, + "south": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" }, + "west": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" }, + "east": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 0, 1 ], + "to": [ 4, 2, 4 ], + "faces": { + "down": { "uv": [ 1, 12, 4, 15 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 1, 1, 4, 4 ], "texture": "#bottom" }, + "north": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" }, + "south": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" }, + "west": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" }, + "east": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 1, 11 ], + "to": [ 5, 5, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 5, 5 ], "texture": "#bottom" }, + "north": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" }, + "south": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" }, + "west": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" }, + "east": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 0, 12 ], + "to": [ 4, 2, 15 ], + "faces": { + "down": { "uv": [ 1, 1, 4, 4 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 1, 12, 4, 15 ], "texture": "#bottom" }, + "north": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" }, + "south": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" }, + "west": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" }, + "east": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 1, 2 ], + "to": [ 14, 5, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 14, 14 ], "texture": "#bottom" }, + "north": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" }, + "south": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" }, + "west": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" }, + "east": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 0, 1 ], + "to": [ 15, 2, 4 ], + "faces": { + "down": { "uv": [ 12, 12, 15, 15 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 12, 1, 15, 4 ], "texture": "#bottom" }, + "north": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" }, + "south": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" }, + "west": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" }, + "east": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 1, 11 ], + "to": [ 14, 5, 14 ], + "faces": { + "down": { "uv": [ 11, 2, 14, 5 ], "texture": "#bottom" }, + "north": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" }, + "south": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" }, + "west": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" }, + "east": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 0, 12 ], + "to": [ 15, 2, 15 ], + "faces": { + "down": { "uv": [ 12, 1, 15, 4 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 12, 12, 15, 15 ], "texture": "#bottom" }, + "north": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" }, + "south": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" }, + "west": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" }, + "east": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_fire_bowl_on.json b/src/main/resources/assets/betternether/models/block/cincinnasite_fire_bowl_on.json new file mode 100644 index 0000000..df6aca6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_fire_bowl_on.json @@ -0,0 +1,233 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cincinnasite_forged", + "top": "betternether:block/cincinnasite_fire_bowl_top", + "side": "betternether:block/cincinnasite_fire_bowl_side", + "bottom": "betternether:block/cincinnasite_plate_up", + "fire_0": "block/fire_0", + "fire_1": "block/fire_1" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 9, 0 ], + "to": [ 16, 12, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "north": { "uv": [ 0, 4, 16, 7 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 4, 16, 7 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 4, 16, 7 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 0, 4, 16, 7 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 5, 1 ], + "to": [ 15, 9, 15 ], + "faces": { + "down": { "uv": [ 1, 1, 15, 15 ], "texture": "#bottom" }, + "north": { "uv": [ 1, 7, 15, 11 ], "texture": "#side" }, + "south": { "uv": [ 1, 7, 15, 11 ], "texture": "#side" }, + "west": { "uv": [ 1, 7, 15, 11 ], "texture": "#side" }, + "east": { "uv": [ 1, 7, 15, 11 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 3, 3 ], + "to": [ 13, 5, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#bottom" }, + "north": { "uv": [ 3, 11, 13, 13 ], "texture": "#side" }, + "south": { "uv": [ 3, 11, 13, 13 ], "texture": "#side" }, + "west": { "uv": [ 3, 11, 13, 13 ], "texture": "#side" }, + "east": { "uv": [ 3, 11, 13, 13 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 1, 2 ], + "to": [ 5, 5, 5 ], + "faces": { + "down": { "uv": [ 2, 11, 5, 14 ], "texture": "#bottom" }, + "north": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" }, + "south": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" }, + "west": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" }, + "east": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 0, 1 ], + "to": [ 4, 2, 4 ], + "faces": { + "down": { "uv": [ 1, 12, 4, 15 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 1, 1, 4, 4 ], "texture": "#bottom" }, + "north": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" }, + "south": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" }, + "west": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" }, + "east": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 1, 11 ], + "to": [ 5, 5, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 5, 5 ], "texture": "#bottom" }, + "north": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" }, + "south": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" }, + "west": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" }, + "east": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 0, 12 ], + "to": [ 4, 2, 15 ], + "faces": { + "down": { "uv": [ 1, 1, 4, 4 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 1, 12, 4, 15 ], "texture": "#bottom" }, + "north": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" }, + "south": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" }, + "west": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" }, + "east": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 1, 2 ], + "to": [ 14, 5, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 14, 14 ], "texture": "#bottom" }, + "north": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" }, + "south": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" }, + "west": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" }, + "east": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 0, 1 ], + "to": [ 15, 2, 4 ], + "faces": { + "down": { "uv": [ 12, 12, 15, 15 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 12, 1, 15, 4 ], "texture": "#bottom" }, + "north": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" }, + "south": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" }, + "west": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" }, + "east": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 1, 11 ], + "to": [ 14, 5, 14 ], + "faces": { + "down": { "uv": [ 11, 2, 14, 5 ], "texture": "#bottom" }, + "north": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" }, + "south": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" }, + "west": { "uv": [ 11, 11, 14, 15 ], "texture": "#side" }, + "east": { "uv": [ 2, 11, 5, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 0, 12 ], + "to": [ 15, 2, 15 ], + "faces": { + "down": { "uv": [ 12, 1, 15, 4 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 12, 12, 15, 15 ], "texture": "#bottom" }, + "north": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" }, + "south": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" }, + "west": { "uv": [ 12, 14, 15, 16 ], "texture": "#side" }, + "east": { "uv": [ 1, 14, 4, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX13", + "from": [ 11, 9, 2 ], + "to": [ 11.001, 21, 14 ], + "shade": false, + "faces": { + "west": { "uv": [ 2, 0, 14, 12 ], "texture": "#fire_0" }, + "east": { "uv": [ 2, 0, 14, 12 ], "texture": "#fire_0" } + } + }, + { + "__comment": "PlaneX13", + "from": [ 5, 9, 2 ], + "to": [ 5.001, 21, 14 ], + "shade": false, + "faces": { + "west": { "uv": [ 14, 0, 2, 12 ], "texture": "#fire_1" }, + "east": { "uv": [ 14, 0, 2, 12 ], "texture": "#fire_1" } + } + }, + { + "__comment": "PlaneZ15", + "from": [ 2, 9, 5 ], + "to": [ 14, 21, 5.001 ], + "shade": false, + "faces": { + "north": { "uv": [ 2, 0, 14, 12 ], "texture": "#fire_0" }, + "south": { "uv": [ 2, 0, 14, 12 ], "texture": "#fire_0" } + } + }, + { + "__comment": "PlaneZ15", + "from": [ 2, 9, 11 ], + "to": [ 14, 21, 11.001 ], + "shade": false, + "faces": { + "north": { "uv": [ 14, 0, 2, 12 ], "texture": "#fire_1" }, + "south": { "uv": [ 14, 0, 2, 12 ], "texture": "#fire_1" } + } + }, + { + "__comment": "PlaneX13", + "from": [ 2, 9, 2 ], + "to": [ 2.001, 21, 19 ], + "rotation": { "origin": [ 2, 9, 2 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 2, 0, 14, 12 ], "texture": "#fire_0" }, + "east": { "uv": [ 2, 0, 14, 12 ], "texture": "#fire_0" } + } + }, + { + "__comment": "PlaneX13", + "from": [ 14, 9, 2 ], + "to": [ 14.001, 21, 19 ], + "rotation": { "origin": [ 14, 9, 2 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 14, 0, 2, 12 ], "texture": "#fire_1" }, + "east": { "uv": [ 14, 0, 2, 12 ], "texture": "#fire_1" } + } + }, + { + "__comment": "PlaneY18", + "from": [ 0, 12.5, -1 ], + "to": [ 16, 12.501, 8 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 9 ], "texture": "#fire_1" }, + "up": { "uv": [ 0, 0, 16, 9 ], "texture": "#fire_1" } + } + }, + { + "__comment": "PlaneY18", + "from": [ 0, 12.5, 8 ], + "to": [ 16, 12.501, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 9 ], "texture": "#fire_1", "rotation": 180 }, + "up": { "uv": [ 0, 0, 16, 9 ], "texture": "#fire_1", "rotation": 180 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_fire_bowl_soul_off.json b/src/main/resources/assets/betternether/models/block/cincinnasite_fire_bowl_soul_off.json new file mode 100644 index 0000000..684521b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_fire_bowl_soul_off.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/cincinnasite_fire_bowl_off", + "textures": { + "top": "betternether:block/cincinnasite_fire_bowl_top_soul" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_fire_bowl_soul_on.json b/src/main/resources/assets/betternether/models/block/cincinnasite_fire_bowl_soul_on.json new file mode 100644 index 0000000..1d461de --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_fire_bowl_soul_on.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/cincinnasite_fire_bowl_on", + "textures": { + "top": "betternether:block/cincinnasite_fire_bowl_top_soul", + "fire_0": "block/soul_fire_0", + "fire_1": "block/soul_fire_1" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_forge.json b/src/main/resources/assets/betternether/models/block/cincinnasite_forge.json new file mode 100644 index 0000000..8799935 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_forge.json @@ -0,0 +1,8 @@ +{ + "parent": "block/orientable", + "textures": { + "top": "betternether:block/cincinnasite_forge_top", + "front": "betternether:block/cincinnasite_forge_front_off", + "side": "betternether:block/cincinnasite_forge_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_forge_on.json b/src/main/resources/assets/betternether/models/block/cincinnasite_forge_on.json new file mode 100644 index 0000000..2f8e01b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_forge_on.json @@ -0,0 +1,8 @@ +{ + "parent": "block/orientable", + "textures": { + "top": "betternether:block/cincinnasite_forge_top", + "front": "betternether:block/cincinnasite_forge_front_on", + "side": "betternether:block/cincinnasite_forge_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_forged.json b/src/main/resources/assets/betternether/models/block/cincinnasite_forged.json new file mode 100644 index 0000000..aa55186 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_forged.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/cincinnasite_forged" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_frame.json b/src/main/resources/assets/betternether/models/block/cincinnasite_frame.json new file mode 100644 index 0000000..43d982c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_frame.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/cincinnasite_panel" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_half_slab.json b/src/main/resources/assets/betternether/models/block/cincinnasite_half_slab.json new file mode 100644 index 0000000..741b934 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/cincinnasite_plate_up", + "top": "betternether:block/cincinnasite_plate_up", + "side": "betternether:block/cincinnasite_slab" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_inner_stairs.json b/src/main/resources/assets/betternether/models/block/cincinnasite_inner_stairs.json new file mode 100644 index 0000000..9352735 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/cincinnasite_forged", + "top": "betternether:block/cincinnasite_forged", + "side": "betternether:block/cincinnasite_forged" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_lantern.json b/src/main/resources/assets/betternether/models/block/cincinnasite_lantern.json new file mode 100644 index 0000000..b60528a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_lantern.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/cincinnasite_lantern" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_lantern_ceil.json b/src/main/resources/assets/betternether/models/block/cincinnasite_lantern_ceil.json new file mode 100644 index 0000000..825e305 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_lantern_ceil.json @@ -0,0 +1,71 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/cincinnasite_lantern_small", + "texture": "betternether:block/cincinnasite_lantern_small" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 3, 6 ], + "to": [ 10, 13, 10 ], + "shade": false, + "faces": { + "down": { "uv": [ 11, 1, 15, 5 ], "texture": "#texture" }, + "up": { "uv": [ 11, 1, 15, 5 ], "texture": "#texture" }, + "north": { "uv": [ 11, 6, 15, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 6, 15, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 6, 15, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 6, 15, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 4, 5 ], + "to": [ 11, 5, 11 ], + "faces": { + "down": { "uv": [ 10, 0, 16, 6 ], "texture": "#texture" }, + "up": { "uv": [ 10, 0, 16, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 14, 16, 15 ], "texture": "#texture" }, + "south": { "uv": [ 10, 14, 16, 15 ], "texture": "#texture" }, + "west": { "uv": [ 10, 14, 16, 15 ], "texture": "#texture" }, + "east": { "uv": [ 10, 14, 16, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 11, 5 ], + "to": [ 11, 12, 11 ], + "faces": { + "down": { "uv": [ 10, 0, 16, 6 ], "texture": "#texture" }, + "up": { "uv": [ 10, 0, 16, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 7, 16, 8 ], "texture": "#texture" }, + "south": { "uv": [ 10, 7, 16, 8 ], "texture": "#texture" }, + "west": { "uv": [ 10, 7, 16, 8 ], "texture": "#texture" }, + "east": { "uv": [ 10, 7, 16, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 7, 13, 7 ], + "to": [ 7.001, 16, 10 ], + "shade": false, + "rotation": { "origin": [ 7, 13, 7 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 13, 3, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 13, 3, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 9, 13, 7 ], + "to": [ 9.001, 16, 10 ], + "shade": false, + "rotation": { "origin": [ 9, 13, 7 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 13, 3, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 13, 3, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_lantern_floor.json b/src/main/resources/assets/betternether/models/block/cincinnasite_lantern_floor.json new file mode 100644 index 0000000..eb3df1e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_lantern_floor.json @@ -0,0 +1,48 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cincinnasite_lantern_small", + "texture": "betternether:block/cincinnasite_lantern_small" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 1, 6 ], + "to": [ 10, 9, 10 ], + "faces": { + "up": { "uv": [ 11, 1, 15, 5 ], "texture": "#texture" }, + "north": { "uv": [ 11, 6, 15, 14 ], "texture": "#texture" }, + "south": { "uv": [ 11, 6, 15, 14 ], "texture": "#texture" }, + "west": { "uv": [ 11, 6, 15, 14 ], "texture": "#texture" }, + "east": { "uv": [ 11, 6, 15, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 1, 11 ], + "faces": { + "down": { "uv": [ 10, 0, 16, 6 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 10, 0, 16, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 14, 16, 15 ], "texture": "#texture" }, + "south": { "uv": [ 10, 14, 16, 15 ], "texture": "#texture" }, + "west": { "uv": [ 10, 14, 16, 15 ], "texture": "#texture" }, + "east": { "uv": [ 10, 14, 16, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 7, 5 ], + "to": [ 11, 8, 11 ], + "faces": { + "down": { "uv": [ 10, 0, 16, 6 ], "texture": "#texture" }, + "up": { "uv": [ 10, 0, 16, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 7, 16, 8 ], "texture": "#texture" }, + "south": { "uv": [ 10, 7, 16, 8 ], "texture": "#texture" }, + "west": { "uv": [ 10, 7, 16, 8 ], "texture": "#texture" }, + "east": { "uv": [ 10, 7, 16, 8 ], "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_lantern_wall.json b/src/main/resources/assets/betternether/models/block/cincinnasite_lantern_wall.json new file mode 100644 index 0000000..6e21802 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_lantern_wall.json @@ -0,0 +1,117 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/cincinnasite_lantern_small", + "texture": "betternether:block/cincinnasite_lantern_small" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 3 ], + "to": [ 10, 10, 7 ], + "faces": { + "down": { "uv": [ 11, 1, 15, 5 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 11, 1, 15, 5 ], "texture": "#texture" }, + "north": { "uv": [ 11, 6, 15, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 6, 15, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 6, 15, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 6, 15, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 1, 2 ], + "to": [ 11, 2, 8 ], + "faces": { + "down": { "uv": [ 10, 0, 16, 6 ], "texture": "#texture" }, + "up": { "uv": [ 10, 0, 16, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 14, 16, 15 ], "texture": "#texture" }, + "south": { "uv": [ 10, 14, 16, 15 ], "texture": "#texture" }, + "west": { "uv": [ 10, 14, 16, 15 ], "texture": "#texture" }, + "east": { "uv": [ 10, 14, 16, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 8, 2 ], + "to": [ 11, 9, 8 ], + "faces": { + "down": { "uv": [ 10, 0, 16, 6 ], "texture": "#texture" }, + "up": { "uv": [ 10, 0, 16, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 7, 16, 8 ], "texture": "#texture" }, + "south": { "uv": [ 10, 7, 16, 8 ], "texture": "#texture" }, + "west": { "uv": [ 10, 7, 16, 8 ], "texture": "#texture" }, + "east": { "uv": [ 10, 7, 16, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX8", + "from": [ 8, 9, 0 ], + "to": [ 8.001, 15, 8 ], + "faces": { + "west": { "uv": [ 0, 3, 8, 9 ], "texture": "#texture" }, + "east": { "uv": [ 8, 3, 0, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ10", + "from": [ 6.5, 10, 5 ], + "to": [ 9.5, 12, 5.001 ], + "faces": { + "north": { "uv": [ 0, 11, 3, 13 ], "texture": "#texture" }, + "south": { "uv": [ 0, 11, 3, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box11", + "from": [ 6, 9, 0 ], + "to": [ 10, 15, 1 ], + "faces": { + "down": { "uv": [ 11, 0, 15, 1 ], "texture": "#texture" }, + "up": { "uv": [ 11, 0, 15, 1 ], "texture": "#texture" }, + "north": { "uv": [ 11, 0, 15, 6 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 11, 0, 15, 6 ], "texture": "#texture" }, + "west": { "uv": [ 0, 3, 1, 9 ], "texture": "#texture" }, + "east": { "uv": [ 0, 3, 1, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box12", + "from": [ 7.75, 13, 1 ], + "to": [ 8.25, 14, 5 ], + "faces": { + "down": { "uv": [ 1, 4, 5, 5 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 1, 4, 5, 5 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 4, 4, 5, 5 ], "texture": "#texture" }, + "west": { "uv": [ 1, 4, 5, 5 ], "texture": "#texture" }, + "east": { "uv": [ 1, 4, 5, 5 ], "texture": "#texture" } + } + }, + { + "__comment": "Box14", + "from": [ 7.75, 14, 5 ], + "to": [ 8.25, 15, 7 ], + "faces": { + "down": { "uv": [ 5, 3, 7, 4 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 5, 3, 7, 4 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 5, 3, 6, 4 ], "texture": "#texture" }, + "south": { "uv": [ 6, 3, 7, 4 ], "texture": "#texture" }, + "west": { "uv": [ 5, 3, 7, 4 ], "texture": "#texture" }, + "east": { "uv": [ 5, 3, 7, 4 ], "texture": "#texture" } + } + }, + { + "__comment": "Box15", + "from": [ 7.75, 12, 7 ], + "to": [ 8.25, 14, 8 ], + "faces": { + "down": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 7, 4, 8, 5 ], "texture": "#texture" }, + "north": { "uv": [ 7, 4, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 7, 4, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 7, 4, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 7, 4, 8, 6 ], "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_ore.json b/src/main/resources/assets/betternether/models/block/cincinnasite_ore.json new file mode 100644 index 0000000..bab4605 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_ore.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/cincinnasite_ore" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_outer_stairs.json b/src/main/resources/assets/betternether/models/block/cincinnasite_outer_stairs.json new file mode 100644 index 0000000..62c5ef3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/cincinnasite_forged", + "top": "betternether:block/cincinnasite_forged", + "side": "betternether:block/cincinnasite_forged" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_pedestal.json b/src/main/resources/assets/betternether/models/block/cincinnasite_pedestal.json new file mode 100644 index 0000000..9241c04 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_pedestal.json @@ -0,0 +1,164 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cincinnasite_pedestal_side", + "side": "betternether:block/cincinnasite_pedestal_side", + "top": "betternether:block/cincinnasite_pedestal_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 0, 2 ], + "to": [ 14, 1, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top", "cullface": "down" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 15, 14, 16 ], "texture": "#side" }, + "south": { "uv": [ 2, 15, 14, 16 ], "texture": "#side" }, + "west": { "uv": [ 2, 15, 14, 16 ], "texture": "#side" }, + "east": { "uv": [ 2, 15, 14, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 15, 2 ], + "to": [ 14, 16, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 2, 0, 14, 1 ], "texture": "#side" }, + "south": { "uv": [ 2, 0, 14, 1 ], "texture": "#side" }, + "west": { "uv": [ 2, 0, 14, 1 ], "texture": "#side" }, + "east": { "uv": [ 2, 0, 14, 1 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 2, 4 ], + "to": [ 12, 14, 12 ], + "faces": { + "north": { "uv": [ 4, 2, 12, 14 ], "texture": "#side" }, + "south": { "uv": [ 4, 2, 12, 14 ], "texture": "#side" }, + "west": { "uv": [ 4, 2, 12, 14 ], "texture": "#side" }, + "east": { "uv": [ 4, 2, 12, 14 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 2, 3 ], + "to": [ 13, 14, 4 ], + "faces": { + "north": { "uv": [ 3, 2, 4, 14 ], "texture": "#side" }, + "south": { "uv": [ 12, 2, 13, 14 ], "texture": "#side" }, + "west": { "uv": [ 3, 2, 4, 14 ], "texture": "#side" }, + "east": { "uv": [ 12, 2, 13, 14 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 1, 3 ], + "to": [ 13, 2, 13 ], + "faces": { + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#top" }, + "north": { "uv": [ 3, 14, 13, 15 ], "texture": "#side" }, + "south": { "uv": [ 3, 14, 13, 15 ], "texture": "#side" }, + "west": { "uv": [ 3, 14, 13, 15 ], "texture": "#side" }, + "east": { "uv": [ 3, 14, 13, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 14, 3 ], + "to": [ 13, 15, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#top" }, + "north": { "uv": [ 3, 1, 13, 2 ], "texture": "#side" }, + "south": { "uv": [ 3, 1, 13, 2 ], "texture": "#side" }, + "west": { "uv": [ 3, 1, 13, 2 ], "texture": "#side" }, + "east": { "uv": [ 3, 1, 13, 2 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 2, 12 ], + "to": [ 13, 14, 13 ], + "faces": { + "north": { "uv": [ 3, 2, 4, 14 ], "texture": "#side" }, + "south": { "uv": [ 12, 2, 13, 14 ], "texture": "#side" }, + "west": { "uv": [ 12, 2, 13, 14 ], "texture": "#side" }, + "east": { "uv": [ 3, 2, 4, 14 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 2, 3 ], + "to": [ 4, 14, 4 ], + "faces": { + "north": { "uv": [ 12, 2, 13, 14 ], "texture": "#side" }, + "south": { "uv": [ 3, 2, 4, 14 ], "texture": "#side" }, + "west": { "uv": [ 3, 2, 4, 14 ], "texture": "#side" }, + "east": { "uv": [ 12, 2, 13, 14 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 2, 12 ], + "to": [ 4, 14, 13 ], + "faces": { + "north": { "uv": [ 3, 2, 4, 14 ], "texture": "#side" }, + "south": { "uv": [ 12, 2, 13, 14 ], "texture": "#side" }, + "west": { "uv": [ 12, 2, 13, 14 ], "texture": "#side" }, + "east": { "uv": [ 3, 2, 4, 14 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 3, 12 ], + "to": [ 11, 13, 13 ], + "faces": { + "down": { "uv": [ 5, 3, 11, 4 ], "texture": "#top" }, + "up": { "uv": [ 5, 12, 11, 13 ], "texture": "#top" }, + "south": { "uv": [ 5, 3, 11, 13 ], "texture": "#side" }, + "west": { "uv": [ 12, 3, 13, 13 ], "texture": "#side" }, + "east": { "uv": [ 3, 3, 4, 13 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 3, 3 ], + "to": [ 11, 13, 4 ], + "faces": { + "down": { "uv": [ 5, 12, 11, 13 ], "texture": "#top" }, + "up": { "uv": [ 5, 3, 11, 4 ], "texture": "#top" }, + "north": { "uv": [ 5, 3, 11, 13 ], "texture": "#side" }, + "west": { "uv": [ 3, 3, 4, 13 ], "texture": "#side" }, + "east": { "uv": [ 12, 3, 13, 13 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 3, 5 ], + "to": [ 13, 13, 11 ], + "faces": { + "down": { "uv": [ 12, 5, 13, 11 ], "texture": "#top" }, + "up": { "uv": [ 12, 5, 13, 11 ], "texture": "#top" }, + "north": { "uv": [ 3, 3, 4, 13 ], "texture": "#side" }, + "south": { "uv": [ 12, 3, 13, 13 ], "texture": "#side" }, + "east": { "uv": [ 5, 3, 11, 13 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 3, 5 ], + "to": [ 4, 13, 11 ], + "faces": { + "down": { "uv": [ 3, 5, 4, 11 ], "texture": "#top" }, + "up": { "uv": [ 3, 5, 4, 11 ], "texture": "#top" }, + "north": { "uv": [ 12, 3, 13, 13 ], "texture": "#side" }, + "south": { "uv": [ 3, 3, 4, 13 ], "texture": "#side" }, + "west": { "uv": [ 5, 3, 11, 13 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_pillar_bottom.json b/src/main/resources/assets/betternether/models/block/cincinnasite_pillar_bottom.json new file mode 100644 index 0000000..bd6595d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_pillar_bottom.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/cincinnasite_forged", + "down": "betternether:block/cincinnasite_plate_up", + "up": "betternether:block/cincinnasite_plate_up", + "north": "betternether:block/cincinnasite_pillar_bottom", + "east": "betternether:block/cincinnasite_pillar_bottom", + "south": "betternether:block/cincinnasite_pillar_bottom", + "west": "betternether:block/cincinnasite_pillar_bottom" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_pillar_middle.json b/src/main/resources/assets/betternether/models/block/cincinnasite_pillar_middle.json new file mode 100644 index 0000000..4b9041f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_pillar_middle.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/cincinnasite_forged", + "down": "betternether:block/cincinnasite_plate_up", + "up": "betternether:block/cincinnasite_plate_up", + "north": "betternether:block/cincinnasite_pillar_middle", + "east": "betternether:block/cincinnasite_pillar_middle", + "south": "betternether:block/cincinnasite_pillar_middle", + "west": "betternether:block/cincinnasite_pillar_middle" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_pillar_small.json b/src/main/resources/assets/betternether/models/block/cincinnasite_pillar_small.json new file mode 100644 index 0000000..ca20dd9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_pillar_small.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/cincinnasite_forged", + "down": "betternether:block/cincinnasite_plate_up", + "up": "betternether:block/cincinnasite_plate_up", + "north": "betternether:block/cincinnasite_pillar_small", + "east": "betternether:block/cincinnasite_pillar_small", + "south": "betternether:block/cincinnasite_pillar_small", + "west": "betternether:block/cincinnasite_pillar_small" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_pillar_top.json b/src/main/resources/assets/betternether/models/block/cincinnasite_pillar_top.json new file mode 100644 index 0000000..698c4bb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_pillar_top.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/cincinnasite_forged", + "down": "betternether:block/cincinnasite_plate_up", + "up": "betternether:block/cincinnasite_plate_up", + "north": "betternether:block/cincinnasite_pillar_top", + "east": "betternether:block/cincinnasite_pillar_top", + "south": "betternether:block/cincinnasite_pillar_top", + "west": "betternether:block/cincinnasite_pillar_top" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_post.json b/src/main/resources/assets/betternether/models/block/cincinnasite_post.json new file mode 100644 index 0000000..320921f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_post.json @@ -0,0 +1,48 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cincinnasite_forged", + "texture": "betternether:block/cincinnasite_plate_up", + "side": "betternether:block/cincinnasite_post_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 2, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture" }, + "north": { "uv": [ 4, 14, 12, 16 ], "texture": "#side" }, + "south": { "uv": [ 4, 14, 12, 16 ], "texture": "#side" }, + "west": { "uv": [ 4, 14, 12, 16 ], "texture": "#side" }, + "east": { "uv": [ 4, 14, 12, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 14, 4 ], + "to": [ 12, 16, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 4, 0, 12, 2 ], "texture": "#side" }, + "south": { "uv": [ 4, 0, 12, 2 ], "texture": "#side" }, + "west": { "uv": [ 4, 0, 12, 2 ], "texture": "#side" }, + "east": { "uv": [ 4, 0, 12, 2 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 2, 5 ], + "to": [ 11, 14, 11 ], + "faces": { + "north": { "uv": [ 5, 2, 11, 14 ], "texture": "#side" }, + "south": { "uv": [ 5, 2, 11, 14 ], "texture": "#side" }, + "west": { "uv": [ 5, 2, 11, 14 ], "texture": "#side" }, + "east": { "uv": [ 5, 2, 11, 14 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_pot.json b/src/main/resources/assets/betternether/models/block/cincinnasite_pot.json new file mode 100644 index 0000000..7facb87 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_pot.json @@ -0,0 +1,95 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/pot_side", + "side": "betternether:block/pot_side", + "top": "betternether:block/pot_top", + "bottom": "betternether:block/cincinnasite_plate_up" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 1, 4 ], + "to": [ 12, 6, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "north": { "uv": [ 4, 10, 12, 15 ], "texture": "#side" }, + "south": { "uv": [ 4, 10, 12, 15 ], "texture": "#side" }, + "west": { "uv": [ 4, 10, 12, 15 ], "texture": "#side" }, + "east": { "uv": [ 4, 10, 12, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 6, 4 ], + "to": [ 13, 8, 12 ], + "faces": { + "down": { "uv": [ 3, 4, 13, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 3, 4, 13, 12 ], "texture": "#top" }, + "north": { "uv": [ 3, 8, 13, 10 ], "texture": "#side" }, + "south": { "uv": [ 3, 8, 13, 10 ], "texture": "#side" }, + "west": { "uv": [ 4, 8, 12, 10 ], "texture": "#side" }, + "east": { "uv": [ 4, 8, 12, 10 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 6, 12 ], + "to": [ 12, 8, 13 ], + "faces": { + "down": { "uv": [ 4, 3, 12, 4 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 12, 12, 13 ], "texture": "#top" }, + "south": { "uv": [ 4, 8, 12, 10 ], "texture": "#side" }, + "west": { "uv": [ 12, 8, 13, 10 ], "texture": "#side" }, + "east": { "uv": [ 3, 8, 4, 10 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 6, 3 ], + "to": [ 12, 8, 4 ], + "faces": { + "down": { "uv": [ 4, 12, 12, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 3, 12, 4 ], "texture": "#top" }, + "north": { "uv": [ 4, 8, 12, 10 ], "texture": "#side" }, + "west": { "uv": [ 3, 8, 4, 10 ], "texture": "#side" }, + "east": { "uv": [ 12, 8, 13, 10 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 0, 5 ], + "to": [ 12, 1, 11 ], + "faces": { + "down": { "uv": [ 4, 5, 12, 11 ], "texture": "#bottom", "cullface": "down" }, + "north": { "uv": [ 4, 15, 12, 16 ], "texture": "#side" }, + "south": { "uv": [ 4, 15, 12, 16 ], "texture": "#side" }, + "west": { "uv": [ 5, 15, 11, 16 ], "texture": "#side" }, + "east": { "uv": [ 5, 15, 11, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 0, 4 ], + "to": [ 11, 1, 5 ], + "faces": { + "down": { "uv": [ 5, 11, 11, 12 ], "texture": "#bottom", "cullface": "down" }, + "north": { "uv": [ 5, 15, 11, 16 ], "texture": "#side" }, + "west": { "uv": [ 4, 15, 5, 16 ], "texture": "#side" }, + "east": { "uv": [ 11, 15, 12, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 0, 11 ], + "to": [ 11, 1, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 11, 5 ], "texture": "#bottom", "cullface": "down" }, + "south": { "uv": [ 5, 15, 11, 16 ], "texture": "#side" }, + "west": { "uv": [ 11, 15, 12, 16 ], "texture": "#side" }, + "east": { "uv": [ 4, 15, 5, 16 ], "texture": "#side" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_pressure_plate_down.json b/src/main/resources/assets/betternether/models/block/cincinnasite_pressure_plate_down.json new file mode 100644 index 0000000..2dd2541 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_down", + "textures": { + "texture": "betternether:block/cincinnasite_plate_up" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_pressure_plate_up.json b/src/main/resources/assets/betternether/models/block/cincinnasite_pressure_plate_up.json new file mode 100644 index 0000000..54fd27d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_pressure_plate_up.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_up", + "textures": { + "texture": "betternether:block/cincinnasite_plate_up" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_stairs.json b/src/main/resources/assets/betternether/models/block/cincinnasite_stairs.json new file mode 100644 index 0000000..4c30ac4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/cincinnasite_forged", + "top": "betternether:block/cincinnasite_forged", + "side": "betternether:block/cincinnasite_forged" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_tile_large.json b/src/main/resources/assets/betternether/models/block/cincinnasite_tile_large.json new file mode 100644 index 0000000..aef7f23 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_tile_large.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/cincinnasite_plate_up" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_tile_small.json b/src/main/resources/assets/betternether/models/block/cincinnasite_tile_small.json new file mode 100644 index 0000000..1badfce --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_tile_small.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/cincinnasite_tiles_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/cincinnasite_wall_side.json b/src/main/resources/assets/betternether/models/block/cincinnasite_wall_side.json new file mode 100644 index 0000000..8dafef6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cincinnasite_wall_side.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cincinnasite_forged", + "wall": "betternether:block/cincinnasite_forged" + }, + "elements": [ + { + "__comment": "wall", + "from": [ 6, 1, 0 ], + "to": [ 10, 15, 8 ], + "faces": { + "down": { "uv": [ 5, 8, 11, 16 ], "texture": "#wall", "cullface": "down" }, + "up": { "uv": [ 5, 0, 11, 8 ], "texture": "#wall" }, + "north": { "uv": [ 5, 2, 11, 16 ], "texture": "#wall" }, + "west": { "uv": [ 0, 1, 8, 15 ], "texture": "#wall" }, + "east": { "uv": [ 8, 1, 16, 15 ], "texture": "#wall" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/crafting_table_anchor_tree.json b/src/main/resources/assets/betternether/models/block/crafting_table_anchor_tree.json new file mode 100644 index 0000000..7346c00 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crafting_table_anchor_tree.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "particle": "betternether:block/crafting_table_anchor_tree_front", + "north": "betternether:block/crafting_table_anchor_tree_front", + "south": "betternether:block/crafting_table_anchor_tree_side", + "east": "betternether:block/crafting_table_anchor_tree_side", + "west": "betternether:block/crafting_table_anchor_tree_front", + "up": "betternether:block/crafting_table_anchor_tree_top", + "down": "betternether:block/crafting_table_anchor_tree_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/crafting_table_crimson.json b/src/main/resources/assets/betternether/models/block/crafting_table_crimson.json new file mode 100644 index 0000000..b2b9f59 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crafting_table_crimson.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "particle": "betternether:block/crafting_table_crimson_front", + "north": "betternether:block/crafting_table_crimson_front", + "south": "betternether:block/crafting_table_crimson_side", + "east": "betternether:block/crafting_table_crimson_side", + "west": "betternether:block/crafting_table_crimson_front", + "up": "betternether:block/crafting_table_crimson_top", + "down": "betternether:block/crafting_table_crimson_bottom" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/crafting_table_mushroom.json b/src/main/resources/assets/betternether/models/block/crafting_table_mushroom.json new file mode 100644 index 0000000..e53f834 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crafting_table_mushroom.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "particle": "betternether:block/crafting_table_mushroom_front", + "north": "betternether:block/crafting_table_mushroom_front", + "south": "betternether:block/crafting_table_mushroom_side", + "east": "betternether:block/crafting_table_mushroom_side", + "west": "betternether:block/crafting_table_mushroom_front", + "up": "betternether:block/crafting_table_mushroom_top", + "down": "betternether:block/crafting_table_mushroom_bottom" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/crafting_table_mushroom_fir.json b/src/main/resources/assets/betternether/models/block/crafting_table_mushroom_fir.json new file mode 100644 index 0000000..9185586 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crafting_table_mushroom_fir.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "particle": "betternether:block/crafting_table_mushroom_fir_front", + "north": "betternether:block/crafting_table_mushroom_fir_front", + "south": "betternether:block/crafting_table_mushroom_fir_side", + "east": "betternether:block/crafting_table_mushroom_fir_side", + "west": "betternether:block/crafting_table_mushroom_fir_front", + "up": "betternether:block/crafting_table_mushroom_fir_top", + "down": "betternether:block/crafting_table_mushroom_fir_bottom" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/crafting_table_nether_sakura.json b/src/main/resources/assets/betternether/models/block/crafting_table_nether_sakura.json new file mode 100644 index 0000000..7139f9e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crafting_table_nether_sakura.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "particle": "betternether:block/crafting_table_nether_sakura_front", + "north": "betternether:block/crafting_table_nether_sakura_front", + "south": "betternether:block/crafting_table_nether_sakura_side", + "east": "betternether:block/crafting_table_nether_sakura_side", + "west": "betternether:block/crafting_table_nether_sakura_front", + "up": "betternether:block/crafting_table_nether_sakura_top", + "down": "betternether:block/crafting_table_nether_sakura_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/crafting_table_reed.json b/src/main/resources/assets/betternether/models/block/crafting_table_reed.json new file mode 100644 index 0000000..942a1fa --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crafting_table_reed.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "particle": "betternether:block/crafting_table_reed_front", + "north": "betternether:block/crafting_table_reed_front", + "south": "betternether:block/crafting_table_reed_side", + "east": "betternether:block/crafting_table_reed_side", + "west": "betternether:block/crafting_table_reed_front", + "up": "betternether:block/crafting_table_reed_top", + "down": "betternether:block/crafting_table_reed_bottom" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/crafting_table_rubeus.json b/src/main/resources/assets/betternether/models/block/crafting_table_rubeus.json new file mode 100644 index 0000000..ed55cdf --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crafting_table_rubeus.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "particle": "betternether:block/crafting_table_rubeus_front", + "north": "betternether:block/crafting_table_rubeus_front", + "south": "betternether:block/crafting_table_rubeus_side", + "east": "betternether:block/crafting_table_rubeus_side", + "west": "betternether:block/crafting_table_rubeus_front", + "up": "betternether:block/crafting_table_rubeus_top", + "down": "betternether:block/crafting_table_rubeus_bottom" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/crafting_table_stalagnate.json b/src/main/resources/assets/betternether/models/block/crafting_table_stalagnate.json new file mode 100644 index 0000000..3ad58d1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crafting_table_stalagnate.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "particle": "betternether:block/crafting_table_stalagnate_front", + "north": "betternether:block/crafting_table_stalagnate_front", + "south": "betternether:block/crafting_table_stalagnate_side", + "east": "betternether:block/crafting_table_stalagnate_side", + "west": "betternether:block/crafting_table_stalagnate_front", + "up": "betternether:block/crafting_table_stalagnate_top", + "down": "betternether:block/crafting_table_stalagnate_bottom" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/crafting_table_warped.json b/src/main/resources/assets/betternether/models/block/crafting_table_warped.json new file mode 100644 index 0000000..cf6fb74 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crafting_table_warped.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "particle": "betternether:block/crafting_table_warped_front", + "north": "betternether:block/crafting_table_warped_front", + "south": "betternether:block/crafting_table_warped_side", + "east": "betternether:block/crafting_table_warped_side", + "west": "betternether:block/crafting_table_warped_front", + "up": "betternether:block/crafting_table_warped_top", + "down": "betternether:block/crafting_table_warped_bottom" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/crafting_table_wart.json b/src/main/resources/assets/betternether/models/block/crafting_table_wart.json new file mode 100644 index 0000000..7b79c8a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crafting_table_wart.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "particle": "betternether:block/crafting_table_wart_front", + "north": "betternether:block/crafting_table_wart_front", + "south": "betternether:block/crafting_table_wart_side", + "east": "betternether:block/crafting_table_wart_side", + "west": "betternether:block/crafting_table_wart_front", + "up": "betternether:block/crafting_table_wart_top", + "down": "betternether:block/crafting_table_wart_bottom" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/crafting_table_willow.json b/src/main/resources/assets/betternether/models/block/crafting_table_willow.json new file mode 100644 index 0000000..df62a06 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crafting_table_willow.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "particle": "betternether:block/crafting_table_willow_front", + "north": "betternether:block/crafting_table_willow_front", + "south": "betternether:block/crafting_table_willow_side", + "east": "betternether:block/crafting_table_willow_side", + "west": "betternether:block/crafting_table_willow_front", + "up": "betternether:block/crafting_table_willow_top", + "down": "betternether:block/crafting_table_willow_bottom" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/crimson_ladder.json b/src/main/resources/assets/betternether/models/block/crimson_ladder.json new file mode 100644 index 0000000..ffb278f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crimson_ladder.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/reeds_ladder", + "textures": { + "particle": "betternether:block/crimson_ladder", + "texture": "betternether:block/crimson_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/block/crop_block.json b/src/main/resources/assets/betternether/models/block/crop_block.json new file mode 100644 index 0000000..f71aa2a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crop_block.json @@ -0,0 +1,40 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#texture" + }, + "elements": [ + { "from": [ 4.1, 0, 0 ], + "to": [ 4.1, 16, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { "from": [ 11.9, 0, 0 ], + "to": [ 11.9, 16, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { "from": [ 0, 0, 4.1 ], + "to": [ 16, 16, 4.1 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { "from": [ 0, 0, 11.9 ], + "to": [ 16, 16, 11.9 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/crop_block_inverted.json b/src/main/resources/assets/betternether/models/block/crop_block_inverted.json new file mode 100644 index 0000000..8d5c9a1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/crop_block_inverted.json @@ -0,0 +1,40 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#texture" + }, + "elements": [ + { "from": [ 4, 0, 0 ], + "to": [ 4, 16, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { "from": [ 12, 0, 0 ], + "to": [ 12, 16, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { "from": [ 0, 0, 4 ], + "to": [ 16, 16, 4 ], + "shade": false, + "faces": { + "north": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "south": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { "from": [ 0, 0, 12 ], + "to": [ 16, 16, 12 ], + "shade": false, + "faces": { + "north": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "south": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/cross_inverted.json b/src/main/resources/assets/betternether/models/block/cross_inverted.json new file mode 100644 index 0000000..5f4f8f7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/cross_inverted.json @@ -0,0 +1,26 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#cross" + }, + "elements": [ + { "from": [ 0.8, 0, 8 ], + "to": [ 15.2, 16, 8 ], + "rotation": { "origin": [ 8, 8, 8 ], "axis": "y", "angle": 45, "rescale": true }, + "shade": false, + "faces": { + "north": { "uv": [ 16, 0, 0, 16 ], "texture": "#cross" }, + "south": { "uv": [ 16, 0, 0, 16 ], "texture": "#cross" } + } + }, + { "from": [ 8, 0, 0.8 ], + "to": [ 8, 16, 15.2 ], + "rotation": { "origin": [ 8, 8, 8 ], "axis": "y", "angle": 45, "rescale": true }, + "shade": false, + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#cross" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#cross" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/egg_plant_01.json b/src/main/resources/assets/betternether/models/block/egg_plant_01.json new file mode 100644 index 0000000..e4b611d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/egg_plant_01.json @@ -0,0 +1,67 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/egg_plant", + "texture": "betternether:block/egg_plant", + "vine": "betternether:block/egg_plant_vine" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 0, 1 ], + "to": [ 15, 8, 9 ], + "faces": { + "up": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture" }, + "north": { "uv": [ 0, 8, 8, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 8, 8, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 8, 8, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 8, 8, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 0, 2 ], + "to": [ 6, 5, 7 ], + "faces": { + "up": { "uv": [ 1, 1, 6, 6 ], "texture": "#texture" }, + "north": { "uv": [ 0, 9.5, 5, 14.5 ], "texture": "#texture" }, + "south": { "uv": [ 0, 9.5, 5, 14.5 ], "texture": "#texture" }, + "west": { "uv": [ 0, 9.5, 5, 14.5 ], "texture": "#texture" }, + "east": { "uv": [ 0, 9.5, 5, 14.5 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 0, 10 ], + "to": [ 8, 4, 14 ], + "faces": { + "up": { "uv": [ 2, 2, 6, 6 ], "texture": "#texture" }, + "north": { "uv": [ 4, 9.5, 8, 13.5 ], "texture": "#texture" }, + "south": { "uv": [ 4, 9.5, 8, 13.5 ], "texture": "#texture" }, + "west": { "uv": [ 4, 9.5, 8, 13.5 ], "texture": "#texture" }, + "east": { "uv": [ 4, 9.5, 8, 13.5 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 8, 8, 2 ], + "to": [ 14, 9, 8 ], + "faces": { + "up": { "uv": [ 1, 1, 7, 7 ], "texture": "#texture" }, + "north": { "uv": [ 1, 7, 7, 8 ], "texture": "#texture" }, + "south": { "uv": [ 1, 7, 7, 8 ], "texture": "#texture" }, + "west": { "uv": [ 1, 7, 7, 8 ], "texture": "#texture" }, + "east": { "uv": [ 1, 7, 7, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY5", + "from": [ 0, 1, 0 ], + "to": [ 16, 1.001, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#vine" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/egg_plant_02.json b/src/main/resources/assets/betternether/models/block/egg_plant_02.json new file mode 100644 index 0000000..7c220a6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/egg_plant_02.json @@ -0,0 +1,43 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/egg_plant", + "texture": "betternether:block/egg_plant", + "vine": "betternether:block/egg_plant_vine" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 2 ], + "to": [ 13, 7, 9 ], + "faces": { + "up": { "uv": [ 0, 1, 7, 8 ], "texture": "#texture" }, + "north": { "uv": [ 0, 8, 7, 15 ], "texture": "#texture" }, + "south": { "uv": [ 0, 8, 7, 15 ], "texture": "#texture" }, + "west": { "uv": [ 0, 8, 7, 15 ], "texture": "#texture" }, + "east": { "uv": [ 0, 8, 7, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 10 ], + "to": [ 7, 5, 15 ], + "faces": { + "up": { "uv": [ 1, 1, 6, 6 ], "texture": "#texture" }, + "north": { "uv": [ 0, 9.5, 5, 14.5 ], "texture": "#texture" }, + "south": { "uv": [ 0, 9.5, 5, 14.5 ], "texture": "#texture" }, + "west": { "uv": [ 0, 9.5, 5, 14.5 ], "texture": "#texture" }, + "east": { "uv": [ 0, 9.5, 5, 14.5 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY5", + "from": [ 0, 1, 0 ], + "to": [ 16, 1.001, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#vine" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/egg_plant_03.json b/src/main/resources/assets/betternether/models/block/egg_plant_03.json new file mode 100644 index 0000000..b9f5d43 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/egg_plant_03.json @@ -0,0 +1,43 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/egg_plant", + "texture": "betternether:block/egg_plant", + "vine": "betternether:block/egg_plant_vine" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 12, 7, 12 ], + "faces": { + "up": { "uv": [ 0, 1, 7, 8 ], "texture": "#texture" }, + "north": { "uv": [ 0, 8, 7, 15 ], "texture": "#texture" }, + "south": { "uv": [ 0, 8, 7, 15 ], "texture": "#texture" }, + "west": { "uv": [ 0, 8, 7, 15 ], "texture": "#texture" }, + "east": { "uv": [ 0, 8, 7, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY5", + "from": [ 0, 1, 0 ], + "to": [ 16, 1.001, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#vine" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 7, 6 ], + "to": [ 11, 8, 11 ], + "faces": { + "up": { "uv": [ 1, 1, 6, 6 ], "texture": "#texture" }, + "north": { "uv": [ 1.5, 8, 6.5, 9 ], "texture": "#texture" }, + "south": { "uv": [ 1.5, 8, 6.5, 9 ], "texture": "#texture" }, + "west": { "uv": [ 1.5, 8, 6.5, 9 ], "texture": "#texture" }, + "east": { "uv": [ 1.5, 8, 6.5, 9 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/egg_plant_destructed.json b/src/main/resources/assets/betternether/models/block/egg_plant_destructed.json new file mode 100644 index 0000000..d859135 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/egg_plant_destructed.json @@ -0,0 +1,18 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/egg_plant_vine", + "vine": "betternether:block/egg_plant_vine" + }, + "elements": [ + { + "__comment": "PlaneY5", + "from": [ 0, 1, 0 ], + "to": [ 16, 1.001, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#vine" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/egg_plant_item.json b/src/main/resources/assets/betternether/models/block/egg_plant_item.json new file mode 100644 index 0000000..76dfb05 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/egg_plant_item.json @@ -0,0 +1,36 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/egg_plant", + "texture": "betternether:block/egg_plant", + "vine": "betternether:block/egg_plant_vine" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 8, 12 ], + "faces": { + "down": { "uv": [ 3, 12, 7, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture" }, + "north": { "uv": [ 0, 8, 8, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 8, 8, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 8, 8, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 8, 8, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 8, 5 ], + "to": [ 11, 9, 11 ], + "faces": { + "up": { "uv": [ 1, 1, 7, 7 ], "texture": "#texture" }, + "north": { "uv": [ 1, 7, 7, 8 ], "texture": "#texture" }, + "south": { "uv": [ 1, 7, 7, 8 ], "texture": "#texture" }, + "west": { "uv": [ 1, 7, 7, 8 ], "texture": "#texture" }, + "east": { "uv": [ 1, 7, 7, 8 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/empty_anchor_tree.json b/src/main/resources/assets/betternether/models/block/empty_anchor_tree.json new file mode 100644 index 0000000..359a911 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/empty_anchor_tree.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/empty_crimson.json b/src/main/resources/assets/betternether/models/block/empty_crimson.json new file mode 100644 index 0000000..3841468 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/empty_crimson.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "block/crimson_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/empty_mushroom.json b/src/main/resources/assets/betternether/models/block/empty_mushroom.json new file mode 100644 index 0000000..b812ab8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/empty_mushroom.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/mushroom_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/empty_mushroom_fir.json b/src/main/resources/assets/betternether/models/block/empty_mushroom_fir.json new file mode 100644 index 0000000..e034556 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/empty_mushroom_fir.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/empty_nether_sakura.json b/src/main/resources/assets/betternether/models/block/empty_nether_sakura.json new file mode 100644 index 0000000..5759122 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/empty_nether_sakura.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/empty_reed.json b/src/main/resources/assets/betternether/models/block/empty_reed.json new file mode 100644 index 0000000..4b24bb4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/empty_reed.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/empty_rubeus.json b/src/main/resources/assets/betternether/models/block/empty_rubeus.json new file mode 100644 index 0000000..5b7a941 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/empty_rubeus.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/empty_stalagnate.json b/src/main/resources/assets/betternether/models/block/empty_stalagnate.json new file mode 100644 index 0000000..31cd03a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/empty_stalagnate.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/empty_warped.json b/src/main/resources/assets/betternether/models/block/empty_warped.json new file mode 100644 index 0000000..3e2d912 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/empty_warped.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "block/warped_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/empty_wart.json b/src/main/resources/assets/betternether/models/block/empty_wart.json new file mode 100644 index 0000000..326e36b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/empty_wart.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/empty_willow.json b/src/main/resources/assets/betternether/models/block/empty_willow.json new file mode 100644 index 0000000..e623824 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/empty_willow.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/eye_seed.json b/src/main/resources/assets/betternether/models/block/eye_seed.json new file mode 100644 index 0000000..0cc9c7e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/eye_seed.json @@ -0,0 +1,41 @@ +{ + "ambientocclusion": false, + "textures": { + "cross": "betternether:block/eye_seed", + "particle": "betternether:block/eye_side", + "down": "betternether:block/eye_seed_bottom", + "up": "betternether:block/eye_top", + "side": "betternether:block/eye_side" + }, + "elements": [ + { "from": [ 6, 6, 6 ], + "to": [ 10, 10, 10 ], + "faces": { + "down": { "texture": "#down", "cullface": "down" }, + "up": { "texture": "#up", "cullface": "up" }, + "north": { "texture": "#side", "cullface": "north" }, + "south": { "texture": "#side", "cullface": "south" }, + "west": { "texture": "#side", "cullface": "west" }, + "east": { "texture": "#side", "cullface": "east" } + } + }, + { "from": [ 0.8, 0, 8 ], + "to": [ 15.2, 16, 8 ], + "rotation": { "origin": [ 8, 8, 8 ], "axis": "y", "angle": 45, "rescale": true }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#cross" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#cross" } + } + }, + { "from": [ 8, 0, 0.8 ], + "to": [ 8, 16, 15.2 ], + "rotation": { "origin": [ 8, 8, 8 ], "axis": "y", "angle": 45, "rescale": true }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#cross" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#cross" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/eye_vine.json b/src/main/resources/assets/betternether/models/block/eye_vine.json new file mode 100644 index 0000000..39e672c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/eye_vine.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/eye_vine" + } +} diff --git a/src/main/resources/assets/betternether/models/block/farmland.json b/src/main/resources/assets/betternether/models/block/farmland.json new file mode 100644 index 0000000..ca06b81 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/farmland.json @@ -0,0 +1,217 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/farmland_side", + "side": "betternether:block/farmland_side", + "top": "betternether:block/farmland_soil", + "bottom": "betternether:block/farmland_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box2", + "from": [ -1, 0, 0 ], + "to": [ 0, 3, 16 ], + "faces": { + "down": { "uv": [ 15, 0, 16, 16 ], "texture": "#bottom", "cullface": "west" }, + "up": { "uv": [ 15, 0, 16, 16 ], "texture": "#bottom", "cullface": "west" }, + "north": { "uv": [ 0, 13, 1, 16 ], "texture": "#side", "cullface": "west" }, + "south": { "uv": [ 15, 13, 16, 16 ], "texture": "#side", "cullface": "west" }, + "west": { "uv": [ 0, 13, 16, 16 ], "texture": "#side", "cullface": "west" } + } + }, + { + "__comment": "Box2", + "from": [ -1, 4, 0 ], + "to": [ 0, 7, 16 ], + "faces": { + "down": { "uv": [ 15, 0, 16, 16 ], "texture": "#bottom", "cullface": "west" }, + "up": { "uv": [ 15, 0, 16, 16 ], "texture": "#bottom", "cullface": "west" }, + "north": { "uv": [ 0, 9, 1, 12 ], "texture": "#side", "cullface": "west" }, + "south": { "uv": [ 15, 9, 16, 12 ], "texture": "#side", "cullface": "west" }, + "west": { "uv": [ 0, 9, 16, 12 ], "texture": "#side", "cullface": "west" } + } + }, + { + "__comment": "Box2", + "from": [ -1, 8, 0 ], + "to": [ 0, 11, 16 ], + "faces": { + "down": { "uv": [ 15, 0, 16, 16 ], "texture": "#bottom", "cullface": "west" }, + "up": { "uv": [ 15, 0, 16, 16 ], "texture": "#bottom", "cullface": "west" }, + "north": { "uv": [ 0, 5, 1, 8 ], "texture": "#side", "cullface": "west" }, + "south": { "uv": [ 15, 5, 16, 8 ], "texture": "#side", "cullface": "west" }, + "west": { "uv": [ 0, 5, 16, 8 ], "texture": "#side", "cullface": "west" } + } + }, + { + "__comment": "Box2", + "from": [ -1, 12, 0 ], + "to": [ 0, 16, 16 ], + "faces": { + "down": { "uv": [ 15, 0, 16, 16 ], "texture": "#bottom", "cullface": "west" }, + "up": { "uv": [ 15, 0, 16, 16 ], "texture": "#bottom", "cullface": "west" }, + "north": { "uv": [ 0, 0, 1, 4 ], "texture": "#side", "cullface": "west" }, + "south": { "uv": [ 15, 0, 16, 4 ], "texture": "#side", "cullface": "west" }, + "west": { "uv": [ 0, 0, 16, 4 ], "texture": "#side", "cullface": "west" } + } + }, + { + "__comment": "Box2", + "from": [ 16, 12, 0 ], + "to": [ 17, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 1, 16 ], "texture": "#bottom", "cullface": "east" }, + "up": { "uv": [ 0, 0, 1, 16 ], "texture": "#bottom", "cullface": "east" }, + "north": { "uv": [ 15, 0, 16, 4 ], "texture": "#side", "cullface": "east" }, + "south": { "uv": [ 0, 0, 1, 4 ], "texture": "#side", "cullface": "east" }, + "east": { "uv": [ 0, 0, 16, 4 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box2", + "from": [ 16, 0, 0 ], + "to": [ 17, 3, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 1, 16 ], "texture": "#bottom", "cullface": "east" }, + "up": { "uv": [ 0, 0, 1, 16 ], "texture": "#bottom", "cullface": "east" }, + "north": { "uv": [ 15, 13, 16, 16 ], "texture": "#side", "cullface": "east" }, + "south": { "uv": [ 0, 13, 1, 16 ], "texture": "#side", "cullface": "east" }, + "east": { "uv": [ 0, 13, 16, 16 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box2", + "from": [ 16, 4, 0 ], + "to": [ 17, 7, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 1, 16 ], "texture": "#bottom", "cullface": "east" }, + "up": { "uv": [ 0, 0, 1, 16 ], "texture": "#bottom", "cullface": "east" }, + "north": { "uv": [ 15, 9, 16, 12 ], "texture": "#side", "cullface": "east" }, + "south": { "uv": [ 0, 9, 1, 12 ], "texture": "#side", "cullface": "east" }, + "east": { "uv": [ 0, 9, 16, 12 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box2", + "from": [ 16, 8, 0 ], + "to": [ 17, 11, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 1, 16 ], "texture": "#bottom", "cullface": "east" }, + "up": { "uv": [ 0, 0, 1, 16 ], "texture": "#bottom", "cullface": "east" }, + "north": { "uv": [ 15, 5, 16, 8 ], "texture": "#side", "cullface": "east" }, + "south": { "uv": [ 0, 5, 1, 8 ], "texture": "#side", "cullface": "east" }, + "east": { "uv": [ 0, 5, 16, 8 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box2", + "from": [ 0, 12, -1 ], + "to": [ 16, 16, 0 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 1 ], "texture": "#bottom", "cullface": "north" }, + "up": { "uv": [ 0, 15, 16, 16 ], "texture": "#bottom", "cullface": "north" }, + "north": { "uv": [ 0, 0, 16, 4 ], "texture": "#side", "cullface": "north" }, + "west": { "uv": [ 15, 0, 16, 4 ], "texture": "#side", "cullface": "north" }, + "east": { "uv": [ 0, 0, 1, 4 ], "texture": "#side", "cullface": "north" } + } + }, + { + "__comment": "Box2", + "from": [ 0, 8, -1 ], + "to": [ 16, 11, 0 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 1 ], "texture": "#bottom", "cullface": "north" }, + "up": { "uv": [ 0, 15, 16, 16 ], "texture": "#bottom", "cullface": "north" }, + "north": { "uv": [ 0, 5, 16, 8 ], "texture": "#side", "cullface": "north" }, + "west": { "uv": [ 15, 5, 16, 8 ], "texture": "#side" }, + "east": { "uv": [ 0, 5, 1, 8 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 0, 4, -1 ], + "to": [ 16, 7, 0 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 1 ], "texture": "#bottom", "cullface": "north" }, + "up": { "uv": [ 0, 15, 16, 16 ], "texture": "#bottom", "cullface": "north" }, + "north": { "uv": [ 0, 9, 16, 12 ], "texture": "#side", "cullface": "north" }, + "west": { "uv": [ 15, 9, 16, 12 ], "texture": "#side" }, + "east": { "uv": [ 0, 9, 1, 12 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 0, 0, -1 ], + "to": [ 16, 3, 0 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 1 ], "texture": "#bottom", "cullface": "north" }, + "up": { "uv": [ 0, 15, 16, 16 ], "texture": "#bottom", "cullface": "north" }, + "north": { "uv": [ 0, 13, 16, 16 ], "texture": "#side", "cullface": "north" }, + "west": { "uv": [ 15, 13, 16, 16 ], "texture": "#side" }, + "east": { "uv": [ 0, 13, 1, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 0, 12, 16 ], + "to": [ 16, 16, 17 ], + "faces": { + "down": { "uv": [ 0, 15, 16, 16 ], "texture": "#bottom", "cullface": "south" }, + "up": { "uv": [ 0, 0, 16, 1 ], "texture": "#bottom", "cullface": "south" }, + "south": { "uv": [ 0, 0, 16, 4 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 0, 1, 4 ], "texture": "#side", "cullface": "south" }, + "east": { "uv": [ 15, 0, 16, 4 ], "texture": "#side", "cullface": "south" } + } + }, + { + "__comment": "Box2", + "from": [ 0, 8, 16 ], + "to": [ 16, 11, 17 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 1 ], "texture": "#bottom", "cullface": "south" }, + "up": { "uv": [ 0, 15, 16, 16 ], "texture": "#bottom", "cullface": "south" }, + "south": { "uv": [ 0, 5, 16, 8 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 15, 5, 16, 8 ], "texture": "#side", "cullface": "south" }, + "east": { "uv": [ 0, 5, 1, 8 ], "texture": "#side", "cullface": "south" } + } + }, + { + "__comment": "Box2", + "from": [ 0, 4, 16 ], + "to": [ 16, 7, 17 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 1 ], "texture": "#bottom", "cullface": "south" }, + "up": { "uv": [ 0, 15, 16, 16 ], "texture": "#bottom", "cullface": "south" }, + "south": { "uv": [ 0, 9, 16, 12 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 15, 9, 16, 12 ], "texture": "#side", "cullface": "south" }, + "east": { "uv": [ 0, 9, 1, 12 ], "texture": "#side", "cullface": "south" } + } + }, + { + "__comment": "Box2", + "from": [ 0, 0, 16 ], + "to": [ 16, 3, 17 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 1 ], "texture": "#bottom", "cullface": "south" }, + "up": { "uv": [ 0, 15, 16, 16 ], "texture": "#bottom", "cullface": "south" }, + "south": { "uv": [ 0, 13, 16, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 15, 13, 16, 16 ], "texture": "#side", "cullface": "south" }, + "east": { "uv": [ 0, 13, 1, 16 ], "texture": "#side", "cullface": "south" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/feather_fern.json b/src/main/resources/assets/betternether/models/block/feather_fern.json new file mode 100644 index 0000000..6b6fc70 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/feather_fern.json @@ -0,0 +1,121 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/feather_fern_leaf", + "texture": "betternether:block/feather_fern_leaf", + "texture1": "betternether:block/feather_fern_center" + }, + "elements": [ + { + "__comment": "PlaneY1", + "from": [ 8.5, 0, 0 ], + "to": [ 24.5, 0.001, 16 ], + "rotation": { "origin": [ 8.5, 0, 0 ], "axis": "z", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "PlaneY1", + "from": [ -8.5, -0.001, 0 ], + "to": [ 7.5, 0, 16 ], + "rotation": { "origin": [ 7.5, 0, 0 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 270 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, -1, 7 ], + "to": [ 16, -0.999, 23 ], + "rotation": { "origin": [ 0, -1, 7 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, -1.001, -7 ], + "to": [ 16, -0.9999999, 9 ], + "rotation": { "origin": [ 0, -1, 9 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY5", + "from": [ 11, 0.5, -5.5 ], + "to": [ 27, 0.501, 10.5 ], + "rotation": { "origin": [ 11, 0.5, -5.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY5", + "from": [ 5.5, 0.375, -5 ], + "to": [ 21.5, 0.376, 11 ], + "rotation": { "origin": [ 21.5, 0.375, 11 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY5", + "from": [ -11, 0.25, 5.5 ], + "to": [ 5, 0.251, 21.5 ], + "rotation": { "origin": [ 5, 0.25, 21.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY5", + "from": [ -5.4999, 0.125, 4.9999 ], + "to": [ 10.5001, 0.126, 20.9999 ], + "rotation": { "origin": [ -5.5, 0.125, 5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX9", + "from": [ 2.5, 0, 2.5 ], + "to": [ 2.501, 16, 18.5 ], + "rotation": { "origin": [ 2.5, 0, 2.5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0.5, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 15.5, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX9", + "from": [ 13.5, 0, 2.5 ], + "to": [ 13.501, 16, 18.5 ], + "rotation": { "origin": [ 13.5, 0, 2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0.5, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 15.5, 16 ], "texture": "#texture1" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/feather_fern_1.json b/src/main/resources/assets/betternether/models/block/feather_fern_1.json new file mode 100644 index 0000000..19eb157 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/feather_fern_1.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/feather_fern", + "textures": { + "particle": "betternether:block/feather_fern_leaf_1", + "texture": "betternether:block/feather_fern_leaf_1", + "texture1": "betternether:block/feather_fern_center_1" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/feather_fern_2.json b/src/main/resources/assets/betternether/models/block/feather_fern_2.json new file mode 100644 index 0000000..2b15d0c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/feather_fern_2.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/feather_fern", + "textures": { + "particle": "betternether:block/feather_fern_leaf_2", + "texture": "betternether:block/feather_fern_leaf_2", + "texture1": "betternether:block/feather_fern_center_2" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/feather_fern_3.json b/src/main/resources/assets/betternether/models/block/feather_fern_3.json new file mode 100644 index 0000000..47b0a81 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/feather_fern_3.json @@ -0,0 +1,31 @@ +{ + "parent": "block/block", + "textures": { + "particle": "betternether:block/feather_fern_leaf_2", + "texture1": "betternether:block/feather_fern_center_2" + }, + "elements": [ + { + "__comment": "PlaneX9", + "from": [ 2.5, 0, 2.5 ], + "to": [ 2.501, 16, 18.5 ], + "rotation": { "origin": [ 2.5, 0, 2.5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0.5, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 15.5, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX9", + "from": [ 13.5, 0, 2.5 ], + "to": [ 13.501, 16, 18.5 ], + "rotation": { "origin": [ 13.5, 0, 2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0.5, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 15.5, 16 ], "texture": "#texture1" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/flowered_vine_1.json b/src/main/resources/assets/betternether/models/block/flowered_vine_1.json new file mode 100644 index 0000000..821f52b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/flowered_vine_1.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/flowered_vine_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/flowered_vine_2.json b/src/main/resources/assets/betternether/models/block/flowered_vine_2.json new file mode 100644 index 0000000..53188c0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/flowered_vine_2.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block_inverted", + "textures": { + "texture": "betternether:block/flowered_vine_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/flowered_vine_3.json b/src/main/resources/assets/betternether/models/block/flowered_vine_3.json new file mode 100644 index 0000000..e390623 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/flowered_vine_3.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/flowered_vine_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/flowered_vine_4.json b/src/main/resources/assets/betternether/models/block/flowered_vine_4.json new file mode 100644 index 0000000..815d2e5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/flowered_vine_4.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block_inverted", + "textures": { + "texture": "betternether:block/flowered_vine_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/flowered_vine_5.json b/src/main/resources/assets/betternether/models/block/flowered_vine_5.json new file mode 100644 index 0000000..caa17ca --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/flowered_vine_5.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/flowered_vine_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/flowered_vine_6.json b/src/main/resources/assets/betternether/models/block/flowered_vine_6.json new file mode 100644 index 0000000..4365bc9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/flowered_vine_6.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block_inverted", + "textures": { + "texture": "betternether:block/flowered_vine_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/flowered_vine_bottom_1.json b/src/main/resources/assets/betternether/models/block/flowered_vine_bottom_1.json new file mode 100644 index 0000000..974e247 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/flowered_vine_bottom_1.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/flowered_vine_bottom_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/flowered_vine_bottom_2.json b/src/main/resources/assets/betternether/models/block/flowered_vine_bottom_2.json new file mode 100644 index 0000000..81a5c59 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/flowered_vine_bottom_2.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block_inverted", + "textures": { + "texture": "betternether:block/flowered_vine_bottom_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/flowered_vine_bottom_3.json b/src/main/resources/assets/betternether/models/block/flowered_vine_bottom_3.json new file mode 100644 index 0000000..74907d9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/flowered_vine_bottom_3.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/flowered_vine_bottom_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/flowered_vine_bottom_4.json b/src/main/resources/assets/betternether/models/block/flowered_vine_bottom_4.json new file mode 100644 index 0000000..ad18fb0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/flowered_vine_bottom_4.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block_inverted", + "textures": { + "texture": "betternether:block/flowered_vine_bottom_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/geyser.json b/src/main/resources/assets/betternether/models/block/geyser.json new file mode 100644 index 0000000..2d7e3df --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/geyser.json @@ -0,0 +1,112 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/netherrack", + "texture": "block/netherrack", + "texture1": "block/magma" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 1 ], + "to": [ 10, 3, 6 ], + "faces": { + "up": { "uv": [ 5, 1, 10, 6 ], "texture": "#texture" }, + "north": { "uv": [ 6, 13, 11, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 10, 16 ], "texture": "#texture" }, + "west": { "uv": [ 1, 13, 6, 16 ], "texture": "#texture" }, + "east": { "uv": [ 10, 13, 15, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 0, 3.5 ], + "to": [ 15.5, 4, 8.5 ], + "faces": { + "up": { "uv": [ 10, 3.5, 15.5, 8.5 ], "texture": "#texture" }, + "north": { "uv": [ 0.5, 12, 6, 16 ], "texture": "#texture" }, + "south": { "uv": [ 10, 12, 15.5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3.5, 12, 8.5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7.5, 12, 12.5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 0, 10 ], + "to": [ 11, 2, 14 ], + "faces": { + "up": { "uv": [ 6, 10, 11, 14 ], "texture": "#texture" }, + "north": { "uv": [ 5, 14, 10, 16 ], "texture": "#texture" }, + "south": { "uv": [ 6, 14, 11, 16 ], "texture": "#texture" }, + "west": { "uv": [ 10, 14, 14, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 14, 6, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 0, 7.5 ], + "to": [ 14, 3, 11.5 ], + "faces": { + "up": { "uv": [ 10, 7.5, 14, 11.5 ], "texture": "#texture" }, + "south": { "uv": [ 10, 13, 14, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7.5, 13, 11.5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 4.5, 13, 8.5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 8 ], + "to": [ 7, 3, 12 ], + "faces": { + "up": { "uv": [ 3, 8, 7, 12 ], "texture": "#texture" }, + "north": { "uv": [ 9, 13, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 13, 7, 16 ], "texture": "#texture" }, + "west": { "uv": [ 8, 13, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 4, 13, 8, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 3 ], + "to": [ 6, 4, 8 ], + "faces": { + "up": { "uv": [ 2, 3, 6, 8 ], "texture": "#texture" }, + "north": { "uv": [ 10, 12, 14, 16 ], "texture": "#texture" }, + "south": { "uv": [ 2, 12, 6, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 12, 8, 16 ], "texture": "#texture" }, + "east": { "uv": [ 8, 12, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 0, 0 ], + "to": [ 6.5, 2, 3 ], + "faces": { + "up": { "uv": [ 4, 0, 6.5, 3 ], "texture": "#texture" }, + "north": { "uv": [ 9.5, 14, 12, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 4, 14, 6.5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 14, 3, 16 ], "texture": "#texture" }, + "east": { "uv": [ 13, 14, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 0, 2 ], + "to": [ 12.5, 2, 5 ], + "faces": { + "up": { "uv": [ 10, 2, 12.5, 5 ], "texture": "#texture" }, + "north": { "uv": [ 3.5, 14, 6, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 14, 14, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box9", + "from": [ 6, 0, 6 ], + "to": [ 10, 2, 10 ], + "faces": { + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#texture1" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/giant_lucis_bottom.json b/src/main/resources/assets/betternether/models/block/giant_lucis_bottom.json new file mode 100644 index 0000000..ca7965e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/giant_lucis_bottom.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_single_face", + "textures": { + "texture": "betternether:block/giant_lucis_bottom" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/giant_lucis_inventory.json b/src/main/resources/assets/betternether/models/block/giant_lucis_inventory.json new file mode 100644 index 0000000..4502bb4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/giant_lucis_inventory.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/giant_lucis_side", + "down": "betternether:block/giant_lucis_bottom", + "up": "betternether:block/giant_lucis_top", + "north": "betternether:block/giant_lucis_side", + "east": "betternether:block/giant_lucis_side", + "south": "betternether:block/giant_lucis_side", + "west": "betternether:block/giant_lucis_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/giant_lucis_side.json b/src/main/resources/assets/betternether/models/block/giant_lucis_side.json new file mode 100644 index 0000000..ec56990 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/giant_lucis_side.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_single_face", + "textures": { + "texture": "betternether:block/giant_lucis_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/giant_lucis_top.json b/src/main/resources/assets/betternether/models/block/giant_lucis_top.json new file mode 100644 index 0000000..ba600cf --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/giant_lucis_top.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_single_face", + "textures": { + "texture": "betternether:block/giant_lucis_top" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/giant_mold_bottom.json b/src/main/resources/assets/betternether/models/block/giant_mold_bottom.json new file mode 100644 index 0000000..0208c22 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/giant_mold_bottom.json @@ -0,0 +1,96 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/giant_mold_stem_side", + "texture": "betternether:block/giant_mold_stem_side", + "cut": "betternether:block/mushroom_stem_top", + "roots": "betternether:block/giant_mold_roots" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 8, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#cut", "cullface": "down" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#cut" }, + "north": { "uv": [ 5, 8, 11, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 8, 11, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 8, 11, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 8, 11, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 1.5, 0, 0 ], + "to": [ 1.501, 16, 16 ], + "rotation": { "origin": [ 1.5, 0, 0 ], "axis": "z", "angle": -22.5 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 14, 0, 0 ], + "to": [ 14.001, 16, 16 ], + "rotation": { "origin": [ 14, 0, 0 ], "axis": "z", "angle": 22.5 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { + "__comment": "PlaneZ5", + "from": [ 0, 0, 2 ], + "to": [ 16, 16, 2.001 ], + "rotation": { "origin": [ 0, 0, 2 ], "axis": "x", "angle": 22.5 }, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { + "__comment": "PlaneZ5", + "from": [ 0, 0, 14 ], + "to": [ 16, 16, 14.001 ], + "rotation": { "origin": [ 0, 0, 14 ], "axis": "x", "angle": -22.5 }, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { + "__comment": "PlaneX7", + "from": [ 0, 0, 0 ], + "to": [ 0.001, 16, 22.5 ], + "rotation": { "origin": [ 0, 0, 0 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { + "__comment": "PlaneX7", + "from": [ 16, 0, 0 ], + "to": [ 16.001, 16, 22.5 ], + "rotation": { "origin": [ 16, 0, 0 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 8, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#cut", "cullface": "up" }, + "north": { "uv": [ 6, 0, 10, 8 ], "texture": "#texture" }, + "south": { "uv": [ 6, 0, 10, 8 ], "texture": "#texture" }, + "west": { "uv": [ 6, 0, 10, 8 ], "texture": "#texture" }, + "east": { "uv": [ 6, 0, 10, 8 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/giant_mold_sapling.json b/src/main/resources/assets/betternether/models/block/giant_mold_sapling.json new file mode 100644 index 0000000..1a3f2a5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/giant_mold_sapling.json @@ -0,0 +1,69 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/giant_mold_stem_side", + "texture": "betternether:block/giant_mold_stem_side", + "cut": "betternether:block/mushroom_stem_top", + "texture1": "betternether:block/giant_mold_small" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 4, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#cut", "cullface": "down" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#cut", "cullface": "up" }, + "north": { "uv": [ 7, 12, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 12, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 12, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 12, 9, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 4, 5 ], + "to": [ 11, 10, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture1" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture1" }, + "north": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture1" }, + "south": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture1" }, + "west": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture1" }, + "east": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX4", + "from": [ 13.5, -1, 2.5 ], + "to": [ 13.501, 15, 18.5 ], + "rotation": { "origin": [ 13.5, -1, 2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX4", + "from": [ 3, -1, 3 ], + "to": [ 3.001, 15, 19 ], + "rotation": { "origin": [ 3, -1, 3 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneY6", + "from": [ 0, 7, 0 ], + "to": [ 16, 7.001, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/giant_mold_stem.json b/src/main/resources/assets/betternether/models/block/giant_mold_stem.json new file mode 100644 index 0000000..a7a3c30 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/giant_mold_stem.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/giant_mold_stem_side", + "texture": "betternether:block/giant_mold_stem_side", + "cut": "betternether:block/mushroom_stem_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#cut", "cullface": "down" }, + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#cut", "cullface": "up" }, + "north": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "south": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "west": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "east": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/giant_mold_stem_2.json b/src/main/resources/assets/betternether/models/block/giant_mold_stem_2.json new file mode 100644 index 0000000..eb55047 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/giant_mold_stem_2.json @@ -0,0 +1,69 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/giant_mold_stem_side", + "texture": "betternether:block/giant_mold_stem_side", + "cut": "betternether:block/mushroom_stem_top", + "texture1": "betternether:block/giant_mold_small" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#cut", "cullface": "down" }, + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#cut", "cullface": "up" }, + "north": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "south": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "west": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "east": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 9, 5, 9 ], + "to": [ 15, 11, 15 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture1" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture1" }, + "north": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture1" }, + "south": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture1" }, + "west": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture1" }, + "east": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX4", + "from": [ 17.5, 0, 6.5 ], + "to": [ 17.501, 16, 22.5 ], + "rotation": { "origin": [ 17.5, 0, 6.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX4", + "from": [ 7, 0, 7 ], + "to": [ 7.001, 16, 23 ], + "rotation": { "origin": [ 7, 0, 7 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneY6", + "from": [ 4, 8, 4 ], + "to": [ 20, 8.001, 20 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/giant_mold_top.json b/src/main/resources/assets/betternether/models/block/giant_mold_top.json new file mode 100644 index 0000000..43e1971 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/giant_mold_top.json @@ -0,0 +1,102 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/giant_mold_top", + "texture": "betternether:block/giant_mold_top", + "fur": "betternether:block/giant_mold_fur", + "cut": "betternether:block/mushroom_stem_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 2, 2 ], + "to": [ 14, 14, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "north": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "south": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "west": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "east": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY2", + "from": [ -8, -3, -2.5 ], + "to": [ 24, -2.999, 29.5 ], + "rotation": { "origin": [ -8, -3, -2.5 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#fur" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#fur" } + } + }, + { + "__comment": "PlaneY2", + "from": [ -8, 19.5, -3.5 ], + "to": [ 24, 19.501, 28.5 ], + "rotation": { "origin": [ -8, 19.5, -3.5 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#fur" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#fur" } + } + }, + { + "__comment": "PlaneY2", + "from": [ -3, 19, -8 ], + "to": [ 29, 19.001, 24 ], + "rotation": { "origin": [ -3, 19, -8 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#fur" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#fur" } + } + }, + { + "__comment": "PlaneY2", + "from": [ -3, -3, -8 ], + "to": [ 29, -2.999, 24 ], + "rotation": { "origin": [ -3, -3, -8 ], "axis": "z", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#fur" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#fur" } + } + }, + { + "__comment": "PlaneX7", + "from": [ -3.5, -8, -3.5 ], + "to": [ -3.499, 24, 28.5 ], + "rotation": { "origin": [ -3.5, -8, -3.5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#fur" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#fur" } + } + }, + { + "__comment": "PlaneX7", + "from": [ 19, -8, -3.5 ], + "to": [ 19.001, 24, 28.5 ], + "rotation": { "origin": [ 19, -8, -3.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#fur" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#fur" } + } + }, + { + "__comment": "Box9", + "from": [ 5, 0, 5 ], + "to": [ 11, 2, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#cut", "cullface": "down" }, + "north": { "uv": [ 5, 14, 11, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 14, 11, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 14, 11, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 14, 11, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/glowmushroom_center.json b/src/main/resources/assets/betternether/models/block/glowmushroom_center.json new file mode 100644 index 0000000..a85c07c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/glowmushroom_center.json @@ -0,0 +1,25 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/glowmushroom_side_top", + "top": "betternether:block/glowmushroom_center_top", + "side": "betternether:block/glowmushroom_side_top", + "bottom": "betternether:block/glowmushroom_center_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 9, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "north": { "uv": [ 0, 7, 16, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 7, 16, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 7, 16, 16 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 0, 7, 16, 16 ], "texture": "#side", "cullface": "east" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/glowmushroom_corner.json b/src/main/resources/assets/betternether/models/block/glowmushroom_corner.json new file mode 100644 index 0000000..cdd0f56 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/glowmushroom_corner.json @@ -0,0 +1,60 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/glowmushroom_side_top", + "top": "betternether:block/glowmushroom_corner_top", + "side": "betternether:block/glowmushroom_side_top", + "bottom": "betternether:block/glowmushroom_corner_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 8, 0, 0 ], + "to": [ 16, 8, 8 ], + "faces": { + "down": { "uv": [ 8, 0, 16, 8 ], "texture": "#bottom", "cullface": "down", "rotation": 90 }, + "up": { "uv": [ 8, 0, 16, 8 ], "texture": "#top" }, + "north": { "uv": [ 0, 8, 8, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 8, 8, 16, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 8, 8, 16 ], "texture": "#side" }, + "east": { "uv": [ 8, 8, 16, 16 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box5", + "from": [ 0, 0, 0 ], + "to": [ 8, 4, 8 ], + "faces": { + "down": { "uv": [ 8, 8, 16, 16 ], "texture": "#bottom", "cullface": "down", "rotation": 90 }, + "up": { "uv": [ 0, 0, 8, 8 ], "texture": "#top" }, + "north": { "uv": [ 8, 12, 16, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 12, 8, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 12, 8, 16 ], "texture": "#side", "cullface": "west" } + } + }, + { + "__comment": "Box5", + "from": [ 8, 0, 8 ], + "to": [ 16, 4, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 8, 8 ], "texture": "#bottom", "cullface": "down", "rotation": 90 }, + "up": { "uv": [ 8, 8, 16, 16 ], "texture": "#top" }, + "south": { "uv": [ 8, 12, 16, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 8, 12, 16, 16 ], "texture": "#side" }, + "east": { "uv": [ 0, 12, 8, 16 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box5", + "from": [ 4, 0, 8 ], + "to": [ 8, 4, 12 ], + "faces": { + "down": { "uv": [ 4, 8, 8, 12 ], "texture": "#bottom", "cullface": "down", "rotation": 90 }, + "up": { "uv": [ 4, 8, 8, 12 ], "texture": "#top" }, + "south": { "uv": [ 4, 12, 8, 16 ], "texture": "#side" }, + "west": { "uv": [ 8, 12, 12, 16 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/glowmushroom_side.json b/src/main/resources/assets/betternether/models/block/glowmushroom_side.json new file mode 100644 index 0000000..ac13b1f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/glowmushroom_side.json @@ -0,0 +1,36 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/glowmushroom_side_top", + "side": "betternether:block/glowmushroom_side_top", + "bottom": "betternether:block/glowmushroom_side_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 8, 8 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 8 ], "texture": "#bottom", "cullface": "down", "rotation": 180 }, + "up": { "uv": [ 0, 0, 16, 8 ], "texture": "#side" }, + "north": { "uv": [ 0, 8, 16, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 8, 16, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 8, 8, 16 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 8, 8, 16, 16 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box5", + "from": [ 0, 0, 8 ], + "to": [ 16, 4, 16 ], + "faces": { + "down": { "uv": [ 0, 8, 16, 16 ], "texture": "#bottom", "cullface": "down", "rotation": 180 }, + "up": { "uv": [ 0, 8, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 12, 16, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 8, 12, 16, 16 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 0, 12, 8, 16 ], "texture": "#side", "cullface": "east" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/glowmushroom_spore.json b/src/main/resources/assets/betternether/models/block/glowmushroom_spore.json new file mode 100644 index 0000000..ff39d1e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/glowmushroom_spore.json @@ -0,0 +1,36 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/glowmushroom_side_top", + "top": "betternether:block/glowmushroom_spore_top", + "bottom": "betternether:block/glowmushroom_spore_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 7, 0 ], + "to": [ 12, 9, 8 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 11, 12, 13 ], "texture": "#top", "cullface": "north" }, + "south": { "uv": [ 4, 11, 12, 13 ], "texture": "#top" }, + "west": { "uv": [ 4, 11, 12, 13 ], "texture": "#top" }, + "east": { "uv": [ 4, 11, 12, 13 ], "texture": "#top" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 9, 1 ], + "to": [ 11, 10, 7 ], + "faces": { + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#top" }, + "north": { "uv": [ 5, 5, 11, 6 ], "texture": "#top" }, + "south": { "uv": [ 5, 10, 11, 11 ], "texture": "#top" }, + "west": { "uv": [ 5, 5, 11, 6 ], "texture": "#top" }, + "east": { "uv": [ 5, 10, 11, 11 ], "texture": "#top" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/glowstone_stalactite_0.json b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_0.json new file mode 100644 index 0000000..684e708 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_0.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_0", + "textures": { + "particle": "block/glowstone", + "texture": "block/glowstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/glowstone_stalactite_1.json b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_1.json new file mode 100644 index 0000000..8598cf4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_1.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_1", + "textures": { + "particle": "block/glowstone", + "texture": "block/glowstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/glowstone_stalactite_2.json b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_2.json new file mode 100644 index 0000000..8b929bc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_2.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_2", + "textures": { + "particle": "block/glowstone", + "texture": "block/glowstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/glowstone_stalactite_3.json b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_3.json new file mode 100644 index 0000000..1eadc3b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_3.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_3", + "textures": { + "particle": "block/glowstone", + "texture": "block/glowstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/glowstone_stalactite_4.json b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_4.json new file mode 100644 index 0000000..52ad87f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_4.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_4", + "textures": { + "particle": "block/glowstone", + "texture": "block/glowstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/glowstone_stalactite_5.json b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_5.json new file mode 100644 index 0000000..297690d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_5.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_5", + "textures": { + "particle": "block/glowstone", + "texture": "block/glowstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/glowstone_stalactite_6.json b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_6.json new file mode 100644 index 0000000..a83a0a9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_6.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_6", + "textures": { + "particle": "block/glowstone", + "texture": "block/glowstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/glowstone_stalactite_7.json b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_7.json new file mode 100644 index 0000000..e1ac4b0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/glowstone_stalactite_7.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalactite_7", + "textures": { + "particle": "block/glowstone", + "texture": "block/glowstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/golden_lumabus_bulb_1.json b/src/main/resources/assets/betternether/models/block/golden_lumabus_bulb_1.json new file mode 100644 index 0000000..e9890c0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/golden_lumabus_bulb_1.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/lumabus_bulb_1", + "textures": { + "particle": "betternether:block/golden_lumabus_bulb_1", + "texture": "betternether:block/golden_lumabus_bulb_1", + "leaves": "betternether:block/golden_lumabus_leaves" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/golden_lumabus_bulb_2.json b/src/main/resources/assets/betternether/models/block/golden_lumabus_bulb_2.json new file mode 100644 index 0000000..da601b2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/golden_lumabus_bulb_2.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/lumabus_bulb_1", + "textures": { + "particle": "betternether:block/golden_lumabus_bulb_2", + "texture": "betternether:block/golden_lumabus_bulb_2", + "leaves": "betternether:block/golden_lumabus_leaves" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/golden_lumabus_bulb_3.json b/src/main/resources/assets/betternether/models/block/golden_lumabus_bulb_3.json new file mode 100644 index 0000000..5a3bfa9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/golden_lumabus_bulb_3.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/lumabus_bulb_1", + "textures": { + "particle": "betternether:block/golden_lumabus_bulb_3", + "texture": "betternether:block/golden_lumabus_bulb_3", + "leaves": "betternether:block/golden_lumabus_leaves" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/golden_lumabus_bulb_4.json b/src/main/resources/assets/betternether/models/block/golden_lumabus_bulb_4.json new file mode 100644 index 0000000..4d736d7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/golden_lumabus_bulb_4.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/lumabus_bulb_1", + "textures": { + "particle": "betternether:block/golden_lumabus_bulb_4", + "texture": "betternether:block/golden_lumabus_bulb_4", + "leaves": "betternether:block/golden_lumabus_leaves" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/golden_lumabus_roots.json b/src/main/resources/assets/betternether/models/block/golden_lumabus_roots.json new file mode 100644 index 0000000..895ecfc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/golden_lumabus_roots.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/lumabus_roots", + "textures": { + "particle": "betternether:block/golden_lumabus_vine", + "texture": "betternether:block/golden_lumabus_vine", + "roots": "betternether:block/golden_lumabus_roots" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/golden_lumabus_seed.json b/src/main/resources/assets/betternether/models/block/golden_lumabus_seed.json new file mode 100644 index 0000000..f296a27 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/golden_lumabus_seed.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/lumabus_vine", + "textures": { + "particle": "betternether:block/golden_lumabus_sapling", + "texture": "betternether:block/golden_lumabus_sapling" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/golden_lumabus_vine.json b/src/main/resources/assets/betternether/models/block/golden_lumabus_vine.json new file mode 100644 index 0000000..9689fd8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/golden_lumabus_vine.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/lumabus_vine", + "textures": { + "particle": "betternether:block/golden_lumabus_vine", + "texture": "betternether:block/golden_lumabus_vine" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/golden_lumabus_vine_mirrored.json b/src/main/resources/assets/betternether/models/block/golden_lumabus_vine_mirrored.json new file mode 100644 index 0000000..768fc56 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/golden_lumabus_vine_mirrored.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/lumabus_vine_mirrored", + "textures": { + "particle": "betternether:block/golden_lumabus_vine", + "texture": "betternether:block/golden_lumabus_vine" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/golden_vine_1.json b/src/main/resources/assets/betternether/models/block/golden_vine_1.json new file mode 100644 index 0000000..2d0eeec --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/golden_vine_1.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/golden_vine" + } +} diff --git a/src/main/resources/assets/betternether/models/block/golden_vine_2.json b/src/main/resources/assets/betternether/models/block/golden_vine_2.json new file mode 100644 index 0000000..d0bf3e5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/golden_vine_2.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/cross_inverted", + "textures": { + "cross": "betternether:block/golden_vine" + } +} diff --git a/src/main/resources/assets/betternether/models/block/golden_vine_bottom_1.json b/src/main/resources/assets/betternether/models/block/golden_vine_bottom_1.json new file mode 100644 index 0000000..0e10a76 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/golden_vine_bottom_1.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/golden_vine_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/golden_vine_bottom_2.json b/src/main/resources/assets/betternether/models/block/golden_vine_bottom_2.json new file mode 100644 index 0000000..8f1e803 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/golden_vine_bottom_2.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/cross_inverted", + "textures": { + "cross": "betternether:block/golden_vine_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/grass_fan.json b/src/main/resources/assets/betternether/models/block/grass_fan.json new file mode 100644 index 0000000..a321a8f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/grass_fan.json @@ -0,0 +1,44 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#texture" + }, + "elements": [ + { "from": [ 8, 0, 0 ], + "to": [ 24, 0, 16 ], + "rotation": { "origin": [ 8, 0, 0 ], "axis": "z", "angle": 22.5, "rescale": false }, + "shade": false, + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 }, + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture", "rotation": 270 } + } + }, + { "from": [ -8, 0, 0 ], + "to": [ 8, 0, 16 ], + "rotation": { "origin": [ 8, 0, 0 ], "axis": "z", "angle": -22.5, "rescale": false }, + "shade": false, + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 270 }, + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture", "rotation": 90 } + } + }, + { "from": [ 0, 0, 8 ], + "to": [ 16, 0, 24 ], + "rotation": { "origin": [ 0, 0, 8 ], "axis": "x", "angle": -22.5, "rescale": false }, + "shade": false, + "faces": { + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture" }, + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { "from": [ 0, 0, -8 ], + "to": [ 16, 0, 8 ], + "rotation": { "origin": [ 0, 0, 8 ], "axis": "x", "angle": 22.5, "rescale": false }, + "shade": false, + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/grass_fan_pot.json b/src/main/resources/assets/betternether/models/block/grass_fan_pot.json new file mode 100644 index 0000000..1fcd0f6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/grass_fan_pot.json @@ -0,0 +1,54 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "ambientocclusion": false, + "textures": { + "particle": "#texture", + "texture": "block/stone" + }, + "elements": [ + { + "__comment": "Element", + "from": [ 8, -8, 0 ], + "to": [ 24, -7.999, 16 ], + "rotation": { "origin": [ 8, -8, 0 ], "axis": "z", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture", "rotation": 270 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Element", + "from": [ -8, -8, 0 ], + "to": [ 8, -7.999, 16 ], + "rotation": { "origin": [ 8, -8, 0 ], "axis": "z", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "Element", + "from": [ 0, -8, 8 ], + "to": [ 16, -7.999, 24 ], + "rotation": { "origin": [ 0, -8, 8 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture" } + } + }, + { + "__comment": "Element", + "from": [ 0, -8, -8 ], + "to": [ 16, -7.999, 8 ], + "rotation": { "origin": [ 0, -8, 8 ], "axis": "x", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/grass_pot.json b/src/main/resources/assets/betternether/models/block/grass_pot.json new file mode 100644 index 0000000..de59c02 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/grass_pot.json @@ -0,0 +1,32 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "ambientocclusion": false, + "textures": { + "particle": "#texture", + "texture": "block/stone" + }, + "elements": [ + { + "__comment": "PlaneX1", + "from": [ 0, -8, 0 ], + "to": [ 0.001, 8, 22.5 ], + "rotation": { "origin": [ 0, -8, 0 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX1", + "from": [ 0, -8, 15.999 ], + "to": [ 22.5, 8, 16 ], + "rotation": { "origin": [ 0, -8, 16 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/gray_mold.json b/src/main/resources/assets/betternether/models/block/gray_mold.json new file mode 100644 index 0000000..d877c4f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/gray_mold.json @@ -0,0 +1,87 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/gray_mold_side", + "side": "betternether:block/gray_mold_side", + "bottom": "betternether:block/gray_mold_bottom" + }, + "elements": [ + { + "__comment": "PlaneY2", + "from": [ 0, 0.5, 0 ], + "to": [ 16, 0.501, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 7, 0, 0 ], + "to": [ 7.001, 16, 16 ], + "rotation": { "origin": [ 7, 0, 0 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#side" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX3", + "from": [ -4, 0, 0 ], + "to": [ 12, 0.001, 16 ], + "rotation": { "origin": [ 12, 0, 0 ], "axis": "z", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#side", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#side", "rotation": 270 } + } + }, + { + "__comment": "PlaneZ7", + "from": [ 2.5, -3, 2.5 ], + "to": [ 18.5, 13, 2.501 ], + "rotation": { "origin": [ 2.5, -3, 2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ7", + "from": [ 0, -0.001, 5 ], + "to": [ 16, 0, 21 ], + "rotation": { "origin": [ 0, 0, 5 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ7", + "from": [ 0, 0, 9 ], + "to": [ 16, 16, 9.001 ], + "rotation": { "origin": [ 0, 0, 9 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ7", + "from": [ 2.5, -1, 13.5 ], + "to": [ 18.5, 15, 13.501 ], + "rotation": { "origin": [ 2.5, -1, 13.5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/hook_mushroom_1.json b/src/main/resources/assets/betternether/models/block/hook_mushroom_1.json new file mode 100644 index 0000000..683bbd3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/hook_mushroom_1.json @@ -0,0 +1,84 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/hook_mushroom", + "texture": "betternether:block/hook_mushroom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 3, 2, 2 ], + "to": [ 7, 13, 6 ], + "faces": { + "down": { "uv": [ 12, 7, 16, 11 ], "texture": "#texture" }, + "up": { "uv": [ 12, 3, 16, 7 ], "texture": "#texture" }, + "north": { "uv": [ 4, 0, 8, 11 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 8, 11 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 4, 11 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 4, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 4, 13, 3 ], + "to": [ 6, 16, 5 ], + "faces": { + "up": { "uv": [ 10, 4, 12, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 4, 12, 7 ], "texture": "#texture" }, + "south": { "uv": [ 10, 5, 12, 8 ], "texture": "#texture" }, + "west": { "uv": [ 10, 6, 12, 9 ], "texture": "#texture" }, + "east": { "uv": [ 10, 8, 12, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 11, 11, 7 ], + "to": [ 13, 16, 9 ], + "faces": { + "up": { "uv": [ 10, 4, 12, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 4, 12, 9 ], "texture": "#texture" }, + "south": { "uv": [ 10, 5, 12, 10 ], "texture": "#texture" }, + "west": { "uv": [ 10, 7, 12, 12 ], "texture": "#texture" }, + "east": { "uv": [ 10, 10, 12, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 12, 11 ], + "to": [ 7, 16, 13 ], + "faces": { + "up": { "uv": [ 10, 4, 12, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 7, 12, 11 ], "texture": "#texture" }, + "south": { "uv": [ 10, 6, 12, 10 ], "texture": "#texture" }, + "west": { "uv": [ 10, 5, 12, 9 ], "texture": "#texture" }, + "east": { "uv": [ 10, 4, 12, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 0, 6 ], + "to": [ 14, 11, 10 ], + "faces": { + "down": { "uv": [ 12, 7, 16, 11 ], "texture": "#texture" }, + "up": { "uv": [ 12, 3, 16, 7 ], "texture": "#texture" }, + "north": { "uv": [ 4, 0, 8, 11 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 8, 11 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 4, 11 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 4, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 1, 10 ], + "to": [ 8, 12, 14 ], + "faces": { + "down": { "uv": [ 12, 7, 16, 11 ], "texture": "#texture" }, + "up": { "uv": [ 12, 3, 16, 7 ], "texture": "#texture" }, + "north": { "uv": [ 4, 0, 8, 11 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 8, 11 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 4, 11 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 4, 11 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/hook_mushroom_2.json b/src/main/resources/assets/betternether/models/block/hook_mushroom_2.json new file mode 100644 index 0000000..68eb22e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/hook_mushroom_2.json @@ -0,0 +1,84 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/hook_mushroom", + "texture": "betternether:block/hook_mushroom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 3, 4, 4 ], + "to": [ 7, 13, 8 ], + "faces": { + "down": { "uv": [ 12, 7, 16, 11 ], "texture": "#texture" }, + "up": { "uv": [ 12, 3, 16, 7 ], "texture": "#texture" }, + "north": { "uv": [ 4, 2, 8, 11 ], "texture": "#texture" }, + "south": { "uv": [ 4, 2, 8, 11 ], "texture": "#texture" }, + "west": { "uv": [ 0, 2, 4, 11 ], "texture": "#texture" }, + "east": { "uv": [ 0, 2, 4, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 4, 13, 5 ], + "to": [ 6, 16, 7 ], + "faces": { + "up": { "uv": [ 10, 4, 12, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 4, 12, 7 ], "texture": "#texture" }, + "south": { "uv": [ 10, 5, 12, 8 ], "texture": "#texture" }, + "west": { "uv": [ 10, 6, 12, 9 ], "texture": "#texture" }, + "east": { "uv": [ 10, 8, 12, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 9, 11, 6 ], + "to": [ 11, 16, 8 ], + "faces": { + "up": { "uv": [ 10, 4, 12, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 4, 12, 9 ], "texture": "#texture" }, + "south": { "uv": [ 10, 5, 12, 10 ], "texture": "#texture" }, + "west": { "uv": [ 10, 7, 12, 12 ], "texture": "#texture" }, + "east": { "uv": [ 10, 10, 12, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 4, 12, 11 ], + "to": [ 6, 16, 13 ], + "faces": { + "up": { "uv": [ 10, 4, 12, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 7, 12, 11 ], "texture": "#texture" }, + "south": { "uv": [ 10, 6, 12, 10 ], "texture": "#texture" }, + "west": { "uv": [ 10, 5, 12, 9 ], "texture": "#texture" }, + "east": { "uv": [ 10, 4, 12, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 8, 1, 5 ], + "to": [ 12, 12, 9 ], + "faces": { + "down": { "uv": [ 12, 7, 16, 11 ], "texture": "#texture" }, + "up": { "uv": [ 12, 3, 16, 7 ], "texture": "#texture" }, + "north": { "uv": [ 4, 0, 8, 11 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 8, 11 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 4, 11 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 4, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 4, 10 ], + "to": [ 7, 12, 14 ], + "faces": { + "down": { "uv": [ 12, 7, 16, 11 ], "texture": "#texture" }, + "up": { "uv": [ 12, 3, 16, 7 ], "texture": "#texture" }, + "north": { "uv": [ 4, 3, 8, 11 ], "texture": "#texture" }, + "south": { "uv": [ 4, 3, 8, 11 ], "texture": "#texture" }, + "west": { "uv": [ 0, 3, 4, 11 ], "texture": "#texture" }, + "east": { "uv": [ 0, 3, 4, 11 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/hook_mushroom_3.json b/src/main/resources/assets/betternether/models/block/hook_mushroom_3.json new file mode 100644 index 0000000..61c4bd6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/hook_mushroom_3.json @@ -0,0 +1,59 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/hook_mushroom", + "texture": "betternether:block/hook_mushroom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 3, 3, 3 ], + "to": [ 7, 13, 7 ], + "faces": { + "down": { "uv": [ 12, 7, 16, 11 ], "texture": "#texture" }, + "up": { "uv": [ 12, 3, 16, 7 ], "texture": "#texture" }, + "north": { "uv": [ 4, 1, 8, 11 ], "texture": "#texture" }, + "south": { "uv": [ 4, 1, 8, 11 ], "texture": "#texture" }, + "west": { "uv": [ 0, 1, 4, 11 ], "texture": "#texture" }, + "east": { "uv": [ 0, 1, 4, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 4, 13, 4 ], + "to": [ 6, 16, 6 ], + "faces": { + "up": { "uv": [ 10, 4, 12, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 4, 12, 7 ], "texture": "#texture" }, + "south": { "uv": [ 10, 5, 12, 8 ], "texture": "#texture" }, + "west": { "uv": [ 10, 6, 12, 9 ], "texture": "#texture" }, + "east": { "uv": [ 10, 8, 12, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 10, 11, 8 ], + "to": [ 12, 16, 10 ], + "faces": { + "up": { "uv": [ 10, 4, 12, 6 ], "texture": "#texture" }, + "north": { "uv": [ 10, 4, 12, 9 ], "texture": "#texture" }, + "south": { "uv": [ 10, 5, 12, 10 ], "texture": "#texture" }, + "west": { "uv": [ 10, 7, 12, 12 ], "texture": "#texture" }, + "east": { "uv": [ 10, 10, 12, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 1, 7 ], + "to": [ 13, 12, 11 ], + "faces": { + "down": { "uv": [ 12, 7, 16, 11 ], "texture": "#texture" }, + "up": { "uv": [ 12, 3, 16, 7 ], "texture": "#texture" }, + "north": { "uv": [ 4, 0, 8, 11 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 8, 11 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 4, 11 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 4, 11 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/hook_mushroom_inventory.json b/src/main/resources/assets/betternether/models/block/hook_mushroom_inventory.json new file mode 100644 index 0000000..5c002e1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/hook_mushroom_inventory.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/hook_mushroom", + "texture": "betternether:block/hook_mushroom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 2.5, 6 ], + "to": [ 10, 13.5, 10 ], + "faces": { + "down": { "uv": [ 12, 7, 16, 11 ], "texture": "#texture" }, + "up": { "uv": [ 12, 3, 16, 7 ], "texture": "#texture" }, + "north": { "uv": [ 4, 0, 8, 11 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 8, 11 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 4, 11 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 4, 11 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/ink_bush_0.json b/src/main/resources/assets/betternether/models/block/ink_bush_0.json new file mode 100644 index 0000000..7b67187 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/ink_bush_0.json @@ -0,0 +1,36 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/ink_bush_bark", + "bark": "betternether:block/ink_bush_bark", + "leaves": "betternether:block/ink_bush_leaves" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 3, 5 ], + "to": [ 11, 9, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#leaves" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#leaves" }, + "north": { "uv": [ 5, 7, 11, 13 ], "texture": "#leaves" }, + "south": { "uv": [ 5, 7, 11, 13 ], "texture": "#leaves" }, + "west": { "uv": [ 5, 7, 11, 13 ], "texture": "#leaves" }, + "east": { "uv": [ 5, 7, 11, 13 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 5, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#bark" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#bark" }, + "north": { "uv": [ 7, 11, 9, 16 ], "texture": "#bark" }, + "south": { "uv": [ 7, 11, 9, 16 ], "texture": "#bark" }, + "west": { "uv": [ 7, 11, 9, 16 ], "texture": "#bark" }, + "east": { "uv": [ 7, 11, 9, 16 ], "texture": "#bark" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/ink_bush_1.json b/src/main/resources/assets/betternether/models/block/ink_bush_1.json new file mode 100644 index 0000000..fa94593 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/ink_bush_1.json @@ -0,0 +1,62 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/ink_bush_bark", + "bark": "betternether:block/ink_bush_bark", + "leaves": "betternether:block/ink_bush_leaves" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 5, 4 ], + "to": [ 12, 13, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#leaves" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#leaves" }, + "north": { "uv": [ 4, 3, 12, 11 ], "texture": "#leaves" }, + "south": { "uv": [ 4, 3, 12, 11 ], "texture": "#leaves" }, + "west": { "uv": [ 4, 3, 12, 11 ], "texture": "#leaves" }, + "east": { "uv": [ 4, 3, 12, 11 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 8, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#bark" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#bark" }, + "north": { "uv": [ 7, 8, 9, 16 ], "texture": "#bark" }, + "south": { "uv": [ 7, 8, 9, 16 ], "texture": "#bark" }, + "west": { "uv": [ 7, 8, 9, 16 ], "texture": "#bark" }, + "east": { "uv": [ 7, 8, 9, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "Box1", + "from": [ 8, 0, 9 ], + "to": [ 9, 2, 10 ], + "faces": { + "down": { "uv": [ 8, 6, 9, 7 ], "texture": "#bark" }, + "up": { "uv": [ 8, 14, 9, 15 ], "texture": "#bark" }, + "north": { "uv": [ 7, 14, 8, 16 ], "texture": "#bark" }, + "south": { "uv": [ 8, 14, 9, 16 ], "texture": "#bark" }, + "west": { "uv": [ 9, 14, 10, 16 ], "texture": "#bark" }, + "east": { "uv": [ 6, 14, 7, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 0, 6 ], + "to": [ 10, 1, 7 ], + "faces": { + "down": { "uv": [ 9, 9, 10, 10 ], "texture": "#bark" }, + "up": { "uv": [ 9, 6, 10, 7 ], "texture": "#bark" }, + "north": { "uv": [ 6, 15, 7, 16 ], "texture": "#bark" }, + "south": { "uv": [ 9, 15, 10, 16 ], "texture": "#bark" }, + "west": { "uv": [ 6, 15, 7, 16 ], "texture": "#bark" }, + "east": { "uv": [ 9, 15, 10, 16 ], "texture": "#bark" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/ink_bush_2.json b/src/main/resources/assets/betternether/models/block/ink_bush_2.json new file mode 100644 index 0000000..0c099f5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/ink_bush_2.json @@ -0,0 +1,140 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/ink_bush_bark", + "bark": "betternether:block/ink_bush_bark", + "leaves": "betternether:block/ink_bush_leaves" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 6, 4 ], + "to": [ 12, 14, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#leaves" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#leaves" }, + "north": { "uv": [ 4, 2, 12, 10 ], "texture": "#leaves" }, + "south": { "uv": [ 4, 2, 12, 10 ], "texture": "#leaves" }, + "west": { "uv": [ 4, 2, 12, 10 ], "texture": "#leaves" }, + "east": { "uv": [ 4, 2, 12, 10 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 9, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#bark" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#bark" }, + "north": { "uv": [ 7, 7, 9, 16 ], "texture": "#bark" }, + "south": { "uv": [ 7, 7, 9, 16 ], "texture": "#bark" }, + "west": { "uv": [ 7, 7, 9, 16 ], "texture": "#bark" }, + "east": { "uv": [ 7, 7, 9, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 8, 2, 8 ], + "faces": { + "down": { "uv": [ 6, 8, 8, 10 ], "texture": "#bark" }, + "up": { "uv": [ 7, 14, 9, 16 ], "texture": "#bark" }, + "north": { "uv": [ 8, 14, 10, 16 ], "texture": "#bark" }, + "south": { "uv": [ 6, 14, 8, 16 ], "texture": "#bark" }, + "west": { "uv": [ 6, 14, 8, 16 ], "texture": "#bark" }, + "east": { "uv": [ 8, 14, 10, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "Box1", + "from": [ 8, 0, 9 ], + "to": [ 9, 2, 10 ], + "faces": { + "down": { "uv": [ 8, 6, 9, 7 ], "texture": "#bark" }, + "up": { "uv": [ 8, 14, 9, 15 ], "texture": "#bark" }, + "north": { "uv": [ 7, 14, 8, 16 ], "texture": "#bark" }, + "south": { "uv": [ 8, 14, 9, 16 ], "texture": "#bark" }, + "west": { "uv": [ 9, 14, 10, 16 ], "texture": "#bark" }, + "east": { "uv": [ 6, 14, 7, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 0, 6 ], + "to": [ 10, 1, 7 ], + "faces": { + "down": { "uv": [ 9, 9, 10, 10 ], "texture": "#bark" }, + "up": { "uv": [ 9, 6, 10, 7 ], "texture": "#bark" }, + "north": { "uv": [ 6, 15, 7, 16 ], "texture": "#bark" }, + "south": { "uv": [ 9, 15, 10, 16 ], "texture": "#bark" }, + "west": { "uv": [ 6, 15, 7, 16 ], "texture": "#bark" }, + "east": { "uv": [ 9, 15, 10, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "Box1", + "from": [ 7.5, 4, 9 ], + "to": [ 8.5, 5, 11 ], + "faces": { + "down": { "uv": [ 7.5, 5, 8.5, 7 ], "texture": "#bark" }, + "up": { "uv": [ 7.5, 9, 8.5, 11 ], "texture": "#bark" }, + "north": { "uv": [ 7.5, 11, 8.5, 12 ], "texture": "#bark" }, + "south": { "uv": [ 7.5, 11, 8.5, 12 ], "texture": "#bark" }, + "west": { "uv": [ 9, 11, 11, 12 ], "texture": "#bark" }, + "east": { "uv": [ 5, 11, 7, 12 ], "texture": "#bark" } + } + }, + { + "__comment": "Box1", + "from": [ 7.5, 5, 10 ], + "to": [ 8.5, 8, 11 ], + "faces": { + "down": { "uv": [ 7, 5, 8, 6 ], "texture": "#bark" }, + "up": { "uv": [ 7, 10, 8, 11 ], "texture": "#bark" }, + "north": { "uv": [ 7, 8, 8, 11 ], "texture": "#bark" }, + "south": { "uv": [ 8, 8, 9, 11 ], "texture": "#bark" }, + "west": { "uv": [ 10, 8, 11, 11 ], "texture": "#bark" }, + "east": { "uv": [ 5, 8, 6, 11 ], "texture": "#bark" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 8, 6 ], + "to": [ 10, 12, 13 ], + "faces": { + "down": { "uv": [ 5, 3, 10, 10 ], "texture": "#leaves" }, + "up": { "uv": [ 5, 6, 10, 13 ], "texture": "#leaves" }, + "north": { "uv": [ 6, 4, 11, 8 ], "texture": "#leaves" }, + "south": { "uv": [ 5, 4, 10, 8 ], "texture": "#leaves" }, + "west": { "uv": [ 6, 4, 13, 8 ], "texture": "#leaves" }, + "east": { "uv": [ 3, 4, 10, 8 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 7, 3 ], + "to": [ 7, 11, 6.5 ], + "faces": { + "down": { "uv": [ 3, 9.5, 7, 13 ], "texture": "#leaves" }, + "up": { "uv": [ 3, 3, 7, 6.5 ], "texture": "#leaves" }, + "north": { "uv": [ 9, 5, 13, 9 ], "texture": "#leaves" }, + "south": { "uv": [ 3, 5, 7, 9 ], "texture": "#leaves" }, + "west": { "uv": [ 3, 5, 6.5, 9 ], "texture": "#leaves" }, + "east": { "uv": [ 9.5, 5, 13, 9 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 8, 6 ], + "to": [ 13, 12, 11 ], + "faces": { + "down": { "uv": [ 9, 5, 13, 10 ], "texture": "#leaves" }, + "up": { "uv": [ 9, 6, 13, 11 ], "texture": "#leaves" }, + "north": { "uv": [ 3, 4, 7, 8 ], "texture": "#leaves" }, + "south": { "uv": [ 9, 4, 13, 8 ], "texture": "#leaves" }, + "west": { "uv": [ 6, 4, 11, 8 ], "texture": "#leaves" }, + "east": { "uv": [ 5, 4, 10, 8 ], "texture": "#leaves" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/ink_bush_3.json b/src/main/resources/assets/betternether/models/block/ink_bush_3.json new file mode 100644 index 0000000..d86ef7d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/ink_bush_3.json @@ -0,0 +1,422 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/ink_bush_bark", + "bark": "betternether:block/ink_bush_bark", + "leaves": "betternether:block/ink_bush_leaves" + }, + "elements": [ + { + "__comment": "trunk", + "from": [ 5, 0, 6 ], + "to": [ 7, 10, 8 ], + "faces": { + "down": { "uv": [ 5, 8, 7, 10 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 5, 6, 7, 8 ], "texture": "#bark" }, + "north": { "uv": [ 9, 6, 11, 16 ], "texture": "#bark" }, + "south": { "uv": [ 5, 6, 7, 16 ], "texture": "#bark" }, + "west": { "uv": [ 6, 6, 8, 16 ], "texture": "#bark" }, + "east": { "uv": [ 8, 6, 10, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk1", + "from": [ 8, 0, 9 ], + "to": [ 10, 7, 11 ], + "faces": { + "down": { "uv": [ 8, 5, 10, 7 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 8, 9, 10, 11 ], "texture": "#bark" }, + "north": { "uv": [ 6, 9, 8, 16 ], "texture": "#bark" }, + "south": { "uv": [ 8, 9, 10, 16 ], "texture": "#bark" }, + "west": { "uv": [ 9, 9, 11, 16 ], "texture": "#bark" }, + "east": { "uv": [ 5, 9, 7, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk2", + "from": [ 5, 9, 1 ], + "to": [ 6, 10, 6 ], + "faces": { + "down": { "uv": [ 5, 10, 6, 15 ], "texture": "#bark" }, + "up": { "uv": [ 5, 1, 6, 6 ], "texture": "#bark" }, + "north": { "uv": [ 10, 6, 11, 7 ], "texture": "#bark" }, + "west": { "uv": [ 1, 6, 6, 7 ], "texture": "#bark" }, + "east": { "uv": [ 10, 6, 15, 7 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk3", + "from": [ 9, 5, 5 ], + "to": [ 10, 6, 9 ], + "faces": { + "down": { "uv": [ 9, 7, 10, 11 ], "texture": "#bark" }, + "up": { "uv": [ 9, 5, 10, 9 ], "texture": "#bark" }, + "north": { "uv": [ 6, 10, 7, 11 ], "texture": "#bark" }, + "west": { "uv": [ 5, 10, 9, 11 ], "texture": "#bark" }, + "east": { "uv": [ 7, 10, 11, 11 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk4", + "from": [ 10, 6, 10 ], + "to": [ 15, 7, 11 ], + "faces": { + "down": { "uv": [ 10, 5, 15, 6 ], "texture": "#bark" }, + "up": { "uv": [ 10, 10, 15, 11 ], "texture": "#bark" }, + "north": { "uv": [ 1, 9, 6, 10 ], "texture": "#bark" }, + "south": { "uv": [ 10, 9, 15, 10 ], "texture": "#bark" }, + "east": { "uv": [ 5, 9, 6, 10 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk5", + "from": [ 8, 6, 11 ], + "to": [ 9, 7, 14 ], + "faces": { + "down": { "uv": [ 8, 2, 9, 5 ], "texture": "#bark" }, + "up": { "uv": [ 8, 11, 9, 14 ], "texture": "#bark" }, + "west": { "uv": [ 11, 9, 14, 10 ], "texture": "#bark" }, + "east": { "uv": [ 2, 9, 5, 10 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk6", + "from": [ 4, 4, 10 ], + "to": [ 8, 5, 11 ], + "faces": { + "down": { "uv": [ 4, 5, 8, 6 ], "texture": "#bark" }, + "up": { "uv": [ 4, 10, 8, 11 ], "texture": "#bark" }, + "north": { "uv": [ 8, 11, 12, 12 ], "texture": "#bark" }, + "south": { "uv": [ 4, 11, 8, 12 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk7", + "from": [ 9, 6, 5 ], + "to": [ 10, 14, 6 ], + "faces": { + "up": { "uv": [ 9, 5, 10, 6 ], "texture": "#bark" }, + "north": { "uv": [ 6, 2, 7, 10 ], "texture": "#bark" }, + "south": { "uv": [ 9, 2, 10, 10 ], "texture": "#bark" }, + "west": { "uv": [ 5, 2, 6, 10 ], "texture": "#bark" }, + "east": { "uv": [ 10, 2, 11, 10 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk8", + "from": [ 8, 6, 14 ], + "to": [ 9, 12, 15 ], + "faces": { + "down": { "uv": [ 8, 1, 9, 2 ], "texture": "#bark" }, + "up": { "uv": [ 8, 14, 9, 15 ], "texture": "#bark" }, + "north": { "uv": [ 7, 4, 8, 10 ], "texture": "#bark" }, + "south": { "uv": [ 8, 4, 9, 10 ], "texture": "#bark" }, + "west": { "uv": [ 14, 4, 15, 10 ], "texture": "#bark" }, + "east": { "uv": [ 1, 4, 2, 10 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk9", + "from": [ 3, 4, 10 ], + "to": [ 4, 10, 11 ], + "faces": { + "down": { "uv": [ 3, 5, 4, 6 ], "texture": "#bark" }, + "up": { "uv": [ 3, 10, 4, 11 ], "texture": "#bark" }, + "north": { "uv": [ 12, 6, 13, 12 ], "texture": "#bark" }, + "south": { "uv": [ 3, 6, 4, 12 ], "texture": "#bark" }, + "west": { "uv": [ 10, 6, 11, 12 ], "texture": "#bark" }, + "east": { "uv": [ 5, 6, 6, 12 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk10", + "from": [ 14, 7, 10 ], + "to": [ 15, 13, 11 ], + "faces": { + "up": { "uv": [ 14, 10, 15, 11 ], "texture": "#bark" }, + "north": { "uv": [ 1, 3, 2, 9 ], "texture": "#bark" }, + "south": { "uv": [ 14, 3, 15, 9 ], "texture": "#bark" }, + "west": { "uv": [ 10, 3, 11, 9 ], "texture": "#bark" }, + "east": { "uv": [ 5, 3, 6, 9 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk11", + "from": [ 2, 7, 7 ], + "to": [ 5, 8, 8 ], + "faces": { + "down": { "uv": [ 2, 8, 5, 9 ], "texture": "#bark" }, + "up": { "uv": [ 2, 7, 5, 8 ], "texture": "#bark" }, + "north": { "uv": [ 11, 8, 14, 9 ], "texture": "#bark" }, + "south": { "uv": [ 2, 8, 5, 9 ], "texture": "#bark" }, + "west": { "uv": [ 7, 8, 8, 9 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk12", + "from": [ 7, 8, 7 ], + "to": [ 10, 9, 8 ], + "faces": { + "down": { "uv": [ 7, 8, 10, 9 ], "texture": "#bark" }, + "up": { "uv": [ 7, 7, 10, 8 ], "texture": "#bark" }, + "north": { "uv": [ 6, 7, 9, 8 ], "texture": "#bark" }, + "south": { "uv": [ 7, 7, 10, 8 ], "texture": "#bark" }, + "east": { "uv": [ 8, 7, 9, 8 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk13", + "from": [ 6, 6, 8 ], + "to": [ 7, 7, 13 ], + "faces": { + "down": { "uv": [ 6, 3, 7, 8 ], "texture": "#bark" }, + "up": { "uv": [ 6, 8, 7, 13 ], "texture": "#bark" }, + "south": { "uv": [ 6, 9, 7, 10 ], "texture": "#bark" }, + "west": { "uv": [ 8, 9, 13, 10 ], "texture": "#bark" }, + "east": { "uv": [ 3, 9, 8, 10 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk14", + "from": [ 6, 7, 12 ], + "to": [ 7, 13, 13 ], + "faces": { + "up": { "uv": [ 6, 12, 7, 13 ], "texture": "#bark" }, + "north": { "uv": [ 9, 3, 10, 9 ], "texture": "#bark" }, + "south": { "uv": [ 6, 3, 7, 9 ], "texture": "#bark" }, + "west": { "uv": [ 12, 3, 13, 9 ], "texture": "#bark" }, + "east": { "uv": [ 3, 3, 4, 9 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk15", + "from": [ 2, 8, 7 ], + "to": [ 3, 14, 8 ], + "faces": { + "up": { "uv": [ 2, 7, 3, 8 ], "texture": "#bark" }, + "north": { "uv": [ 13, 2, 14, 8 ], "texture": "#bark" }, + "south": { "uv": [ 2, 2, 3, 8 ], "texture": "#bark" }, + "west": { "uv": [ 7, 2, 8, 8 ], "texture": "#bark" }, + "east": { "uv": [ 8, 2, 9, 8 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk16", + "from": [ 5, 10, 1 ], + "to": [ 6, 13, 2 ], + "faces": { + "up": { "uv": [ 5, 1, 6, 2 ], "texture": "#bark" }, + "north": { "uv": [ 10, 3, 11, 6 ], "texture": "#bark" }, + "south": { "uv": [ 5, 3, 6, 6 ], "texture": "#bark" }, + "west": { "uv": [ 1, 3, 2, 6 ], "texture": "#bark" }, + "east": { "uv": [ 14, 3, 15, 6 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk17", + "from": [ 9, 9, 7 ], + "to": [ 10, 12, 8 ], + "faces": { + "up": { "uv": [ 9, 7, 10, 8 ], "texture": "#bark" }, + "north": { "uv": [ 6, 4, 7, 7 ], "texture": "#bark" }, + "south": { "uv": [ 9, 4, 10, 7 ], "texture": "#bark" }, + "west": { "uv": [ 7, 4, 8, 7 ], "texture": "#bark" }, + "east": { "uv": [ 8, 4, 9, 7 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk18", + "from": [ 4, 0, 5 ], + "to": [ 6, 2, 7 ], + "faces": { + "down": { "uv": [ 4, 9, 6, 11 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 4, 5, 6, 7 ], "texture": "#bark" }, + "north": { "uv": [ 10, 14, 12, 16 ], "texture": "#bark" }, + "south": { "uv": [ 4, 14, 6, 16 ], "texture": "#bark" }, + "west": { "uv": [ 5, 14, 7, 16 ], "texture": "#bark" }, + "east": { "uv": [ 9, 14, 11, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk19", + "from": [ 6, 0, 7 ], + "to": [ 8, 4, 9 ], + "faces": { + "down": { "uv": [ 6, 7, 8, 9 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 6, 7, 8, 9 ], "texture": "#bark" }, + "north": { "uv": [ 8, 12, 10, 16 ], "texture": "#bark" }, + "south": { "uv": [ 6, 12, 8, 16 ], "texture": "#bark" }, + "west": { "uv": [ 7, 12, 9, 16 ], "texture": "#bark" }, + "east": { "uv": [ 7, 12, 9, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk20", + "from": [ 9, 0, 8 ], + "to": [ 11, 3, 10 ], + "faces": { + "down": { "uv": [ 9, 6, 11, 8 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 9, 8, 11, 10 ], "texture": "#bark" }, + "north": { "uv": [ 5, 13, 7, 16 ], "texture": "#bark" }, + "south": { "uv": [ 9, 13, 11, 16 ], "texture": "#bark" }, + "west": { "uv": [ 8, 13, 10, 16 ], "texture": "#bark" }, + "east": { "uv": [ 6, 13, 8, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk21", + "from": [ 7, 0, 10 ], + "to": [ 9, 1, 12 ], + "faces": { + "down": { "uv": [ 7, 4, 9, 6 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 7, 10, 9, 12 ], "texture": "#bark" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#bark" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#bark" }, + "west": { "uv": [ 10, 15, 12, 16 ], "texture": "#bark" }, + "east": { "uv": [ 4, 15, 6, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk22", + "from": [ 5, 0, 8 ], + "to": [ 6, 1, 9 ], + "faces": { + "down": { "uv": [ 5, 7, 6, 8 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 5, 8, 6, 9 ], "texture": "#bark" }, + "south": { "uv": [ 5, 15, 6, 16 ], "texture": "#bark" }, + "west": { "uv": [ 8, 15, 9, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk23", + "from": [ 7, 0, 5 ], + "to": [ 8, 1, 6 ], + "faces": { + "down": { "uv": [ 7, 10, 8, 11 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 7, 5, 8, 6 ], "texture": "#bark" }, + "north": { "uv": [ 8, 15, 9, 16 ], "texture": "#bark" }, + "south": { "uv": [ 7, 15, 8, 16 ], "texture": "#bark" }, + "west": { "uv": [ 5, 15, 6, 16 ], "texture": "#bark" }, + "east": { "uv": [ 10, 15, 11, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk24", + "from": [ 10, 0, 11 ], + "to": [ 11, 1, 12 ], + "faces": { + "down": { "uv": [ 10, 4, 11, 5 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 10, 11, 11, 12 ], "texture": "#bark" }, + "north": { "uv": [ 5, 15, 6, 16 ], "texture": "#bark" }, + "south": { "uv": [ 10, 15, 11, 16 ], "texture": "#bark" }, + "west": { "uv": [ 11, 15, 12, 16 ], "texture": "#bark" }, + "east": { "uv": [ 4, 15, 5, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "Box27", + "from": [ 7, 10, 10 ], + "to": [ 13, 16, 16 ], + "faces": { + "down": { "uv": [ 7, 0, 13, 6 ], "texture": "#leaves" }, + "up": { "uv": [ 7, 10, 13, 16 ], "texture": "#leaves" }, + "north": { "uv": [ 3, 0, 9, 6 ], "texture": "#leaves" }, + "south": { "uv": [ 7, 0, 13, 6 ], "texture": "#leaves" }, + "west": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaves" }, + "east": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 10, 9, 7 ], + "to": [ 16, 15, 13 ], + "faces": { + "down": { "uv": [ 10, 3, 16, 9 ], "texture": "#leaves" }, + "up": { "uv": [ 10, 7, 16, 13 ], "texture": "#leaves" }, + "north": { "uv": [ 0, 1, 6, 7 ], "texture": "#leaves" }, + "south": { "uv": [ 10, 1, 16, 7 ], "texture": "#leaves" }, + "west": { "uv": [ 7, 1, 13, 7 ], "texture": "#leaves" }, + "east": { "uv": [ 3, 1, 9, 7 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 9, 12, 4 ], + "to": [ 13, 16, 8 ], + "faces": { + "down": { "uv": [ 9, 8, 13, 12 ], "texture": "#leaves" }, + "up": { "uv": [ 9, 4, 13, 8 ], "texture": "#leaves" }, + "north": { "uv": [ 3, 0, 7, 4 ], "texture": "#leaves" }, + "south": { "uv": [ 9, 0, 13, 4 ], "texture": "#leaves" }, + "west": { "uv": [ 4, 0, 8, 4 ], "texture": "#leaves" }, + "east": { "uv": [ 8, 0, 12, 4 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 4, 11, 0 ], + "to": [ 8, 15, 4 ], + "faces": { + "down": { "uv": [ 4, 12, 8, 16 ], "texture": "#leaves" }, + "up": { "uv": [ 4, 0, 8, 4 ], "texture": "#leaves" }, + "north": { "uv": [ 8, 1, 12, 5 ], "texture": "#leaves" }, + "south": { "uv": [ 4, 1, 8, 5 ], "texture": "#leaves" }, + "west": { "uv": [ 0, 1, 4, 5 ], "texture": "#leaves" }, + "east": { "uv": [ 12, 1, 16, 5 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 0, 10, 4 ], + "to": [ 6, 16, 10 ], + "faces": { + "down": { "uv": [ 0, 6, 6, 12 ], "texture": "#leaves" }, + "up": { "uv": [ 0, 4, 6, 10 ], "texture": "#leaves" }, + "north": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaves" }, + "south": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaves" }, + "west": { "uv": [ 4, 0, 10, 6 ], "texture": "#leaves" }, + "east": { "uv": [ 6, 0, 12, 6 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 1, 9, 8.5 ], + "to": [ 5, 13, 12.5 ], + "faces": { + "down": { "uv": [ 1, 3.5, 5, 7.5 ], "texture": "#leaves" }, + "up": { "uv": [ 1, 8.5, 5, 12.5 ], "texture": "#leaves" }, + "north": { "uv": [ 11, 3, 15, 7 ], "texture": "#leaves" }, + "south": { "uv": [ 1, 3, 5, 7 ], "texture": "#leaves" }, + "west": { "uv": [ 8.5, 3, 12.5, 7 ], "texture": "#leaves" }, + "east": { "uv": [ 3.5, 3, 7.5, 7 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 5, 10, 9 ], + "to": [ 10, 15, 14 ], + "faces": { + "down": { "uv": [ 5, 2, 10, 7 ], "texture": "#leaves" }, + "up": { "uv": [ 5, 9, 10, 14 ], "texture": "#leaves" }, + "north": { "uv": [ 6, 1, 11, 6 ], "texture": "#leaves" }, + "south": { "uv": [ 5, 1, 10, 6 ], "texture": "#leaves" }, + "west": { "uv": [ 9, 1, 14, 6 ], "texture": "#leaves" }, + "east": { "uv": [ 2, 1, 7, 6 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 6, 9, 3 ], + "to": [ 11, 14, 8 ], + "faces": { + "down": { "uv": [ 6, 8, 11, 13 ], "texture": "#leaves" }, + "up": { "uv": [ 6, 3, 11, 8 ], "texture": "#leaves" }, + "north": { "uv": [ 5, 2, 10, 7 ], "texture": "#leaves" }, + "south": { "uv": [ 6, 2, 11, 7 ], "texture": "#leaves" }, + "west": { "uv": [ 3, 2, 8, 7 ], "texture": "#leaves" }, + "east": { "uv": [ 8, 2, 13, 7 ], "texture": "#leaves" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/ink_bush_seed.json b/src/main/resources/assets/betternether/models/block/ink_bush_seed.json new file mode 100644 index 0000000..4cd410b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/ink_bush_seed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/ink_bush_seed" + } +} diff --git a/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_bottom.json b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_bottom.json new file mode 100644 index 0000000..1cdad5c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_bottom.json @@ -0,0 +1,80 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/jellyfish_mushroom_bottom", + "texture": "betternether:block/jellyfish_mushroom_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 7, 7 ], + "to": [ 9, 16, 9 ], + "faces": { + "north": { "uv": [ 7, 0, 9, 9 ], "texture": "#texture" }, + "south": { "uv": [ 7, 0, 9, 9 ], "texture": "#texture" }, + "west": { "uv": [ 7, 0, 9, 9 ], "texture": "#texture" }, + "east": { "uv": [ 7, 0, 9, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 4, 10 ], + "faces": { + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#texture" }, + "north": { "uv": [ 6, 12, 10, 16 ], "texture": "#texture" }, + "south": { "uv": [ 6, 12, 10, 16 ], "texture": "#texture" }, + "west": { "uv": [ 6, 12, 10, 16 ], "texture": "#texture" }, + "east": { "uv": [ 6, 12, 10, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 4, 6 ], + "to": [ 9, 7, 10 ], + "faces": { + "up": { "uv": [ 7, 6, 9, 10 ], "texture": "#texture" }, + "north": { "uv": [ 7, 9, 9, 12 ], "texture": "#texture" }, + "south": { "uv": [ 7, 9, 9, 12 ], "texture": "#texture" }, + "west": { "uv": [ 6, 9, 10, 12 ], "texture": "#texture" }, + "east": { "uv": [ 6, 9, 10, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 4, 7 ], + "to": [ 10, 7, 9 ], + "faces": { + "up": { "uv": [ 6, 7, 10, 9 ], "texture": "#texture" }, + "north": { "uv": [ 6, 9, 10, 12 ], "texture": "#texture" }, + "south": { "uv": [ 6, 9, 10, 12 ], "texture": "#texture" }, + "west": { "uv": [ 7, 9, 9, 12 ], "texture": "#texture" }, + "east": { "uv": [ 7, 9, 9, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 0, 5 ], + "to": [ 9, 3, 11 ], + "faces": { + "up": { "uv": [ 7, 5, 9, 11 ], "texture": "#texture" }, + "north": { "uv": [ 7, 13, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 13, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 13, 11, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 13, 11, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 0, 7 ], + "to": [ 11, 3, 9 ], + "faces": { + "up": { "uv": [ 5, 7, 11, 9 ], "texture": "#texture" }, + "north": { "uv": [ 5, 13, 11, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 11, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 13, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 13, 9, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_bottom_poor.json b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_bottom_poor.json new file mode 100644 index 0000000..c5ac2e3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_bottom_poor.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/jellyfish_mushroom_bottom", + "textures": { + "particle": "betternether:block/jellyfish_mushroom_bottom_poor", + "texture": "betternether:block/jellyfish_mushroom_bottom_poor" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_bottom_sepia.json b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_bottom_sepia.json new file mode 100644 index 0000000..5d51c0c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_bottom_sepia.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/jellyfish_mushroom_bottom", + "textures": { + "particle": "betternether:block/jellyfish_mushroom_bottom_sepia", + "texture": "betternether:block/jellyfish_mushroom_bottom_sepia" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_sapling.json b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_sapling.json new file mode 100644 index 0000000..4101bc2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_sapling.json @@ -0,0 +1,86 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/jellyfish_mushroom_sapling", + "texture": "betternether:block/jellyfish_mushroom_sapling" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 4, 9 ], + "faces": { + "up": { "uv": [ 7, 12, 9, 14 ], "texture": "#texture" }, + "north": { "uv": [ 7, 12, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 12, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 12, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 12, 9, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 2, 6 ], + "to": [ 6, 4, 10 ], + "faces": { + "down": { "uv": [ 5, 3, 6, 7 ], "texture": "#texture" }, + "up": { "uv": [ 5, 3, 6, 7 ], "texture": "#texture" }, + "north": { "uv": [ 10, 10, 11, 12 ], "texture": "#texture" }, + "south": { "uv": [ 5, 10, 6, 12 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 12 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 6, 4, 6 ], + "to": [ 10, 5, 10 ], + "faces": { + "down": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 6, 2, 10 ], + "to": [ 10, 4, 11 ], + "faces": { + "down": { "uv": [ 6, 5, 10, 6 ], "texture": "#texture" }, + "up": { "uv": [ 6, 7, 10, 8 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 12 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 12 ], "texture": "#texture" }, + "west": { "uv": [ 10, 10, 11, 12 ], "texture": "#texture" }, + "east": { "uv": [ 5, 10, 6, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 6, 2, 5 ], + "to": [ 10, 4, 6 ], + "faces": { + "down": { "uv": [ 6, 5, 10, 6 ], "texture": "#texture" }, + "up": { "uv": [ 6, 7, 10, 8 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 12 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 12 ], "texture": "#texture" }, + "west": { "uv": [ 10, 10, 11, 12 ], "texture": "#texture" }, + "east": { "uv": [ 5, 10, 6, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 10, 2, 6 ], + "to": [ 11, 4, 10 ], + "faces": { + "down": { "uv": [ 5, 3, 6, 7 ], "texture": "#texture" }, + "up": { "uv": [ 5, 3, 6, 7 ], "texture": "#texture" }, + "north": { "uv": [ 10, 10, 11, 12 ], "texture": "#texture" }, + "south": { "uv": [ 5, 10, 6, 12 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 12 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 12 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_small.json b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_small.json new file mode 100644 index 0000000..fac9e3c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_small.json @@ -0,0 +1,142 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/jellyfish_mushroom_top", + "texture": "betternether:block/jellyfish_mushroom_top", + "side": "betternether:block/jellyfish_mushroom_side", + "stem": "betternether:block/jellyfish_mushroom_stem", + "bottom": "betternether:block/jellyfish_mushroom_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 13, 6 ], + "to": [ 10, 14, 10 ], + "faces": { + "down": { "uv": [ 6, 0, 10, 4 ], "texture": "#stem", "cullface": "down" }, + "up": { "uv": [ 6, 0, 10, 4 ], "texture": "#stem" }, + "north": { "uv": [ 6, 2, 10, 3 ], "texture": "#stem" }, + "south": { "uv": [ 6, 2, 10, 3 ], "texture": "#stem" }, + "west": { "uv": [ 6, 2, 10, 3 ], "texture": "#stem" }, + "east": { "uv": [ 6, 2, 10, 3 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 13, 9 ], + "faces": { + "north": { "uv": [ 7, 3, 9, 16 ], "texture": "#stem" }, + "south": { "uv": [ 7, 3, 9, 16 ], "texture": "#stem" }, + "west": { "uv": [ 7, 3, 9, 16 ], "texture": "#stem" }, + "east": { "uv": [ 7, 3, 9, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box11", + "from": [ 7, 0, 6 ], + "to": [ 9, 4, 10 ], + "faces": { + "up": { "uv": [ 7, 6, 9, 10 ], "texture": "#bottom" }, + "north": { "uv": [ 7, 12, 9, 16 ], "texture": "#bottom" }, + "south": { "uv": [ 7, 12, 9, 16 ], "texture": "#bottom" }, + "west": { "uv": [ 6, 12, 10, 16 ], "texture": "#bottom" }, + "east": { "uv": [ 6, 12, 10, 16 ], "texture": "#bottom" } + } + }, + { + "__comment": "Box11", + "from": [ 6, 0, 7 ], + "to": [ 10, 4, 9 ], + "faces": { + "up": { "uv": [ 6, 7, 10, 9 ], "texture": "#bottom" }, + "north": { "uv": [ 6, 12, 10, 16 ], "texture": "#bottom" }, + "south": { "uv": [ 6, 12, 10, 16 ], "texture": "#bottom" }, + "west": { "uv": [ 7, 12, 9, 16 ], "texture": "#bottom" }, + "east": { "uv": [ 7, 12, 9, 16 ], "texture": "#bottom" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 14, 5 ], + "to": [ 11, 16, 11 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 5, 10, 11, 12 ], "texture": "#texture" }, + "south": { "uv": [ 5, 10, 11, 12 ], "texture": "#texture" }, + "west": { "uv": [ 5, 10, 11, 12 ], "texture": "#texture" }, + "east": { "uv": [ 5, 10, 11, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 10, 3 ], + "to": [ 11, 14, 5 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 5, 11, 3 ], "texture": "#side" }, + "up": { "uv": [ 5, 3, 11, 5 ], "texture": "#texture" }, + "north": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" }, + "south": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" }, + "west": { "uv": [ 3, 0, 5, 4 ], "texture": "#side" }, + "east": { "uv": [ 11, 0, 13, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 10, 11 ], + "to": [ 11, 14, 13 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 3, 11, 5 ], "texture": "#side" }, + "up": { "uv": [ 5, 11, 11, 13 ], "texture": "#texture" }, + "north": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" }, + "south": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" }, + "west": { "uv": [ 11, 0, 13, 4 ], "texture": "#side" }, + "east": { "uv": [ 3, 0, 5, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 11, 10, 5 ], + "to": [ 13, 14, 11 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 3, 11, 5 ], "texture": "#side", "rotation": 90 }, + "up": { "uv": [ 11, 5, 13, 11 ], "texture": "#texture" }, + "north": { "uv": [ 3, 0, 5, 4 ], "texture": "#side" }, + "south": { "uv": [ 11, 0, 13, 4 ], "texture": "#side" }, + "west": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" }, + "east": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 3, 10, 5 ], + "to": [ 5, 14, 11 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 5, 11, 3 ], "texture": "#side", "rotation": 90 }, + "up": { "uv": [ 3, 5, 5, 11 ], "texture": "#texture" }, + "north": { "uv": [ 11, 0, 13, 4 ], "texture": "#side" }, + "south": { "uv": [ 3, 0, 5, 4 ], "texture": "#side" }, + "west": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" }, + "east": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box8", + "from": [ 5, 7, 5 ], + "to": [ 11, 10, 11 ], + "shade": false, + "faces": { + "north": { "uv": [ 5, 8, 11, 11 ], "texture": "#side" }, + "south": { "uv": [ 10, 8, 16, 11 ], "texture": "#side" }, + "west": { "uv": [ 10, 8, 16, 11 ], "texture": "#side" }, + "east": { "uv": [ 8, 8, 14, 11 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_small_poor.json b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_small_poor.json new file mode 100644 index 0000000..7a29ca8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_small_poor.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/jellyfish_mushroom_small", + "textures": { + "particle": "betternether:block/jellyfish_mushroom_top_poor", + "texture": "betternether:block/jellyfish_mushroom_top_poor", + "side": "betternether:block/jellyfish_mushroom_side_poor", + "bottom": "betternether:block/jellyfish_mushroom_bottom_poor" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_small_sepia.json b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_small_sepia.json new file mode 100644 index 0000000..dc035ad --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_small_sepia.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/jellyfish_mushroom_small", + "textures": { + "particle": "betternether:block/jellyfish_mushroom_top_sepia", + "texture": "betternether:block/jellyfish_mushroom_top_sepia", + "side": "betternether:block/jellyfish_mushroom_side_sepia", + "bottom": "betternether:block/jellyfish_mushroom_bottom_sepia" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_top.json b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_top.json new file mode 100644 index 0000000..e7c6ea6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_top.json @@ -0,0 +1,141 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/jellyfish_mushroom_top", + "texture": "betternether:block/jellyfish_mushroom_top", + "side": "betternether:block/jellyfish_mushroom_side", + "stem": "betternether:block/jellyfish_mushroom_stem" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 11, 6 ], + "to": [ 10, 12, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#stem", "cullface": "down" }, + "north": { "uv": [ 6, 4, 10, 5 ], "texture": "#stem" }, + "south": { "uv": [ 6, 4, 10, 5 ], "texture": "#stem" }, + "west": { "uv": [ 6, 4, 10, 5 ], "texture": "#stem" }, + "east": { "uv": [ 6, 4, 10, 5 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 12, 5 ], + "to": [ 11, 14, 11 ], + "faces": { + "down": { "uv": [ 5, 0, 11, 6 ], "texture": "#stem" }, + "up": { "uv": [ 5, 0, 11, 6 ], "texture": "#stem" }, + "north": { "uv": [ 5, 2, 11, 4 ], "texture": "#stem" }, + "south": { "uv": [ 5, 2, 11, 4 ], "texture": "#stem" }, + "west": { "uv": [ 5, 2, 11, 4 ], "texture": "#stem" }, + "east": { "uv": [ 5, 2, 11, 4 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 14, 3 ], + "to": [ 13, 16, 13 ], + "shade": false, + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 3, 12, 13, 14 ], "texture": "#texture" }, + "south": { "uv": [ 3, 12, 13, 14 ], "texture": "#texture" }, + "west": { "uv": [ 3, 12, 13, 14 ], "texture": "#texture" }, + "east": { "uv": [ 3, 12, 13, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 3, 8, 1 ], + "to": [ 13, 14, 3 ], + "shade": false, + "faces": { + "down": { "uv": [ 3, 6, 13, 8 ], "texture": "#side" }, + "up": { "uv": [ 3, 1, 13, 3 ], "texture": "#texture" }, + "north": { "uv": [ 3, 0, 13, 6 ], "texture": "#side" }, + "south": { "uv": [ 3, 0, 13, 6 ], "texture": "#side" }, + "west": { "uv": [ 13, 0, 15, 6 ], "texture": "#side" }, + "east": { "uv": [ 1, 0, 3, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 3, 8, 13 ], + "to": [ 13, 14, 15 ], + "shade": false, + "faces": { + "down": { "uv": [ 3, 6, 13, 8 ], "texture": "#side" }, + "up": { "uv": [ 3, 13, 13, 15 ], "texture": "#texture" }, + "north": { "uv": [ 3, 0, 13, 6 ], "texture": "#side" }, + "south": { "uv": [ 3, 0, 13, 6 ], "texture": "#side" }, + "west": { "uv": [ 1, 0, 3, 6 ], "texture": "#side" }, + "east": { "uv": [ 13, 0, 15, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 13, 8, 3 ], + "to": [ 15, 14, 13 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 6, 16, 8 ], "texture": "#side", "rotation": 90 }, + "up": { "uv": [ 13, 3, 15, 13 ], "texture": "#texture" }, + "north": { "uv": [ 13, 0, 15, 6 ], "texture": "#side" }, + "south": { "uv": [ 13, 0, 15, 6 ], "texture": "#side" }, + "west": { "uv": [ 3, 0, 13, 6 ], "texture": "#side" }, + "east": { "uv": [ 3, 0, 13, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 1, 8, 3 ], + "to": [ 3, 14, 13 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 6, 16, 8 ], "texture": "#side", "rotation": 90 }, + "up": { "uv": [ 1, 3, 3, 13 ], "texture": "#texture" }, + "north": { "uv": [ 1, 0, 3, 6 ], "texture": "#side" }, + "south": { "uv": [ 13, 0, 15, 6 ], "texture": "#side" }, + "west": { "uv": [ 3, 0, 13, 6 ], "texture": "#side" }, + "east": { "uv": [ 3, 0, 13, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box8", + "from": [ 3, 3, 3 ], + "to": [ 13, 8, 13 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 8, 10, 13 ], "texture": "#side" }, + "south": { "uv": [ 3, 8, 13, 13 ], "texture": "#side" }, + "west": { "uv": [ 6, 8, 16, 13 ], "texture": "#side" }, + "east": { "uv": [ 2, 8, 12, 13 ], "texture": "#side" } + } + }, + { + "__comment": "Box8", + "from": [ 5, 7, 5 ], + "to": [ 11, 12, 11 ], + "shade": false, + "faces": { + "north": { "uv": [ 5, 8, 11, 13 ], "texture": "#side" }, + "south": { "uv": [ 0, 8, 6, 13 ], "texture": "#side" }, + "west": { "uv": [ 5, 8, 11, 13 ], "texture": "#side" }, + "east": { "uv": [ 10, 8, 16, 13 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 11, 9 ], + "faces": { + "north": { "uv": [ 7, 5, 9, 16 ], "texture": "#stem" }, + "south": { "uv": [ 7, 5, 9, 16 ], "texture": "#stem" }, + "west": { "uv": [ 7, 5, 9, 16 ], "texture": "#stem" }, + "east": { "uv": [ 7, 5, 9, 16 ], "texture": "#stem" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_top_poor.json b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_top_poor.json new file mode 100644 index 0000000..52d7432 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_top_poor.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/jellyfish_mushroom_top", + "textures": { + "particle": "betternether:block/jellyfish_mushroom_top_poor", + "texture": "betternether:block/jellyfish_mushroom_top_poor", + "side": "betternether:block/jellyfish_mushroom_side_poor" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_top_sepia.json b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_top_sepia.json new file mode 100644 index 0000000..36e0d20 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jellyfish_mushroom_top_sepia.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/jellyfish_mushroom_top", + "textures": { + "particle": "betternether:block/jellyfish_mushroom_top_sepia", + "texture": "betternether:block/jellyfish_mushroom_top_sepia", + "side": "betternether:block/jellyfish_mushroom_side_sepia" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jungle_grass.json b/src/main/resources/assets/betternether/models/block/jungle_grass.json new file mode 100644 index 0000000..b9f34ea --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jungle_grass.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/jungle_grass_side", + "down": "block/netherrack", + "up": "betternether:block/jungle_grass_top", + "north": "betternether:block/jungle_grass_side", + "east": "betternether:block/jungle_grass_side", + "south": "betternether:block/jungle_grass_side", + "west": "betternether:block/jungle_grass_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jungle_moss_1.json b/src/main/resources/assets/betternether/models/block/jungle_moss_1.json new file mode 100644 index 0000000..1190d83 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jungle_moss_1.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/wall_moss_1", + "textures": { + "particle": "betternether:block/jungle_moss", + "texture": "betternether:block/jungle_moss" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jungle_moss_2.json b/src/main/resources/assets/betternether/models/block/jungle_moss_2.json new file mode 100644 index 0000000..12c4c89 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jungle_moss_2.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/wall_moss_2", + "textures": { + "particle": "betternether:block/jungle_moss", + "texture": "betternether:block/jungle_moss" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jungle_moss_3.json b/src/main/resources/assets/betternether/models/block/jungle_moss_3.json new file mode 100644 index 0000000..7ee0676 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jungle_moss_3.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/wall_moss_3", + "textures": { + "particle": "betternether:block/jungle_moss", + "texture": "betternether:block/jungle_moss" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jungle_moss_4.json b/src/main/resources/assets/betternether/models/block/jungle_moss_4.json new file mode 100644 index 0000000..f87bf0c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jungle_moss_4.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/wall_moss_1", + "textures": { + "particle": "betternether:block/jungle_moss_2", + "texture": "betternether:block/jungle_moss_2" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jungle_moss_5.json b/src/main/resources/assets/betternether/models/block/jungle_moss_5.json new file mode 100644 index 0000000..738974d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jungle_moss_5.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/wall_moss_2", + "textures": { + "particle": "betternether:block/jungle_moss_2", + "texture": "betternether:block/jungle_moss_2" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jungle_moss_6.json b/src/main/resources/assets/betternether/models/block/jungle_moss_6.json new file mode 100644 index 0000000..a470559 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jungle_moss_6.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/wall_moss_3", + "textures": { + "particle": "betternether:block/jungle_moss_2", + "texture": "betternether:block/jungle_moss_2" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jungle_plant_1_a.json b/src/main/resources/assets/betternether/models/block/jungle_plant_1_a.json new file mode 100644 index 0000000..fdc536d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jungle_plant_1_a.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/jungle_plant_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/jungle_plant_1_b.json b/src/main/resources/assets/betternether/models/block/jungle_plant_1_b.json new file mode 100644 index 0000000..31eb2ab --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jungle_plant_1_b.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/jungle_plant_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/jungle_plant_2.json b/src/main/resources/assets/betternether/models/block/jungle_plant_2.json new file mode 100644 index 0000000..88bd37a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jungle_plant_2.json @@ -0,0 +1,54 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/jungle_plant_2", + "texture": "betternether:block/jungle_plant_2", + "texture1": "betternether:block/jungle_plant_3" + }, + "elements": [ + { + "__comment": "PlaneY1", + "from": [ 0, 0, 8.5 ], + "to": [ 16, 0.001, 24.5 ], + "rotation": { "origin": [ 0, 0, 8.5 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, -0.001, -8.5 ], + "to": [ 16, 0, 7.5 ], + "rotation": { "origin": [ 0, 0, 7.5 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 180 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY3", + "from": [ 8.5, 0, 0 ], + "to": [ 24.5, 0.001, 16 ], + "rotation": { "origin": [ 8.5, 0, 0 ], "axis": "z", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "PlaneY3", + "from": [ -8.5, -0.001, 0 ], + "to": [ 7.5, 0, 16 ], + "rotation": { "origin": [ 7.5, 0, 0 ], "axis": "z", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 270 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 270 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/jungle_plant_3.json b/src/main/resources/assets/betternether/models/block/jungle_plant_3.json new file mode 100644 index 0000000..21bf3fc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/jungle_plant_3.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/jungle_plant_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/lumabus.json b/src/main/resources/assets/betternether/models/block/lumabus.json new file mode 100644 index 0000000..6d62d4d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/lumabus.json @@ -0,0 +1,31 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/lumabus_vine", + "texture": "betternether:block/lumabus_vine" + }, + "elements": [ + { + "__comment": "PlaneX1", + "from": [ 2.5, 0, 2.5 ], + "to": [ 2.501, 16, 18.5 ], + "rotation": { "origin": [ 2.5, 0, 2.5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX1", + "from": [ 13.5, 0, 2.5 ], + "to": [ 13.501, 16, 18.5 ], + "rotation": { "origin": [ 13.5, 0, 2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/lumabus_bulb_1.json b/src/main/resources/assets/betternether/models/block/lumabus_bulb_1.json new file mode 100644 index 0000000..f72ea96 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/lumabus_bulb_1.json @@ -0,0 +1,100 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/lumabus_bulb_1", + "texture": "betternether:block/lumabus_bulb_1", + "leaves": "betternether:block/lumabus_leaves" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 4, 4 ], + "to": [ 12, 12, 12 ], + "shade": false, + "faces": { + "down": { "uv": [ 4, 8, 12, 16 ], "texture": "#texture" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#leaves" }, + "north": { "uv": [ 4, 0, 12, 8 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 12, 8 ], "texture": "#texture" }, + "west": { "uv": [ 4, 0, 12, 8 ], "texture": "#texture" }, + "east": { "uv": [ 4, 0, 12, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 12, 5 ], + "to": [ 11, 13, 11 ], + "faces": { + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#leaves" }, + "north": { "uv": [ 5, 11, 11, 12 ], "texture": "#leaves" }, + "south": { "uv": [ 5, 11, 11, 12 ], "texture": "#leaves" }, + "west": { "uv": [ 5, 11, 11, 12 ], "texture": "#leaves" }, + "east": { "uv": [ 5, 11, 11, 12 ], "texture": "#leaves" } + } + }, + { + "__comment": "PlaneY3", + "from": [ 4, 12, 12 ], + "to": [ 12, 12.001, 16 ], + "rotation": { "origin": [ 4, 12, 12 ], "axis": "x", "angle": 45 }, + "faces": { + "down": { "uv": [ 4, 0, 12, 4 ], "texture": "#leaves" }, + "up": { "uv": [ 4, 12, 12, 16 ], "texture": "#leaves" } + } + }, + { + "__comment": "PlaneY3", + "from": [ 4, 11.999, 0 ], + "to": [ 12, 12, 4 ], + "rotation": { "origin": [ 4, 12, 4 ], "axis": "x", "angle": -45 }, + "faces": { + "down": { "uv": [ 4, 12, 12, 16 ], "texture": "#leaves" }, + "up": { "uv": [ 4, 0, 12, 4 ], "texture": "#leaves" } + } + }, + { + "__comment": "PlaneY5", + "from": [ 12, 12, 4 ], + "to": [ 16, 12.001, 12 ], + "rotation": { "origin": [ 12, 12, 4 ], "axis": "z", "angle": -45 }, + "faces": { + "down": { "uv": [ 12, 4, 16, 12 ], "texture": "#leaves" }, + "up": { "uv": [ 12, 4, 16, 12 ], "texture": "#leaves" } + } + }, + { + "__comment": "PlaneY5", + "from": [ 0, 11.999, 4 ], + "to": [ 4, 12, 12 ], + "rotation": { "origin": [ 4, 12, 4 ], "axis": "z", "angle": 45 }, + "faces": { + "down": { "uv": [ 12, 4, 16, 12 ], "texture": "#leaves", "rotation": 180 }, + "up": { "uv": [ 12, 4, 16, 12 ], "texture": "#leaves", "rotation": 180 } + } + }, + { + "__comment": "Box1", + "from": [ 6, 13, 6 ], + "to": [ 10, 14, 10 ], + "faces": { + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#leaves" }, + "north": { "uv": [ 6, 10, 10, 11 ], "texture": "#leaves" }, + "south": { "uv": [ 6, 10, 10, 11 ], "texture": "#leaves" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#leaves" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 14, 7 ], + "to": [ 9, 16, 9 ], + "faces": { + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#leaves" }, + "north": { "uv": [ 7, 9, 9, 11 ], "texture": "#leaves" }, + "south": { "uv": [ 7, 9, 9, 11 ], "texture": "#leaves" }, + "west": { "uv": [ 7, 9, 9, 11 ], "texture": "#leaves" }, + "east": { "uv": [ 7, 9, 9, 11 ], "texture": "#leaves" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/lumabus_bulb_2.json b/src/main/resources/assets/betternether/models/block/lumabus_bulb_2.json new file mode 100644 index 0000000..4e62b0b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/lumabus_bulb_2.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/lumabus_bulb_1", + "textures": { + "particle": "betternether:block/lumabus_bulb_2", + "texture": "betternether:block/lumabus_bulb_2" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/lumabus_bulb_3.json b/src/main/resources/assets/betternether/models/block/lumabus_bulb_3.json new file mode 100644 index 0000000..ae180b3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/lumabus_bulb_3.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/lumabus_bulb_1", + "textures": { + "particle": "betternether:block/lumabus_bulb_3", + "texture": "betternether:block/lumabus_bulb_3" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/lumabus_bulb_4.json b/src/main/resources/assets/betternether/models/block/lumabus_bulb_4.json new file mode 100644 index 0000000..f620550 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/lumabus_bulb_4.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/lumabus_bulb_1", + "textures": { + "particle": "betternether:block/lumabus_bulb_4", + "texture": "betternether:block/lumabus_bulb_4" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/lumabus_roots.json b/src/main/resources/assets/betternether/models/block/lumabus_roots.json new file mode 100644 index 0000000..cd63760 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/lumabus_roots.json @@ -0,0 +1,76 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/lumabus_vine", + "texture": "betternether:block/lumabus_vine", + "roots": "betternether:block/lumabus_roots" + }, + "elements": [ + { + "__comment": "PlaneX1", + "from": [ 2.5, 0, 2.5 ], + "to": [ 2.501, 16, 18.5 ], + "rotation": { "origin": [ 2.5, 0, 2.5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX1", + "from": [ 13.5, 0, 2.5 ], + "to": [ 13.501, 16, 18.5 ], + "rotation": { "origin": [ 13.5, 0, 2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 5, 1.5, 0 ], + "to": [ 5.001, 17.5, 16 ], + "rotation": { "origin": [ 5, 1.5, 0 ], "axis": "z", "angle": -22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#roots" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 11, 1.5, 0 ], + "to": [ 11.001, 17.5, 16 ], + "rotation": { "origin": [ 11, 1.5, 0 ], "axis": "z", "angle": 22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#roots" } + } + }, + { + "__comment": "PlaneZ5", + "from": [ 0, 1.5, 5 ], + "to": [ 16, 17.5, 5.001 ], + "rotation": { "origin": [ 0, 1.5, 5 ], "axis": "x", "angle": 22.5 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "south": { "uv": [ 16, 0, 0, 16 ], "texture": "#roots" } + } + }, + { + "__comment": "PlaneZ5", + "from": [ 0, 1.5, 11 ], + "to": [ 16, 17.5, 11.001 ], + "rotation": { "origin": [ 0, 1.5, 11 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "north": { "uv": [ 16, 0, 0, 16 ], "texture": "#roots" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/lumabus_seed.json b/src/main/resources/assets/betternether/models/block/lumabus_seed.json new file mode 100644 index 0000000..6ce0333 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/lumabus_seed.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/lumabus_vine", + "textures": { + "particle": "betternether:block/lumabus_sapling", + "texture": "betternether:block/lumabus_sapling" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/lumabus_vine.json b/src/main/resources/assets/betternether/models/block/lumabus_vine.json new file mode 100644 index 0000000..6d62d4d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/lumabus_vine.json @@ -0,0 +1,31 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/lumabus_vine", + "texture": "betternether:block/lumabus_vine" + }, + "elements": [ + { + "__comment": "PlaneX1", + "from": [ 2.5, 0, 2.5 ], + "to": [ 2.501, 16, 18.5 ], + "rotation": { "origin": [ 2.5, 0, 2.5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX1", + "from": [ 13.5, 0, 2.5 ], + "to": [ 13.501, 16, 18.5 ], + "rotation": { "origin": [ 13.5, 0, 2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/lumabus_vine_mirrored.json b/src/main/resources/assets/betternether/models/block/lumabus_vine_mirrored.json new file mode 100644 index 0000000..931acb5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/lumabus_vine_mirrored.json @@ -0,0 +1,28 @@ +{ + "textures": { + "particle": "betternether:block/lumabus_vine", + "texture": "betternether:block/lumabus_vine" + }, + "elements": [ + { + "from": [ 2.5, 0, 2.5 ], + "to": [ 2.501, 16, 18.5 ], + "rotation": { "origin": [ 2.5, 0, 2.5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "from": [ 13.5, 0, 2.5 ], + "to": [ 13.501, 16, 18.5 ], + "rotation": { "origin": [ 13.5, 0, 2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/magma_flower_01.json b/src/main/resources/assets/betternether/models/block/magma_flower_01.json new file mode 100644 index 0000000..4f5261c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/magma_flower_01.json @@ -0,0 +1,72 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/magma_flower_side", + "side": "betternether:block/magma_flower_side", + "top": "betternether:block/magma_flower_top", + "leaf": "betternether:block/magma_flower_leaf" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 1, 0, 1 ], + "to": [ 7, 7, 7 ], + "faces": { + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf" }, + "north": { "uv": [ 10, 2, 16, 9 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 2, 16, 9 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 2, 16, 9 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 2, 16, 9 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 9.5, 0, 0.5 ], + "to": [ 15.5, 9, 6.5 ], + "faces": { + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 90 }, + "north": { "uv": [ 10, 0, 16, 9 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 0, 16, 9 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 0, 16, 9 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 0, 16, 9 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 0, 9 ], + "to": [ 15, 8, 15 ], + "faces": { + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 180 }, + "north": { "uv": [ 10, 3, 16, 11 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 3, 16, 11 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 3, 16, 11 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 3, 16, 11 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 10 ], + "to": [ 6, 6, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 270 }, + "north": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 2 ], + "to": [ 14, 12, 14 ], + "faces": { + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 2, 14, 14 ], "texture": "#side" }, + "south": { "uv": [ 2, 2, 14, 14 ], "texture": "#side" }, + "west": { "uv": [ 2, 2, 14, 14 ], "texture": "#side" }, + "east": { "uv": [ 2, 2, 14, 14 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/magma_flower_02.json b/src/main/resources/assets/betternether/models/block/magma_flower_02.json new file mode 100644 index 0000000..baa965c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/magma_flower_02.json @@ -0,0 +1,72 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/magma_flower_side", + "side": "betternether:block/magma_flower_side", + "top": "betternether:block/magma_flower_top", + "leaf": "betternether:block/magma_flower_leaf" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 1, 0, 1 ], + "to": [ 7, 7, 7 ], + "faces": { + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf" }, + "north": { "uv": [ 10, 2, 16, 9 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 2, 16, 9 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 2, 16, 9 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 2, 16, 9 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 9.5, 0, 0.5 ], + "to": [ 15.5, 9, 6.5 ], + "faces": { + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 90 }, + "north": { "uv": [ 10, 0, 16, 9 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 0, 16, 9 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 0, 16, 9 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 0, 16, 9 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 0, 9 ], + "to": [ 15, 8, 15 ], + "faces": { + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 180 }, + "north": { "uv": [ 10, 3, 16, 11 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 3, 16, 11 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 3, 16, 11 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 3, 16, 11 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 10 ], + "to": [ 6, 8, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 270 }, + "north": { "uv": [ 10, 0, 16, 8 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 0, 16, 8 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 0, 16, 8 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 0, 16, 8 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 13, 10, 13 ], + "faces": { + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#top" }, + "north": { "uv": [ 3, 3, 13, 13 ], "texture": "#side" }, + "south": { "uv": [ 3, 3, 13, 13 ], "texture": "#side" }, + "west": { "uv": [ 3, 3, 13, 13 ], "texture": "#side" }, + "east": { "uv": [ 3, 3, 13, 13 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/magma_flower_03.json b/src/main/resources/assets/betternether/models/block/magma_flower_03.json new file mode 100644 index 0000000..06e809d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/magma_flower_03.json @@ -0,0 +1,72 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/magma_flower_side", + "side": "betternether:block/magma_flower_side", + "top": "betternether:block/magma_flower_top", + "leaf": "betternether:block/magma_flower_leaf" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 0, 2 ], + "to": [ 8, 9, 8 ], + "faces": { + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf" }, + "north": { "uv": [ 10, 2, 16, 11 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 2, 16, 11 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 2, 16, 11 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 2, 16, 11 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 0, 1 ], + "to": [ 15, 9, 7 ], + "faces": { + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 90 }, + "north": { "uv": [ 10, 0, 16, 9 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 0, 16, 9 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 0, 16, 9 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 0, 16, 9 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 8, 0, 8 ], + "to": [ 14, 9, 14 ], + "faces": { + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 180 }, + "north": { "uv": [ 10, 3, 16, 12 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 3, 16, 12 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 3, 16, 12 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 3, 16, 12 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 0, 9 ], + "to": [ 7, 10, 15 ], + "faces": { + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 270 }, + "north": { "uv": [ 10, 0, 16, 10 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 0, 16, 10 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 0, 16, 10 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 0, 16, 10 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 8, 12 ], + "faces": { + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 4, 12, 12 ], "texture": "#side" }, + "south": { "uv": [ 4, 4, 12, 12 ], "texture": "#side" }, + "west": { "uv": [ 4, 4, 12, 12 ], "texture": "#side" }, + "east": { "uv": [ 4, 4, 12, 12 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/magma_flower_04.json b/src/main/resources/assets/betternether/models/block/magma_flower_04.json new file mode 100644 index 0000000..4f39a82 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/magma_flower_04.json @@ -0,0 +1,55 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/magma_flower_side", + "leaf": "betternether:block/magma_flower_leaf" + }, + "elements": [ + { + "__comment": "Box6", + "from": [ 3, 0, 3 ], + "to": [ 8, 5, 8 ], + "faces": { + "up": { "uv": [ 0, 0, 5, 5 ], "texture": "#leaf" }, + "north": { "uv": [ 10, 1, 15, 6 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 1, 15, 6 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 1, 15, 6 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box6", + "from": [ 8, 0, 3 ], + "to": [ 13, 6, 8 ], + "faces": { + "up": { "uv": [ 1, 1, 6, 6 ], "texture": "#leaf", "rotation": 90 }, + "north": { "uv": [ 11, 2, 16, 8 ], "texture": "#leaf" }, + "south": { "uv": [ 11, 2, 16, 8 ], "texture": "#leaf" }, + "west": { "uv": [ 11, 2, 16, 8 ], "texture": "#leaf" }, + "east": { "uv": [ 11, 2, 16, 8 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box6", + "from": [ 4, 0, 8 ], + "to": [ 8, 6, 12 ], + "faces": { + "up": { "uv": [ 2, 2, 6, 6 ], "texture": "#leaf", "rotation": 270 }, + "north": { "uv": [ 11, 0, 15, 6 ], "texture": "#leaf" }, + "south": { "uv": [ 11, 0, 15, 6 ], "texture": "#leaf" }, + "west": { "uv": [ 11, 0, 15, 6 ], "texture": "#leaf" }, + "east": { "uv": [ 11, 0, 15, 6 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box6", + "from": [ 8, 0, 8 ], + "to": [ 12, 5, 12 ], + "faces": { + "up": { "uv": [ 1, 1, 5, 5 ], "texture": "#leaf", "rotation": 180 }, + "south": { "uv": [ 11, 2, 15, 7 ], "texture": "#leaf" }, + "east": { "uv": [ 11, 2, 15, 7 ], "texture": "#leaf" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/moss_cover.json b/src/main/resources/assets/betternether/models/block/moss_cover.json new file mode 100644 index 0000000..639f084 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/moss_cover.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/moss_top", + "texture": "betternether:block/moss_side", + "top": "betternether:block/moss_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ -0.01, -9, -0.01 ], + "to": [ 16.01, 1, 16.01 ], + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "north": { "uv": [ 0, 0, 16, 10 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 0, 16, 10 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 10 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 10 ], "texture": "#texture", "cullface": "east" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/moss_cover_2.json b/src/main/resources/assets/betternether/models/block/moss_cover_2.json new file mode 100644 index 0000000..171522a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/moss_cover_2.json @@ -0,0 +1,67 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/moss_top", + "texture": "betternether:block/moss_side", + "top": "betternether:block/moss_top", + "part": "betternether:block/moss_parts" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ -0.01, -9, -0.01 ], + "to": [ 16.01, 1, 16.01 ], + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "north": { "uv": [ 0, 0, 16, 10 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 0, 16, 10 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 10 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 10 ], "texture": "#texture", "cullface": "east" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 0, 0, 4 ], + "to": [ 0.001, 16, 20 ], + "rotation": { "origin": [ 0, 0, 4 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#part" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#part" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 5.5, 1, 0 ], + "to": [ 5.501, 17, 16 ], + "rotation": { "origin": [ 5.5, 1, 0 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#part" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#part" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 11, 0, 0 ], + "to": [ 11.001, 16, 16 ], + "rotation": { "origin": [ 11, 0, 0 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#part" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#part" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 16, 1, 4.5 ], + "to": [ 16.001, 17, 20.5 ], + "rotation": { "origin": [ 16, 1, 4.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#part" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#part" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/moss_cover_3.json b/src/main/resources/assets/betternether/models/block/moss_cover_3.json new file mode 100644 index 0000000..f0ef138 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/moss_cover_3.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/moss_top", + "texture": "betternether:block/moss_side", + "top": "betternether:block/moss_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ -0.01, -9, -0.01 ], + "to": [ 16.01, 1, 16.01 ], + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "north": { "uv": [ 16, 0, 0, 10 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 16, 0, 0, 10 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 16, 0, 0, 10 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 16, 0, 0, 10 ], "texture": "#texture", "cullface": "east" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/moss_cover_4.json b/src/main/resources/assets/betternether/models/block/moss_cover_4.json new file mode 100644 index 0000000..eaaf2f0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/moss_cover_4.json @@ -0,0 +1,67 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/moss_top", + "texture": "betternether:block/moss_side", + "top": "betternether:block/moss_top", + "part": "betternether:block/moss_parts" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ -0.01, -9, -0.01 ], + "to": [ 16.01, 1, 16.01 ], + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "north": { "uv": [ 16, 0, 0, 10 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 16, 0, 0, 10 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 16, 0, 0, 10 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 16, 0, 0, 10 ], "texture": "#texture", "cullface": "east" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 0, 0, 4 ], + "to": [ 0.001, 16, 20 ], + "rotation": { "origin": [ 0, 0, 4 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#part" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#part" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 5.5, 1, 0 ], + "to": [ 5.501, 17, 16 ], + "rotation": { "origin": [ 5.5, 1, 0 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#part" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#part" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 11, 0, 0 ], + "to": [ 11.001, 16, 16 ], + "rotation": { "origin": [ 11, 0, 0 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#part" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#part" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 16, 1, 4.5 ], + "to": [ 16.001, 17, 20.5 ], + "rotation": { "origin": [ 16, 1, 4.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#part" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#part" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_button.json b/src/main/resources/assets/betternether/models/block/mushroom_button.json new file mode 100644 index 0000000..29af465 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_button.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "#texture", + "texture": "betternether:block/mushroom_button" + }, + "elements": [ + { + "__comment": "Element", + "from": [ 5, 0, 6 ], + "to": [ 11, 2, 10 ], + "faces": { + "down": { "uv": [ 5, 6, 11, 10 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 5, 10, 11, 6 ], "texture": "#texture" }, + "north": { "uv": [ 5, 10, 11, 12 ], "texture": "#texture" }, + "south": { "uv": [ 5, 10, 11, 12 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 12 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 12 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_button_inventory.json b/src/main/resources/assets/betternether/models/block/mushroom_button_inventory.json new file mode 100644 index 0000000..5ddef21 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_button_inventory.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/mushroom_button", + "texture": "betternether:block/mushroom_button" + }, + "elements": [ + { + "__comment": "Element", + "from": [ 5, 6, 6 ], + "to": [ 11, 10, 10 ], + "faces": { + "down": { "uv": [ 5, 10, 11, 14 ], "texture": "#texture" }, + "up": { "uv": [ 5, 14, 11, 10 ], "texture": "#texture" }, + "north": { "uv": [ 5, 6, 11, 10 ], "texture": "#texture" }, + "south": { "uv": [ 5, 6, 11, 10 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 14 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_button_pressed.json b/src/main/resources/assets/betternether/models/block/mushroom_button_pressed.json new file mode 100644 index 0000000..7f0a06e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_button_pressed.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "#texture", + "texture": "betternether:block/mushroom_button" + }, + "elements": [ + { + "__comment": "Element", + "from": [ 5, 0, 6 ], + "to": [ 11, 1, 10 ], + "faces": { + "down": { "uv": [ 5, 6, 11, 10 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 5, 10, 11, 6 ], "texture": "#texture" }, + "north": { "uv": [ 5, 10, 11, 11 ], "texture": "#texture" }, + "south": { "uv": [ 5, 10, 11, 11 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_door_bottom.json b/src/main/resources/assets/betternether/models/block/mushroom_door_bottom.json new file mode 100644 index 0000000..1548f76 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_door_bottom.json @@ -0,0 +1,81 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/mushroom_door_bootom", + "texture": "betternether:block/mushroom_door_bootom", + "side": "betternether:block/mushroom_door_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 3, 2, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 16 ], "texture": "#side" }, + "up": { "uv": [ 0, 0, 3, 16 ], "texture": "#side" }, + "north": { "uv": [ 13, 14, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 14, 3, 16 ], "texture": "#side" }, + "west": { "uv": [ 16, 14, 0, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 14, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 2, 0 ], + "to": [ 3, 16, 2 ], + "faces": { + "north": { "uv": [ 13, 0, 16, 14 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 3, 14 ], "texture": "#side" }, + "west": { "uv": [ 0, 0, 2, 14 ], "texture": "#texture" }, + "east": { "uv": [ 2, 0, 0, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 2, 14 ], + "to": [ 3, 16, 16 ], + "faces": { + "north": { "uv": [ 13, 0, 16, 14 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 3, 14 ], "texture": "#side" }, + "west": { "uv": [ 14, 0, 16, 14 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 14, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 2, 2 ], + "to": [ 2, 16, 14 ], + "shade": false, + "faces": { + "west": { "uv": [ 14, 0, 2, 14 ], "texture": "#texture" }, + "east": { "uv": [ 14, 0, 2, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 3, 3 ], + "to": [ 3, 15, 7 ], + "faces": { + "down": { "uv": [ 0, 9, 3, 13 ], "texture": "#side" }, + "up": { "uv": [ 0, 3, 3, 7 ], "texture": "#side" }, + "north": { "uv": [ 13, 1, 16, 13 ], "texture": "#side" }, + "south": { "uv": [ 0, 1, 3, 13 ], "texture": "#side" }, + "west": { "uv": [ 3, 1, 7, 13 ], "texture": "#texture" }, + "east": { "uv": [ 7, 1, 3, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 3, 9 ], + "to": [ 3, 15, 13 ], + "faces": { + "down": { "uv": [ 0, 3, 3, 7 ], "texture": "#side" }, + "up": { "uv": [ 0, 9, 3, 13 ], "texture": "#side" }, + "north": { "uv": [ 13, 1, 16, 13 ], "texture": "#side" }, + "south": { "uv": [ 0, 1, 3, 13 ], "texture": "#side" }, + "west": { "uv": [ 9, 1, 13, 13 ], "texture": "#texture" }, + "east": { "uv": [ 13, 1, 9, 13 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_door_bottom_hinge.json b/src/main/resources/assets/betternether/models/block/mushroom_door_bottom_hinge.json new file mode 100644 index 0000000..89bfb5b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_door_bottom_hinge.json @@ -0,0 +1,81 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/mushroom_door_bootom", + "texture": "betternether:block/mushroom_door_bootom", + "side": "betternether:block/mushroom_door_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 3, 2, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 16 ], "texture": "#side" }, + "up": { "uv": [ 0, 0, 3, 16 ], "texture": "#side" }, + "north": { "uv": [ 13, 14, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 14, 3, 16 ], "texture": "#side" }, + "west": { "uv": [ 16, 14, 0, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 14, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 2, 0 ], + "to": [ 3, 16, 2 ], + "faces": { + "north": { "uv": [ 13, 0, 16, 14 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 3, 14 ], "texture": "#side" }, + "west": { "uv": [ 16, 0, 14, 14 ], "texture": "#texture" }, + "east": { "uv": [ 14, 0, 16, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 2, 14 ], + "to": [ 3, 16, 16 ], + "faces": { + "north": { "uv": [ 13, 0, 16, 14 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 3, 14 ], "texture": "#side" }, + "west": { "uv": [ 2, 0, 0, 14 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 2, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 2, 2 ], + "to": [ 2, 16, 14 ], + "shade": false, + "faces": { + "west": { "uv": [ 14, 0, 2, 14 ], "texture": "#texture" }, + "east": { "uv": [ 2, 0, 14, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 3, 3 ], + "to": [ 3, 15, 7 ], + "faces": { + "down": { "uv": [ 0, 9, 3, 13 ], "texture": "#side" }, + "up": { "uv": [ 0, 3, 3, 7 ], "texture": "#side" }, + "north": { "uv": [ 13, 1, 16, 13 ], "texture": "#side" }, + "south": { "uv": [ 0, 1, 3, 13 ], "texture": "#side" }, + "west": { "uv": [ 13, 1, 9, 13 ], "texture": "#texture" }, + "east": { "uv": [ 9, 1, 13, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 3, 9 ], + "to": [ 3, 15, 13 ], + "faces": { + "down": { "uv": [ 0, 3, 3, 7 ], "texture": "#side" }, + "up": { "uv": [ 0, 9, 3, 13 ], "texture": "#side" }, + "north": { "uv": [ 13, 1, 16, 13 ], "texture": "#side" }, + "south": { "uv": [ 0, 1, 3, 13 ], "texture": "#side" }, + "west": { "uv": [ 7, 1, 3, 13 ], "texture": "#texture" }, + "east": { "uv": [ 3, 1, 7, 13 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_door_top.json b/src/main/resources/assets/betternether/models/block/mushroom_door_top.json new file mode 100644 index 0000000..def1b27 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_door_top.json @@ -0,0 +1,119 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/mushroom_door_top", + "texture": "betternether:block/mushroom_door_top", + "side": "betternether:block/mushroom_door_side" + }, + "elements": [ + { + "__comment": "Box7", + "from": [ 0, 14, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 16 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 0, 0, 3, 16 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 0, 0, 3, 2 ], "texture": "#side" }, + "south": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" }, + "west": { "uv": [ 0, 0, 16, 2 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 0, 14 ], + "to": [ 3, 14, 16 ], + "faces": { + "north": { "uv": [ 0, 2, 3, 16 ], "texture": "#side" }, + "south": { "uv": [ 13, 2, 16, 16 ], "texture": "#side" }, + "west": { "uv": [ 14, 2, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 2, 14, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 0, 0 ], + "to": [ 3, 14, 2 ], + "faces": { + "north": { "uv": [ 0, 2, 3, 16 ], "texture": "#side" }, + "south": { "uv": [ 13, 2, 16, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 2, 2, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 2, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 1, 0, 2 ], + "to": [ 2, 14, 14 ], + "shade": false, + "faces": { + "west": { "uv": [ 2, 2, 14, 16 ], "texture": "#texture" }, + "east": { "uv": [ 14, 2, 2, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 1, 9 ], + "to": [ 3, 6, 13 ], + "faces": { + "down": { "uv": [ 0, 9, 3, 13 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 0, 3, 3, 7 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 0, 10, 3, 15 ], "texture": "#side" }, + "south": { "uv": [ 13, 10, 16, 15 ], "texture": "#side" }, + "west": { "uv": [ 9, 10, 13, 15 ], "texture": "#texture" }, + "east": { "uv": [ 7, 10, 3, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 1, 3 ], + "to": [ 3, 6, 7 ], + "faces": { + "down": { "uv": [ 0, 3, 3, 7 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 0, 9, 3, 13 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 0, 10, 3, 15 ], "texture": "#side" }, + "south": { "uv": [ 13, 10, 16, 15 ], "texture": "#side" }, + "west": { "uv": [ 3, 10, 7, 15 ], "texture": "#texture" }, + "east": { "uv": [ 13, 10, 9, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 8, 9 ], + "to": [ 3, 13, 13 ], + "faces": { + "down": { "uv": [ 0, 9, 3, 13 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 0, 3, 3, 7 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 0, 3, 3, 8 ], "texture": "#side" }, + "south": { "uv": [ 13, 3, 16, 8 ], "texture": "#side" }, + "west": { "uv": [ 9, 3, 13, 8 ], "texture": "#texture" }, + "east": { "uv": [ 7, 3, 3, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 8, 3 ], + "to": [ 3, 13, 7 ], + "faces": { + "down": { "uv": [ 0, 3, 3, 7 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 0, 9, 3, 13 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 0, 10, 3, 15 ], "texture": "#side" }, + "south": { "uv": [ 13, 10, 16, 15 ], "texture": "#side" }, + "west": { "uv": [ 3, 10, 7, 15 ], "texture": "#texture" }, + "east": { "uv": [ 13, 3, 9, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 0, 12 ], + "to": [ 3, 1, 14 ], + "faces": { + "down": { "uv": [ 12, 15, 15, 16 ], "texture": "#texture", "rotation": 180 }, + "up": { "uv": [ 12, 15, 15, 16 ], "texture": "#texture", "rotation": 180 }, + "north": { "uv": [ 12, 15, 15, 16 ], "texture": "#texture" }, + "west": { "uv": [ 12, 15, 14, 16 ], "texture": "#texture" }, + "east": { "uv": [ 14, 15, 12, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_door_top_hinge.json b/src/main/resources/assets/betternether/models/block/mushroom_door_top_hinge.json new file mode 100644 index 0000000..39b42aa --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_door_top_hinge.json @@ -0,0 +1,119 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/mushroom_door_top", + "texture": "betternether:block/mushroom_door_top", + "side": "betternether:block/mushroom_door_side" + }, + "elements": [ + { + "__comment": "Box7", + "from": [ 0, 14, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 16 ], "texture": "#side" }, + "up": { "uv": [ 0, 0, 3, 16 ], "texture": "#side" }, + "north": { "uv": [ 13, 0, 16, 2 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 3, 2 ], "texture": "#side" }, + "west": { "uv": [ 16, 0, 0, 2 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 0, 0 ], + "to": [ 3, 14, 2 ], + "faces": { + "north": { "uv": [ 13, 2, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 2, 3, 16 ], "texture": "#side" }, + "west": { "uv": [ 16, 2, 14, 16 ], "texture": "#texture" }, + "east": { "uv": [ 14, 2, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 0, 14 ], + "to": [ 3, 14, 16 ], + "faces": { + "north": { "uv": [ 13, 2, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 2, 3, 16 ], "texture": "#side" }, + "west": { "uv": [ 2, 2, 0, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 2, 2, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 1, 0, 2 ], + "to": [ 2, 14, 14 ], + "shade": false, + "faces": { + "west": { "uv": [ 14, 2, 2, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 2, 14, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 1, 3 ], + "to": [ 3, 6, 7 ], + "faces": { + "down": { "uv": [ 0, 9, 3, 13 ], "texture": "#side" }, + "up": { "uv": [ 0, 3, 3, 7 ], "texture": "#side" }, + "north": { "uv": [ 13, 10, 16, 15 ], "texture": "#side" }, + "south": { "uv": [ 0, 10, 3, 15 ], "texture": "#side" }, + "west": { "uv": [ 7, 10, 3, 15 ], "texture": "#texture" }, + "east": { "uv": [ 9, 10, 13, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 1, 9 ], + "to": [ 3, 6, 13 ], + "faces": { + "down": { "uv": [ 0, 3, 3, 7 ], "texture": "#side" }, + "up": { "uv": [ 0, 9, 3, 13 ], "texture": "#side" }, + "north": { "uv": [ 13, 10, 16, 15 ], "texture": "#side" }, + "south": { "uv": [ 0, 10, 3, 15 ], "texture": "#side" }, + "west": { "uv": [ 13, 10, 9, 15 ], "texture": "#texture" }, + "east": { "uv": [ 3, 10, 7, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 8, 3 ], + "to": [ 3, 13, 7 ], + "faces": { + "down": { "uv": [ 0, 9, 3, 13 ], "texture": "#side" }, + "up": { "uv": [ 0, 3, 3, 7 ], "texture": "#side" }, + "north": { "uv": [ 13, 3, 16, 8 ], "texture": "#side" }, + "south": { "uv": [ 0, 3, 3, 8 ], "texture": "#side" }, + "west": { "uv": [ 7, 3, 3, 8 ], "texture": "#texture" }, + "east": { "uv": [ 9, 3, 13, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 8, 9 ], + "to": [ 3, 13, 13 ], + "faces": { + "down": { "uv": [ 0, 3, 3, 7 ], "texture": "#side" }, + "up": { "uv": [ 0, 9, 3, 13 ], "texture": "#side" }, + "north": { "uv": [ 13, 10, 16, 15 ], "texture": "#side" }, + "south": { "uv": [ 0, 10, 3, 15 ], "texture": "#side" }, + "west": { "uv": [ 13, 3, 9, 8 ], "texture": "#texture" }, + "east": { "uv": [ 3, 10, 7, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box7", + "from": [ 0, 0, 2 ], + "to": [ 3, 1, 4 ], + "faces": { + "down": { "uv": [ 12, 15, 15, 16 ], "texture": "#texture" }, + "up": { "uv": [ 12, 15, 15, 16 ], "texture": "#texture" }, + "south": { "uv": [ 12, 15, 15, 16 ], "texture": "#texture" }, + "west": { "uv": [ 14, 15, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 12, 15, 14, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fence_gate_closed.json b/src/main/resources/assets/betternether/models/block/mushroom_fence_gate_closed.json new file mode 100644 index 0000000..5097330 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fence_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate", + "textures": { + "texture": "betternether:block/mushroom_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fence_gate_open.json b/src/main/resources/assets/betternether/models/block/mushroom_fence_gate_open.json new file mode 100644 index 0000000..70fa534 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fence_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_open", + "textures": { + "texture": "betternether:block/mushroom_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fence_inventory.json b/src/main/resources/assets/betternether/models/block/mushroom_fence_inventory.json new file mode 100644 index 0000000..70bd237 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fence_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_inventory", + "textures": { + "texture": "betternether:block/mushroom_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fence_post.json b/src/main/resources/assets/betternether/models/block/mushroom_fence_post.json new file mode 100644 index 0000000..ff17160 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fence_post.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/reeds_fence_post", + "textures": { + "particle": "betternether:block/mushroom_fence_side", + "texture": "betternether:block/mushroom_fence_side", + "top": "betternether:block/mushroom_fence_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fence_side.json b/src/main/resources/assets/betternether/models/block/mushroom_fence_side.json new file mode 100644 index 0000000..2a69e09 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fence_side.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/reeds_fence_side", + "textures": { + "particle": "betternether:block/mushroom_fence_side", + "texture": "betternether:block/mushroom_fence_side", + "top": "betternether:block/mushroom_fence_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_branch.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_branch.json new file mode 100644 index 0000000..1c48ea1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_branch.json @@ -0,0 +1,81 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/mushroom_fir_top", + "texture": "betternether:block/mushroom_fir_top", + "side": "betternether:block/mushroom_fir_branch", + "bottom": "betternether:block/mushroom_fir_bottom" + }, + "elements": [ + { + "__comment": "Box2", + "from": [ 0, 9, 0 ], + "to": [ 16, 13, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 0, 16, 4 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 16, 4 ], "texture": "#side" }, + "west": { "uv": [ 0, 0, 16, 4 ], "texture": "#side" }, + "east": { "uv": [ 0, 0, 16, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box4", + "from": [ 6, 0, -6 ], + "to": [ 10, 4, 10 ], + "faces": { + "down": { "uv": [ 16, 12, 0, 16 ], "texture": "#side", "rotation": 90 }, + "up": { "uv": [ 16, 12, 0, 16 ], "texture": "#side", "rotation": 270 }, + "north": { "uv": [ 6, 12, 10, 16 ], "texture": "#side" }, + "south": { "uv": [ 6, 6, 10, 10 ], "texture": "#side" }, + "west": { "uv": [ 0, 12, 16, 16 ], "texture": "#side" }, + "east": { "uv": [ 16, 12, 0, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box4", + "from": [ 6, 4, 6 ], + "to": [ 10, 8, 10 ], + "faces": { + "north": { "uv": [ 6, 5, 10, 9 ], "texture": "#side" }, + "south": { "uv": [ 6, 5, 10, 9 ], "texture": "#side" }, + "west": { "uv": [ 6, 5, 10, 9 ], "texture": "#side" }, + "east": { "uv": [ 6, 5, 10, 9 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 1, 3, 1 ], + "to": [ 1.001, 8, 20.5 ], + "rotation": { "origin": [ 1, 3, 1 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 5, 16, 10 ], "texture": "#side" }, + "east": { "uv": [ 0, 5, 16, 10 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 15, 3, 1 ], + "to": [ 15.001, 8, 20.5 ], + "rotation": { "origin": [ 15, 3, 1 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 5, 16, 10 ], "texture": "#side" }, + "east": { "uv": [ 0, 5, 16, 10 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 1, 8, 1 ], + "to": [ 15, 9, 15 ], + "faces": { + "down": { "uv": [ 1, 1, 15, 15 ], "texture": "#bottom" }, + "north": { "uv": [ 1, 4, 15, 5 ], "texture": "#side" }, + "south": { "uv": [ 1, 4, 15, 5 ], "texture": "#side" }, + "west": { "uv": [ 1, 4, 15, 5 ], "texture": "#side" }, + "east": { "uv": [ 1, 4, 15, 5 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_branch_2.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_branch_2.json new file mode 100644 index 0000000..369366e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_branch_2.json @@ -0,0 +1,81 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/mushroom_fir_top", + "texture": "betternether:block/mushroom_fir_top", + "side": "betternether:block/mushroom_fir_branch", + "bottom": "betternether:block/mushroom_fir_bottom" + }, + "elements": [ + { + "__comment": "Box2", + "from": [ 1, 9, 1 ], + "to": [ 15, 13, 15 ], + "faces": { + "down": { "uv": [ 1, 1, 15, 15 ], "texture": "#bottom" }, + "up": { "uv": [ 1, 1, 15, 15 ], "texture": "#texture" }, + "north": { "uv": [ 1, 0, 15, 4 ], "texture": "#side" }, + "south": { "uv": [ 1, 0, 15, 4 ], "texture": "#side" }, + "west": { "uv": [ 1, 0, 15, 4 ], "texture": "#side" }, + "east": { "uv": [ 1, 0, 15, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box4", + "from": [ 6, 0, -6 ], + "to": [ 10, 4, 10 ], + "faces": { + "down": { "uv": [ 16, 12, 0, 16 ], "texture": "#side", "rotation": 90 }, + "up": { "uv": [ 16, 12, 0, 16 ], "texture": "#side", "rotation": 270 }, + "north": { "uv": [ 6, 12, 10, 16 ], "texture": "#side" }, + "south": { "uv": [ 6, 6, 10, 10 ], "texture": "#side" }, + "west": { "uv": [ 0, 12, 16, 16 ], "texture": "#side" }, + "east": { "uv": [ 16, 12, 0, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box4", + "from": [ 6, 4, 6 ], + "to": [ 10, 8, 10 ], + "faces": { + "north": { "uv": [ 6, 5, 10, 9 ], "texture": "#side" }, + "south": { "uv": [ 6, 5, 10, 9 ], "texture": "#side" }, + "west": { "uv": [ 6, 5, 10, 9 ], "texture": "#side" }, + "east": { "uv": [ 6, 5, 10, 9 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 2, 3, 2 ], + "to": [ 2.001, 8, 19 ], + "rotation": { "origin": [ 2, 3, 2 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 5, 16, 10 ], "texture": "#side" }, + "east": { "uv": [ 0, 5, 16, 10 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 14, 3, 2 ], + "to": [ 14.001, 8, 19 ], + "rotation": { "origin": [ 14, 3, 2 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 5, 16, 10 ], "texture": "#side" }, + "east": { "uv": [ 0, 5, 16, 10 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 2, 8, 2 ], + "to": [ 14, 9, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#bottom" }, + "north": { "uv": [ 2, 4, 14, 5 ], "texture": "#side" }, + "south": { "uv": [ 2, 4, 14, 5 ], "texture": "#side" }, + "west": { "uv": [ 2, 4, 14, 5 ], "texture": "#side" }, + "east": { "uv": [ 2, 4, 14, 5 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_branch_small.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_branch_small.json new file mode 100644 index 0000000..2641585 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_branch_small.json @@ -0,0 +1,61 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/mushroom_fir_top", + "texture": "betternether:block/mushroom_fir_top", + "side": "betternether:block/mushroom_fir_branch", + "bottom": "betternether:block/mushroom_fir_bottom" + }, + "elements": [ + { + "__comment": "Box2", + "from": [ 4, 6, 0 ], + "to": [ 12, 9, 8 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture" }, + "north": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "south": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "west": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "east": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box4", + "from": [ 7, 1, -7 ], + "to": [ 9, 3, 5 ], + "faces": { + "down": { "uv": [ 0, 13, 16, 15 ], "texture": "#side", "rotation": 90 }, + "up": { "uv": [ 0, 13, 16, 15 ], "texture": "#side", "rotation": 90 }, + "north": { "uv": [ 7, 13, 9, 15 ], "texture": "#side" }, + "south": { "uv": [ 7, 13, 9, 15 ], "texture": "#side" }, + "west": { "uv": [ 0, 13, 16, 15 ], "texture": "#side" }, + "east": { "uv": [ 0, 13, 16, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box4", + "from": [ 7, 3, 3 ], + "to": [ 9, 5, 5 ], + "faces": { + "north": { "uv": [ 7, 5, 9, 7 ], "texture": "#side" }, + "south": { "uv": [ 7, 5, 9, 7 ], "texture": "#side" }, + "west": { "uv": [ 7, 5, 9, 7 ], "texture": "#side" }, + "east": { "uv": [ 7, 5, 9, 7 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 5, 1 ], + "to": [ 11, 6, 7 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "south": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "west": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "east": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_branch_small_2.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_branch_small_2.json new file mode 100644 index 0000000..a358cba --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_branch_small_2.json @@ -0,0 +1,61 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/mushroom_fir_top", + "texture": "betternether:block/mushroom_fir_top", + "side": "betternether:block/mushroom_fir_branch", + "bottom": "betternether:block/mushroom_fir_bottom" + }, + "elements": [ + { + "__comment": "Box2", + "from": [ 3, 7, 0 ], + "to": [ 13, 10, 10 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture" }, + "north": { "uv": [ 3, 1, 13, 4 ], "texture": "#side" }, + "south": { "uv": [ 3, 1, 13, 4 ], "texture": "#side" }, + "west": { "uv": [ 3, 1, 13, 4 ], "texture": "#side" }, + "east": { "uv": [ 3, 1, 13, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box4", + "from": [ 7, 1, -7 ], + "to": [ 9, 3, 6 ], + "faces": { + "down": { "uv": [ 0, 13, 16, 15 ], "texture": "#side", "rotation": 90 }, + "up": { "uv": [ 0, 13, 16, 15 ], "texture": "#side", "rotation": 90 }, + "north": { "uv": [ 7, 13, 9, 15 ], "texture": "#side" }, + "south": { "uv": [ 7, 13, 9, 15 ], "texture": "#side" }, + "west": { "uv": [ 0, 13, 16, 15 ], "texture": "#side" }, + "east": { "uv": [ 0, 13, 16, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box4", + "from": [ 7, 3, 4 ], + "to": [ 9, 6, 6 ], + "faces": { + "north": { "uv": [ 7, 5, 9, 8 ], "texture": "#side" }, + "south": { "uv": [ 7, 5, 9, 8 ], "texture": "#side" }, + "west": { "uv": [ 7, 5, 9, 8 ], "texture": "#side" }, + "east": { "uv": [ 7, 5, 9, 8 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 6, 1 ], + "to": [ 11, 7, 9 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "north": { "uv": [ 4, 4, 12, 5 ], "texture": "#side" }, + "south": { "uv": [ 4, 4, 12, 5 ], "texture": "#side" }, + "west": { "uv": [ 4, 4, 12, 5 ], "texture": "#side" }, + "east": { "uv": [ 4, 4, 12, 5 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_button.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_button.json new file mode 100644 index 0000000..7590b96 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_button.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button", + "textures": { + "texture": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_button_inventory.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_button_inventory.json new file mode 100644 index 0000000..20e9d6f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_button_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_inventory", + "textures": { + "texture": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_button_pressed.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_button_pressed.json new file mode 100644 index 0000000..dc8fdef --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_button_pressed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_pressed", + "textures": { + "texture": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_door_bottom.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_door_bottom.json new file mode 100644 index 0000000..a1f7821 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_door_bottom.json @@ -0,0 +1,91 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/mushroom_fir_door_lower", + "front": "betternether:block/mushroom_fir_door_lower", + "side": "betternether:block/mushroom_fir_door_side" + }, + "elements": [ + { + "__comment": "Box18", + "from": [ 0, 0, 12 ], + "to": [ 3, 4, 16 ], + "faces": { + "down": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "down", "rotation": 180 }, + "up": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 0, 12, 3, 16 ], "texture": "#side" }, + "south": { "uv": [ 13, 12, 16, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 12, 12, 16, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 12, 0, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 0, 0 ], + "to": [ 3, 4, 4 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "cullface": "down", "rotation": 180 }, + "up": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 13, 12, 16, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 12, 4, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 12, 12, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 0, 4 ], + "to": [ 3, 2, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "down", "rotation": 180 }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "rotation": 180 }, + "west": { "uv": [ 4, 14, 12, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 14, 4, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 4, 14 ], + "to": [ 3, 16, 16 ], + "faces": { + "north": { "uv": [ 0, 0, 3, 12 ], "texture": "#side" }, + "south": { "uv": [ 13, 0, 16, 12 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 14, 0, 16, 12 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 0, 14, 12 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 4, 0 ], + "to": [ 3, 16, 2 ], + "faces": { + "north": { "uv": [ 0, 0, 3, 12 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 13, 0, 16, 12 ], "texture": "#side" }, + "west": { "uv": [ 0, 0, 2, 12 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 0, 0, 12 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 15, 2 ], + "to": [ 3, 16, 14 ], + "faces": { + "down": { "uv": [ 0, 2, 3, 14 ], "texture": "#side", "rotation": 180 }, + "west": { "uv": [ 2, 0, 14, 1 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 14, 0, 2, 1 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 1, 2, 2 ], + "to": [ 2, 15, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#side", "rotation": 180 }, + "north": { "uv": [ 1, 1, 2, 14 ], "texture": "#side" }, + "south": { "uv": [ 14, 1, 15, 14 ], "texture": "#side" }, + "west": { "uv": [ 2, 1, 14, 14 ], "texture": "#front" }, + "east": { "uv": [ 14, 1, 2, 14 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_door_bottom_rh.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_door_bottom_rh.json new file mode 100644 index 0000000..2a07f6f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_door_bottom_rh.json @@ -0,0 +1,91 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/mushroom_fir_door_lower", + "front": "betternether:block/mushroom_fir_door_lower", + "side": "betternether:block/mushroom_fir_door_side" + }, + "elements": [ + { + "__comment": "Box18", + "from": [ 0, 0, 0 ], + "to": [ 3, 4, 4 ], + "faces": { + "down": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "down" }, + "up": { "uv": [ 0, 0, 3, 4 ], "texture": "#side" }, + "north": { "uv": [ 13, 12, 16, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 12, 3, 16 ], "texture": "#side" }, + "west": { "uv": [ 4, 12, 0, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 12, 12, 16, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 0, 12 ], + "to": [ 3, 4, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "cullface": "down" }, + "up": { "uv": [ 0, 12, 3, 16 ], "texture": "#side" }, + "north": { "uv": [ 13, 12, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 12, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 16, 12, 12, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 12, 4, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 0, 4 ], + "to": [ 3, 2, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "down" }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side" }, + "west": { "uv": [ 12, 14, 4, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 14, 12, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 4, 0 ], + "to": [ 3, 16, 2 ], + "faces": { + "north": { "uv": [ 13, 0, 16, 12 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 12 ], "texture": "#side" }, + "west": { "uv": [ 16, 0, 14, 12 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 14, 0, 16, 12 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 4, 14 ], + "to": [ 3, 16, 16 ], + "faces": { + "north": { "uv": [ 13, 0, 16, 12 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 3, 12 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 2, 0, 0, 12 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 0, 2, 12 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 0, 15, 2 ], + "to": [ 3, 16, 14 ], + "faces": { + "down": { "uv": [ 0, 2, 3, 14 ], "texture": "#side" }, + "west": { "uv": [ 14, 0, 2, 1 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 0, 14, 1 ], "texture": "#front" } + } + }, + { + "__comment": "Box18", + "from": [ 1, 2, 2 ], + "to": [ 2, 15, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#side" }, + "north": { "uv": [ 14, 1, 15, 14 ], "texture": "#side" }, + "south": { "uv": [ 1, 1, 2, 14 ], "texture": "#side" }, + "west": { "uv": [ 14, 1, 2, 14 ], "texture": "#front" }, + "east": { "uv": [ 2, 1, 14, 14 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_door_top.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_door_top.json new file mode 100644 index 0000000..fb4e724 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_door_top.json @@ -0,0 +1,184 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/mushroom_fir_door_upper", + "front": "betternether:block/mushroom_fir_door_upper", + "side": "betternether:block/mushroom_fir_door_side" + }, + "elements": [ + { + "__comment": "Box11", + "from": [ 0, 12, 0 ], + "to": [ 3, 16, 4 ], + "faces": { + "down": { "uv": [ 1, 0, 4, 4 ], "texture": "#side" }, + "up": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "cullface": "up" }, + "north": { "uv": [ 13, 0, 16, 4 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 1, 0, 4, 4 ], "texture": "#side" }, + "west": { "uv": [ 4, 0, 0, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 0, 12, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 12, 12 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 1, 0, 4, 4 ], "texture": "#side" }, + "up": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "cullface": "up" }, + "north": { "uv": [ 13, 0, 16, 4 ], "texture": "#side" }, + "south": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 16, 0, 12, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 0, 0, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 14, 4 ], + "to": [ 3, 16, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#front" }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "up" }, + "west": { "uv": [ 4, 0, 12, 2 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 0, 12, 2 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 0 ], + "to": [ 3, 12, 2 ], + "faces": { + "north": { "uv": [ 13, 4, 16, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 4, 3, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 4, 2, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 4, 0, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 14 ], + "to": [ 3, 12, 16 ], + "faces": { + "north": { "uv": [ 13, 4, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 4, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 14, 4, 16, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 4, 14, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 2 ], + "to": [ 3, 1, 14 ], + "faces": { + "up": { "uv": [ 0, 2, 3, 14 ], "texture": "#side" }, + "west": { "uv": [ 2, 15, 14, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 15, 14, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 1, 2 ], + "to": [ 2, 3, 14 ], + "faces": { + "up": { "uv": [ 2, 2, 3, 14 ], "texture": "#front" }, + "west": { "uv": [ 2, 13, 14, 15 ], "texture": "#front" }, + "east": { "uv": [ 14, 13, 2, 15 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 11, 2 ], + "to": [ 2, 14, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#front" }, + "up": { "uv": [ 1, 2, 2, 14 ], "texture": "#front" }, + "north": { "uv": [ 14, 2, 15, 5 ], "texture": "#front" }, + "south": { "uv": [ 1, 2, 2, 5 ], "texture": "#front" }, + "west": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" }, + "east": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 2 ], + "to": [ 2, 11, 4 ], + "faces": { + "south": { "uv": [ 12, 5, 13, 13 ], "texture": "#front" }, + "west": { "uv": [ 14, 5, 12, 13 ], "texture": "#front" }, + "east": { "uv": [ 12, 5, 14, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 12 ], + "to": [ 2, 11, 14 ], + "faces": { + "north": { "uv": [ 3, 5, 4, 13 ], "texture": "#front" }, + "west": { "uv": [ 4, 5, 2, 13 ], "texture": "#front" }, + "east": { "uv": [ 2, 5, 4, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 6 ], + "to": [ 2, 11, 7 ], + "faces": { + "north": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "south": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "west": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "east": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 9 ], + "to": [ 2, 11, 10 ], + "faces": { + "north": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "south": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "west": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "east": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 10 ], + "to": [ 2, 4, 12 ], + "faces": { + "up": { "uv": [ 3, 10, 4, 12 ], "texture": "#front" }, + "west": { "uv": [ 6, 12, 4, 13 ], "texture": "#front" }, + "east": { "uv": [ 4, 12, 6, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 10 ], + "to": [ 2, 11, 12 ], + "faces": { + "down": { "uv": [ 1, 4, 2, 6 ], "texture": "#front" }, + "west": { "uv": [ 6, 5, 4, 6 ], "texture": "#front" }, + "east": { "uv": [ 4, 5, 6, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 4 ], + "to": [ 2, 11, 6 ], + "faces": { + "down": { "uv": [ 1, 10, 2, 12 ], "texture": "#front" }, + "west": { "uv": [ 12, 5, 10, 6 ], "texture": "#front" }, + "east": { "uv": [ 10, 5, 12, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 4 ], + "to": [ 2, 4, 6 ], + "faces": { + "up": { "uv": [ 2, 4, 3, 6 ], "texture": "#front" }, + "west": { "uv": [ 12, 12, 10, 13 ], "texture": "#front" }, + "east": { "uv": [ 10, 12, 12, 13 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_door_top_rh.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_door_top_rh.json new file mode 100644 index 0000000..2856d8e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_door_top_rh.json @@ -0,0 +1,184 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/mushroom_fir_door_upper", + "front": "betternether:block/mushroom_fir_door_upper", + "side": "betternether:block/mushroom_fir_door_side" + }, + "elements": [ + { + "__comment": "Box11", + "from": [ 0, 12, 12 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "cullface": "up", "rotation": 180 }, + "north": { "uv": [ 1, 0, 4, 4 ], "texture": "#side" }, + "south": { "uv": [ 13, 0, 16, 4 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 16, 0, 12, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 0, 0, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 12, 0 ], + "to": [ 3, 16, 4 ], + "faces": { + "down": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "rotation": 180 }, + "up": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "cullface": "up", "rotation": 180 }, + "north": { "uv": [ 1, 0, 4, 4 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 13, 0, 16, 4 ], "texture": "#side" }, + "west": { "uv": [ 4, 0, 0, 4 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 16, 0, 12, 4 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 14, 4 ], + "to": [ 3, 16, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 3, 12 ], "texture": "#front", "rotation": 180 }, + "up": { "uv": [ 0, 4, 3, 12 ], "texture": "#side", "cullface": "up", "rotation": 180 }, + "west": { "uv": [ 4, 0, 12, 2 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 4, 0, 12, 2 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 14 ], + "to": [ 3, 12, 16 ], + "faces": { + "north": { "uv": [ 0, 4, 3, 16 ], "texture": "#side" }, + "south": { "uv": [ 13, 4, 16, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 2, 4, 0, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 0, 4, 2, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 0 ], + "to": [ 3, 12, 2 ], + "faces": { + "north": { "uv": [ 0, 4, 3, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 13, 4, 16, 16 ], "texture": "#side" }, + "west": { "uv": [ 16, 4, 14, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 14, 4, 16, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 0, 0, 2 ], + "to": [ 3, 1, 14 ], + "faces": { + "up": { "uv": [ 0, 2, 3, 14 ], "texture": "#side", "rotation": 180 }, + "west": { "uv": [ 2, 15, 14, 16 ], "texture": "#front", "cullface": "west" }, + "east": { "uv": [ 2, 15, 14, 16 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 1, 2 ], + "to": [ 2, 3, 14 ], + "faces": { + "up": { "uv": [ 2, 2, 3, 14 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 14, 13, 2, 15 ], "texture": "#front" }, + "east": { "uv": [ 2, 13, 14, 15 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 11, 2 ], + "to": [ 2, 14, 14 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 14 ], "texture": "#front", "rotation": 180 }, + "up": { "uv": [ 1, 2, 2, 14 ], "texture": "#front", "rotation": 180 }, + "north": { "uv": [ 1, 2, 2, 5 ], "texture": "#front" }, + "south": { "uv": [ 14, 2, 15, 5 ], "texture": "#front" }, + "west": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" }, + "east": { "uv": [ 2, 2, 14, 5 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 12 ], + "to": [ 2, 11, 14 ], + "faces": { + "north": { "uv": [ 12, 5, 13, 13 ], "texture": "#front" }, + "west": { "uv": [ 12, 5, 14, 13 ], "texture": "#front" }, + "east": { "uv": [ 14, 5, 12, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 2 ], + "to": [ 2, 11, 4 ], + "faces": { + "south": { "uv": [ 3, 5, 4, 13 ], "texture": "#front" }, + "west": { "uv": [ 2, 5, 4, 13 ], "texture": "#front" }, + "east": { "uv": [ 4, 5, 2, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 9 ], + "to": [ 2, 11, 10 ], + "faces": { + "north": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "south": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "west": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" }, + "east": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 6 ], + "to": [ 2, 11, 7 ], + "faces": { + "north": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "south": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "west": { "uv": [ 6, 5, 7, 13 ], "texture": "#front" }, + "east": { "uv": [ 9, 5, 10, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 4 ], + "to": [ 2, 4, 6 ], + "faces": { + "up": { "uv": [ 3, 10, 4, 12 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 4, 12, 6, 13 ], "texture": "#front" }, + "east": { "uv": [ 6, 12, 4, 13 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 4 ], + "to": [ 2, 11, 6 ], + "faces": { + "down": { "uv": [ 1, 4, 2, 6 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 4, 5, 6, 6 ], "texture": "#front" }, + "east": { "uv": [ 6, 5, 4, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 10, 10 ], + "to": [ 2, 11, 12 ], + "faces": { + "down": { "uv": [ 1, 10, 2, 12 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 10, 5, 12, 6 ], "texture": "#front" }, + "east": { "uv": [ 12, 5, 10, 6 ], "texture": "#front" } + } + }, + { + "__comment": "Box11", + "from": [ 1, 3, 10 ], + "to": [ 2, 4, 12 ], + "faces": { + "up": { "uv": [ 2, 4, 3, 6 ], "texture": "#front", "rotation": 180 }, + "west": { "uv": [ 10, 12, 12, 13 ], "texture": "#front" }, + "east": { "uv": [ 12, 12, 10, 13 ], "texture": "#front" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_end.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_end.json new file mode 100644 index 0000000..005cf62 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_end.json @@ -0,0 +1,232 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/mushroom_fir_top", + "texture": "betternether:block/mushroom_fir_top", + "side": "betternether:block/mushroom_fir_branch", + "bottom": "betternether:block/mushroom_fir_bottom", + "bark": "betternether:block/mushroom_fir_bark" + }, + "elements": [ + { + "__comment": "Box2", + "from": [ 5, 14, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#bottom" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture" }, + "north": { "uv": [ 5, 2, 11, 4 ], "texture": "#side" }, + "south": { "uv": [ 5, 2, 11, 4 ], "texture": "#side" }, + "west": { "uv": [ 5, 2, 11, 4 ], "texture": "#side" }, + "east": { "uv": [ 5, 2, 11, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box5", + "from": [ 7, 0, 7 ], + "to": [ 9, 13, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#bark" }, + "north": { "uv": [ 7, 3, 9, 16 ], "texture": "#bark" }, + "south": { "uv": [ 7, 3, 9, 16 ], "texture": "#bark" }, + "west": { "uv": [ 7, 3, 9, 16 ], "texture": "#bark" }, + "east": { "uv": [ 7, 3, 9, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "Box2", + "from": [ 3, 8, 8 ], + "to": [ 11, 11, 16 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture" }, + "north": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "south": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "west": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "east": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 4, 7, 9 ], + "to": [ 10, 8, 15 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "south": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "west": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "east": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 0, 2, 0 ], + "to": [ 8, 5, 8 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture" }, + "north": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "south": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "west": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "east": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 1, 1, 1 ], + "to": [ 7, 2, 7 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "south": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "west": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "east": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 10, 6, 2 ], + "to": [ 18, 9, 10 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture" }, + "north": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "south": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "west": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "east": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 11, 5, 3 ], + "to": [ 17, 6, 9 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "south": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "west": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "east": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" } + } + }, + { + "__comment": "Box5", + "from": [ 6, 5, 11 ], + "to": [ 8, 7, 13 ], + "faces": { + "down": { "uv": [ 6, 3, 8, 5 ], "texture": "#bark" }, + "north": { "uv": [ 8, 9, 10, 11 ], "texture": "#bark" }, + "south": { "uv": [ 6, 9, 8, 11 ], "texture": "#bark" }, + "west": { "uv": [ 11, 9, 13, 11 ], "texture": "#bark" }, + "east": { "uv": [ 3, 9, 5, 11 ], "texture": "#bark" } + } + }, + { + "__comment": "Box5", + "from": [ 6.5, 3, 9 ], + "to": [ 8.5, 5, 13 ], + "faces": { + "down": { "uv": [ 6.5, 3, 8.5, 7 ], "texture": "#bark" }, + "up": { "uv": [ 6.5, 9, 8.5, 13 ], "texture": "#bark" }, + "north": { "uv": [ 7.5, 11, 9.5, 13 ], "texture": "#bark" }, + "south": { "uv": [ 6.5, 11, 8.5, 13 ], "texture": "#bark" }, + "west": { "uv": [ 9, 11, 13, 13 ], "texture": "#bark" }, + "east": { "uv": [ 3, 11, 7, 13 ], "texture": "#bark" } + } + }, + { + "__comment": "Box5", + "from": [ 9, 3, 7 ], + "to": [ 12.5, 5, 9 ], + "faces": { + "down": { "uv": [ 9, 7, 12.5, 9 ], "texture": "#bark" }, + "up": { "uv": [ 9, 7, 12.5, 9 ], "texture": "#bark" }, + "north": { "uv": [ 3.5, 11, 7, 13 ], "texture": "#bark" }, + "south": { "uv": [ 9, 11, 12.5, 13 ], "texture": "#bark" }, + "east": { "uv": [ 7, 11, 9, 13 ], "texture": "#bark" } + } + }, + { + "__comment": "Box5", + "from": [ 11.5, 3, 6 ], + "to": [ 14, 5, 8 ], + "faces": { + "down": { "uv": [ 11.5, 8, 14, 10 ], "texture": "#bark" }, + "north": { "uv": [ 2, 11, 4.5, 13 ], "texture": "#bark" }, + "south": { "uv": [ 11.5, 11, 14, 13 ], "texture": "#bark" }, + "west": { "uv": [ 6, 11, 8, 13 ], "texture": "#bark" }, + "east": { "uv": [ 8, 11, 10, 13 ], "texture": "#bark" } + } + }, + { + "__comment": "Box5", + "from": [ 13, 3, 5 ], + "to": [ 15, 5, 7 ], + "faces": { + "down": { "uv": [ 13, 9, 15, 11 ], "texture": "#bark" }, + "north": { "uv": [ 1, 11, 3, 13 ], "texture": "#bark" }, + "south": { "uv": [ 13, 11, 15, 13 ], "texture": "#bark" }, + "west": { "uv": [ 5, 11, 7, 13 ], "texture": "#bark" }, + "east": { "uv": [ 9, 11, 11, 13 ], "texture": "#bark" } + } + }, + { + "__comment": "Box2", + "from": [ 6, 13, 6 ], + "to": [ 10, 14, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#bottom" }, + "north": { "uv": [ 6, 4, 10, 5 ], "texture": "#side" }, + "south": { "uv": [ 6, 4, 10, 5 ], "texture": "#side" }, + "west": { "uv": [ 6, 4, 10, 5 ], "texture": "#side" }, + "east": { "uv": [ 6, 4, 10, 5 ], "texture": "#side" } + } + }, + { + "__comment": "Box5", + "from": [ 7, 0, 9 ], + "to": [ 9, 4, 10 ], + "faces": { + "down": { "uv": [ 7, 6, 9, 7 ], "texture": "#bark" }, + "up": { "uv": [ 7, 9, 9, 10 ], "texture": "#bark" }, + "south": { "uv": [ 7, 12, 9, 16 ], "texture": "#bark" }, + "west": { "uv": [ 9, 12, 10, 16 ], "texture": "#bark" }, + "east": { "uv": [ 6, 12, 7, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "Box5", + "from": [ 7, 0, 6 ], + "to": [ 9, 7, 7 ], + "faces": { + "down": { "uv": [ 7, 9, 9, 10 ], "texture": "#bark" }, + "north": { "uv": [ 7, 9, 9, 16 ], "texture": "#bark" }, + "west": { "uv": [ 6, 9, 7, 16 ], "texture": "#bark" }, + "east": { "uv": [ 9, 9, 10, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "Box5", + "from": [ 9, 0, 7 ], + "to": [ 10, 3, 9 ], + "faces": { + "down": { "uv": [ 9, 7, 10, 9 ], "texture": "#bark" }, + "north": { "uv": [ 6, 13, 7, 16 ], "texture": "#bark" }, + "south": { "uv": [ 9, 13, 10, 16 ], "texture": "#bark" }, + "east": { "uv": [ 7, 13, 9, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "Box5", + "from": [ 6, 0, 7 ], + "to": [ 7, 4, 9 ], + "faces": { + "down": { "uv": [ 6, 7, 7, 9 ], "texture": "#bark" }, + "up": { "uv": [ 6, 7, 7, 9 ], "texture": "#bark" }, + "north": { "uv": [ 9, 12, 10, 16 ], "texture": "#bark" }, + "south": { "uv": [ 6, 12, 7, 16 ], "texture": "#bark" }, + "west": { "uv": [ 7, 12, 9, 16 ], "texture": "#bark" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_gate_closed.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_gate_closed.json new file mode 100644 index 0000000..1c7edad --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate", + "textures": { + "texture": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_gate_open.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_gate_open.json new file mode 100644 index 0000000..2c43e9c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_open", + "textures": { + "texture": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_inventory.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_inventory.json new file mode 100644 index 0000000..67ba92f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_inventory", + "textures": { + "texture": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_post.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_post.json new file mode 100644 index 0000000..28a72dd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_post.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_post", + "textures": { + "texture": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_side.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_side.json new file mode 100644 index 0000000..7d49ee0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_fence_side.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_side", + "textures": { + "texture": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_half_slab.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_half_slab.json new file mode 100644 index 0000000..b1dd766 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/mushroom_fir_planks", + "top": "betternether:block/mushroom_fir_planks", + "side": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_inner_stairs.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_inner_stairs.json new file mode 100644 index 0000000..dd83d1f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/mushroom_fir_planks", + "top": "betternether:block/mushroom_fir_planks", + "side": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_ladder.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_ladder.json new file mode 100644 index 0000000..6b0f5d8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_ladder.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/reeds_ladder", + "textures": { + "particle": "betternether:block/mushroom_fir_ladder", + "texture": "betternether:block/mushroom_fir_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_log.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_log.json new file mode 100644 index 0000000..91cfa5c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_log.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/mushroom_fir_bark", + "down": "betternether:block/mushroom_fir_log_top", + "up": "betternether:block/mushroom_fir_log_top", + "north": "betternether:block/mushroom_fir_bark", + "east": "betternether:block/mushroom_fir_bark", + "south": "betternether:block/mushroom_fir_bark", + "west": "betternether:block/mushroom_fir_bark" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_outer_stairs.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_outer_stairs.json new file mode 100644 index 0000000..957df6a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/mushroom_fir_planks", + "top": "betternether:block/mushroom_fir_planks", + "side": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_planks.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_planks.json new file mode 100644 index 0000000..3f06cda --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_planks.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_pressure_plate_down.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_pressure_plate_down.json new file mode 100644 index 0000000..9d80fe8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_down", + "textures": { + "texture": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_pressure_plate_up.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_pressure_plate_up.json new file mode 100644 index 0000000..69a3fa4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_pressure_plate_up.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_up", + "textures": { + "texture": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_sapling.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_sapling.json new file mode 100644 index 0000000..293d333 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/mushroom_fir_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_stairs.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_stairs.json new file mode 100644 index 0000000..11ebf70 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/mushroom_fir_planks", + "top": "betternether:block/mushroom_fir_planks", + "side": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_trapdoor.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_trapdoor.json new file mode 100644 index 0000000..6a066b1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_trapdoor.json @@ -0,0 +1,67 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/mushroom_fir_trapdoor", + "texture": "betternether:block/mushroom_fir_trapdoor" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 3, 3, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture" }, + "north": { "uv": [ 13, 13, 16, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 13, 3, 16 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 13, 0, 0 ], + "to": [ 16, 3, 16 ], + "faces": { + "down": { "uv": [ 13, 0, 16, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 13, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 13, 3, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 13, 13, 16, 16 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 0 ], + "to": [ 13, 3, 3 ], + "faces": { + "down": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 3, 0, 13, 3 ], "texture": "#texture" }, + "north": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 13 ], + "to": [ 13, 3, 16 ], + "faces": { + "down": { "uv": [ 3, 0, 13, 3 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture" }, + "north": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture", "cullface": "south" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 1, 3 ], + "to": [ 13, 2, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_bottom.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_bottom.json new file mode 100644 index 0000000..c784491 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_bottom.json @@ -0,0 +1,71 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/mushroom_fir_bark", + "texture": "betternether:block/mushroom_fir_bark", + "cuts": "betternether:block/mushroom_fir_cuts" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 16, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 8, 8 ], "texture": "#cuts" }, + "north": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "west": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 0, 2 ], + "to": [ 11, 7, 4 ], + "faces": { + "down": { "uv": [ 6, 12, 11, 14 ], "texture": "#texture" }, + "up": { "uv": [ 6, 2, 11, 4 ], "texture": "#texture" }, + "north": { "uv": [ 5, 9, 10, 16 ], "texture": "#texture" }, + "west": { "uv": [ 2, 9, 4, 16 ], "texture": "#texture" }, + "east": { "uv": [ 12, 9, 14, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5.5, 0, 12 ], + "to": [ 9, 5, 14 ], + "faces": { + "down": { "uv": [ 5.5, 2, 9, 4 ], "texture": "#texture" }, + "up": { "uv": [ 5.5, 12, 9, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5.5, 11, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 12, 11, 14, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 11, 4, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 0, 6 ], + "to": [ 14, 3, 10 ], + "faces": { + "down": { "uv": [ 12, 6, 14, 10 ], "texture": "#texture" }, + "up": { "uv": [ 12, 6, 14, 10 ], "texture": "#texture" }, + "north": { "uv": [ 2, 13, 4, 16 ], "texture": "#texture" }, + "south": { "uv": [ 12, 13, 14, 16 ], "texture": "#texture" }, + "east": { "uv": [ 6, 13, 10, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 7 ], + "to": [ 4, 7, 11 ], + "faces": { + "down": { "uv": [ 2, 5, 4, 9 ], "texture": "#texture" }, + "up": { "uv": [ 2, 7, 4, 11 ], "texture": "#texture" }, + "north": { "uv": [ 12, 9, 14, 16 ], "texture": "#texture" }, + "south": { "uv": [ 2, 9, 4, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 9, 11, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_middle.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_middle.json new file mode 100644 index 0000000..4bd55a2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_middle.json @@ -0,0 +1,24 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/mushroom_fir_bark", + "texture": "betternether:block/mushroom_fir_bark", + "cuts": "betternether:block/mushroom_fir_cuts" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "uv": [ 8, 0, 14, 6 ], "texture": "#cuts" }, + "up": { "uv": [ 8, 0, 14, 6 ], "texture": "#cuts" }, + "north": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_middle_2.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_middle_2.json new file mode 100644 index 0000000..7c2c91c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_middle_2.json @@ -0,0 +1,77 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/mushroom_fir_bark", + "texture": "betternether:block/mushroom_fir_bark", + "cuts": "betternether:block/mushroom_fir_cuts", + "top": "betternether:block/mushroom_fir_top", + "side": "betternether:block/mushroom_fir_branch", + "bottom": "betternether:block/mushroom_fir_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "uv": [ 8, 0, 14, 6 ], "texture": "#cuts" }, + "up": { "uv": [ 8, 0, 14, 6 ], "texture": "#cuts" }, + "north": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 0, 10, 0 ], + "to": [ 8, 13, 8 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "south": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "west": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "east": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 1, 9, 1 ], + "to": [ 7, 10, 7 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "south": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "west": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "east": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 7, 3, 8 ], + "to": [ 15, 6, 16 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "south": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "west": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "east": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 8, 2, 9 ], + "to": [ 14, 3, 15 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "south": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "west": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "east": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_middle_3.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_middle_3.json new file mode 100644 index 0000000..db7b7eb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_middle_3.json @@ -0,0 +1,102 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/mushroom_fir_bark", + "texture": "betternether:block/mushroom_fir_bark", + "cuts": "betternether:block/mushroom_fir_cuts", + "top": "betternether:block/mushroom_fir_top", + "side": "betternether:block/mushroom_fir_branch", + "bottom": "betternether:block/mushroom_fir_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "uv": [ 8, 0, 14, 6 ], "texture": "#cuts" }, + "up": { "uv": [ 8, 0, 14, 6 ], "texture": "#cuts" }, + "north": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 0, 8, 0 ], + "to": [ 8, 11, 8 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "south": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "west": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" }, + "east": { "uv": [ 4, 1, 12, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 1, 7, 1 ], + "to": [ 7, 8, 7 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "south": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "west": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" }, + "east": { "uv": [ 5, 4, 11, 5 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 6.5, 2, 9 ], + "to": [ 12.5, 5, 15 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "north": { "uv": [ 5, 1, 11, 4 ], "texture": "#side" }, + "south": { "uv": [ 5, 1, 11, 4 ], "texture": "#side" }, + "west": { "uv": [ 5, 1, 11, 4 ], "texture": "#side" }, + "east": { "uv": [ 5, 1, 11, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 7.5, 1, 10 ], + "to": [ 11.5, 2, 14 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 6, 4, 10, 5 ], "texture": "#side" }, + "south": { "uv": [ 6, 4, 10, 5 ], "texture": "#side" }, + "west": { "uv": [ 6, 4, 10, 5 ], "texture": "#side" }, + "east": { "uv": [ 6, 4, 10, 5 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 8, 11, 7 ], + "to": [ 14, 14, 13 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "north": { "uv": [ 5, 1, 11, 4 ], "texture": "#side" }, + "south": { "uv": [ 5, 1, 11, 4 ], "texture": "#side" }, + "west": { "uv": [ 5, 1, 11, 4 ], "texture": "#side" }, + "east": { "uv": [ 5, 1, 11, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 9, 10, 8 ], + "to": [ 13, 11, 12 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 6, 4, 10, 5 ], "texture": "#side" }, + "south": { "uv": [ 6, 4, 10, 5 ], "texture": "#side" }, + "west": { "uv": [ 6, 4, 10, 5 ], "texture": "#side" }, + "east": { "uv": [ 6, 4, 10, 5 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_top.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_top.json new file mode 100644 index 0000000..7bb4c64 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_top.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/mushroom_fir_bark", + "texture": "betternether:block/mushroom_fir_bark", + "cuts": "betternether:block/mushroom_fir_cuts" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "down": { "uv": [ 0, 8, 4, 12 ], "texture": "#cuts" }, + "up": { "uv": [ 0, 8, 4, 12 ], "texture": "#cuts" }, + "north": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "south": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "west": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "east": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_top_2.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_top_2.json new file mode 100644 index 0000000..f6f7ef6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_trunk_top_2.json @@ -0,0 +1,76 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/mushroom_fir_bark", + "texture": "betternether:block/mushroom_fir_bark", + "cuts": "betternether:block/mushroom_fir_cuts", + "side": "betternether:block/mushroom_fir_branch", + "top": "betternether:block/mushroom_fir_top", + "bottom": "betternether:block/mushroom_fir_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "down": { "uv": [ 0, 8, 4, 12 ], "texture": "#cuts" }, + "up": { "uv": [ 0, 8, 4, 12 ], "texture": "#cuts" }, + "north": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "south": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "west": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "east": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 3, 10, 3 ], + "to": [ 8, 12, 8 ], + "faces": { + "down": { "uv": [ 5, 6, 10, 11 ], "texture": "#bottom" }, + "up": { "uv": [ 6, 4, 11, 9 ], "texture": "#top" }, + "north": { "uv": [ 6, 2, 11, 4 ], "texture": "#side" }, + "south": { "uv": [ 5, 2, 10, 4 ], "texture": "#side" }, + "west": { "uv": [ 7, 2, 12, 4 ], "texture": "#side" }, + "east": { "uv": [ 6, 2, 11, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 7, 5, 8 ], + "to": [ 12, 7, 13 ], + "faces": { + "down": { "uv": [ 5, 6, 10, 11 ], "texture": "#bottom" }, + "up": { "uv": [ 6, 4, 11, 9 ], "texture": "#top" }, + "north": { "uv": [ 6, 2, 11, 4 ], "texture": "#side" }, + "south": { "uv": [ 5, 2, 10, 4 ], "texture": "#side" }, + "west": { "uv": [ 7, 2, 12, 4 ], "texture": "#side" }, + "east": { "uv": [ 6, 2, 11, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 4, 9, 4 ], + "to": [ 7, 10, 7 ], + "faces": { + "down": { "uv": [ 6, 7, 9, 10 ], "texture": "#bottom" }, + "north": { "uv": [ 7, 4, 10, 5 ], "texture": "#side" }, + "south": { "uv": [ 7, 4, 10, 5 ], "texture": "#side" }, + "west": { "uv": [ 7, 4, 10, 5 ], "texture": "#side" }, + "east": { "uv": [ 7, 4, 10, 5 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 8, 4, 9 ], + "to": [ 11, 5, 12 ], + "faces": { + "down": { "uv": [ 6, 7, 9, 10 ], "texture": "#bottom" }, + "north": { "uv": [ 7, 4, 10, 5 ], "texture": "#side" }, + "south": { "uv": [ 7, 4, 10, 5 ], "texture": "#side" }, + "west": { "uv": [ 7, 4, 10, 5 ], "texture": "#side" }, + "east": { "uv": [ 7, 4, 10, 5 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_wall_gate_closed.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_wall_gate_closed.json new file mode 100644 index 0000000..e3f93e1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_wall_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall", + "textures": { + "texture": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_wall_gate_open.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_wall_gate_open.json new file mode 100644 index 0000000..141067a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_wall_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall_open", + "textures": { + "texture": "betternether:block/mushroom_fir_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_fir_wood.json b/src/main/resources/assets/betternether/models/block/mushroom_fir_wood.json new file mode 100644 index 0000000..45748bf --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_fir_wood.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/mushroom_fir_bark" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_grass.json b/src/main/resources/assets/betternether/models/block/mushroom_grass.json new file mode 100644 index 0000000..9605bd4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_grass.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/mushroom_grass_side", + "down": "block/netherrack", + "up": "betternether:block/mushroom_grass_top", + "north": "betternether:block/mushroom_grass_side", + "east": "betternether:block/mushroom_grass_side", + "south": "betternether:block/mushroom_grass_side", + "west": "betternether:block/mushroom_grass_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_half_slab.json b/src/main/resources/assets/betternether/models/block/mushroom_half_slab.json new file mode 100644 index 0000000..045f7ec --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/mushroom_planks", + "top": "betternether:block/mushroom_planks", + "side": "betternether:block/mushroom_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_inner_stairs.json b/src/main/resources/assets/betternether/models/block/mushroom_inner_stairs.json new file mode 100644 index 0000000..764493c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/mushroom_planks", + "top": "betternether:block/mushroom_planks", + "side": "betternether:block/mushroom_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_ladder.json b/src/main/resources/assets/betternether/models/block/mushroom_ladder.json new file mode 100644 index 0000000..6d29acb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_ladder.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/reeds_ladder", + "textures": { + "particle": "betternether:block/mushroom_ladder", + "texture": "betternether:block/mushroom_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_outer_stairs.json b/src/main/resources/assets/betternether/models/block/mushroom_outer_stairs.json new file mode 100644 index 0000000..0a63612 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/mushroom_planks", + "top": "betternether:block/mushroom_planks", + "side": "betternether:block/mushroom_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_planks.json b/src/main/resources/assets/betternether/models/block/mushroom_planks.json new file mode 100644 index 0000000..ef1a2f4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_planks.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/mushroom_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_pressure_plate_down.json b/src/main/resources/assets/betternether/models/block/mushroom_pressure_plate_down.json new file mode 100644 index 0000000..cd58fdf --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_down", + "textures": { + "texture": "betternether:block/mushroom_plate" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_pressure_plate_up.json b/src/main/resources/assets/betternether/models/block/mushroom_pressure_plate_up.json new file mode 100644 index 0000000..a68755e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_pressure_plate_up.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_up", + "textures": { + "texture": "betternether:block/mushroom_plate" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_stairs.json b/src/main/resources/assets/betternether/models/block/mushroom_stairs.json new file mode 100644 index 0000000..f90924b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/mushroom_planks", + "top": "betternether:block/mushroom_planks", + "side": "betternether:block/mushroom_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_stem.json b/src/main/resources/assets/betternether/models/block/mushroom_stem.json new file mode 100644 index 0000000..dc421f0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_stem.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/stalagnate", + "textures": + { + "side": "betternether:block/mushroom_stem_side", + "top": "betternether:block/mushroom_stem_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_trapdoor.json b/src/main/resources/assets/betternether/models/block/mushroom_trapdoor.json new file mode 100644 index 0000000..079d653 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_trapdoor.json @@ -0,0 +1,89 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/mushroom_trapdoor", + "texture": "betternether:block/mushroom_trapdoor", + "side": "betternether:block/mushroom_door_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 2, 3, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 2, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 2, 16 ], "texture": "#texture" }, + "north": { "uv": [ 14, 13, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 13, 2, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 13, 16, 16 ], "texture": "#side" }, + "east": { "uv": [ 0, 13, 16, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 0, 0 ], + "to": [ 16, 3, 16 ], + "faces": { + "down": { "uv": [ 14, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 14, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 13, 2, 16 ], "texture": "#side" }, + "south": { "uv": [ 14, 13, 16, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 13, 16, 16 ], "texture": "#side" }, + "east": { "uv": [ 0, 13, 16, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 0 ], + "to": [ 14, 3, 2 ], + "faces": { + "down": { "uv": [ 2, 14, 14, 16 ], "texture": "#texture" }, + "up": { "uv": [ 2, 0, 14, 2 ], "texture": "#texture" }, + "north": { "uv": [ 2, 13, 14, 16 ], "texture": "#side" }, + "south": { "uv": [ 2, 13, 14, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 13, 2, 16 ], "texture": "#side" }, + "east": { "uv": [ 14, 13, 16, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 14 ], + "to": [ 14, 3, 16 ], + "faces": { + "down": { "uv": [ 2, 0, 14, 2 ], "texture": "#texture" }, + "up": { "uv": [ 2, 14, 14, 16 ], "texture": "#texture" }, + "north": { "uv": [ 2, 13, 14, 16 ], "texture": "#side" }, + "south": { "uv": [ 2, 13, 14, 16 ], "texture": "#side" }, + "west": { "uv": [ 14, 13, 16, 16 ], "texture": "#side" }, + "east": { "uv": [ 0, 13, 2, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 1, 2 ], + "to": [ 14, 2, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "north": { "uv": [ 2, 14, 14, 15 ], "texture": "#side" }, + "south": { "uv": [ 2, 14, 14, 15 ], "texture": "#side" }, + "west": { "uv": [ 2, 14, 14, 15 ], "texture": "#side" }, + "east": { "uv": [ 2, 14, 14, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 13, 3, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture" }, + "north": { "uv": [ 3, 13, 13, 16 ], "texture": "#side" }, + "south": { "uv": [ 3, 13, 13, 16 ], "texture": "#side" }, + "west": { "uv": [ 3, 13, 13, 16 ], "texture": "#side" }, + "east": { "uv": [ 3, 13, 13, 16 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/mushroom_wall_gate_closed.json b/src/main/resources/assets/betternether/models/block/mushroom_wall_gate_closed.json new file mode 100644 index 0000000..4d51da6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_wall_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall", + "textures": { + "texture": "betternether:block/mushroom_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/mushroom_wall_gate_open.json b/src/main/resources/assets/betternether/models/block/mushroom_wall_gate_open.json new file mode 100644 index 0000000..b5661a0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/mushroom_wall_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall_open", + "textures": { + "texture": "betternether:block/mushroom_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/neon_equisetum_bottom.json b/src/main/resources/assets/betternether/models/block/neon_equisetum_bottom.json new file mode 100644 index 0000000..89f1cf9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/neon_equisetum_bottom.json @@ -0,0 +1,31 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/neon_equisetum_bottom", + "texture": "betternether:block/neon_equisetum_bottom" + }, + "elements": [ + { + "__comment": "PlaneX2", + "from": [ 2.5, 0, 2.5 ], + "to": [ 18.5, 16, 2.501 ], + "rotation": { "origin": [ 2.5, 0, 2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX2", + "from": [ -2, 0, 2 ], + "to": [ 14, 16, 2.001 ], + "rotation": { "origin": [ 14, 0, 2 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/neon_equisetum_middle.json b/src/main/resources/assets/betternether/models/block/neon_equisetum_middle.json new file mode 100644 index 0000000..2adfefe --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/neon_equisetum_middle.json @@ -0,0 +1,165 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/neon_equisetum", + "texture": "betternether:block/neon_equisetum_middle", + "stem": "betternether:block/neon_equisetum_stem", + "leaf_2": "betternether:block/neon_equisetum_middle_2" + }, + "elements": [ + { + "__comment": "PlaneX2", + "from": [ 2.5, 0, 2.5 ], + "to": [ 2.501, 16, 18.5 ], + "rotation": { "origin": [ 2.5, 0, 2.5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#stem" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 13.5, 0, 2.5 ], + "to": [ 13.501, 16, 18.5 ], + "rotation": { "origin": [ 13.5, 0, 2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#stem" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "PlaneX19", + "from": [ 8.5, -0.001, 0 ], + "to": [ 24.5, 0, 16 ], + "rotation": { "origin": [ 8.5, 0, 0 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneX19", + "from": [ -8.5, 0.0001, 0 ], + "to": [ 7.5, 0.0011, 16 ], + "rotation": { "origin": [ 7.5, 0, 0 ], "axis": "z", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneZ21", + "from": [ 0, -0.001, 8.5 ], + "to": [ 16, 0, 24.5 ], + "rotation": { "origin": [ 0, 0, 8.5 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ21", + "from": [ 0, 0, -8.5 ], + "to": [ 16, 0.001, 7.5 ], + "rotation": { "origin": [ 0, 0, 7.5 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX19", + "from": [ 8.5, 5.999, 0 ], + "to": [ 24.5, 6, 16 ], + "rotation": { "origin": [ 8.5, 6, 0 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneX19", + "from": [ -8.5, 6.0001, 0 ], + "to": [ 7.5, 6.0011, 16 ], + "rotation": { "origin": [ 7.5, 6, 0 ], "axis": "z", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneZ21", + "from": [ 0, 5.999, 8.5 ], + "to": [ 16, 6, 24.5 ], + "rotation": { "origin": [ 0, 6, 8.5 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ21", + "from": [ 0, 6, -8.5 ], + "to": [ 16, 6.001, 7.5 ], + "rotation": { "origin": [ 0, 6, 7.5 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX19", + "from": [ 8.5, 11.999, 0 ], + "to": [ 24.5, 12, 16 ], + "rotation": { "origin": [ 8.5, 12, 0 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaf_2", "rotation": 90 }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#leaf_2", "rotation": 270 } + } + }, + { + "__comment": "PlaneX19", + "from": [ -8.5, 12.0001, 0 ], + "to": [ 7.5, 12.0011, 16 ], + "rotation": { "origin": [ 7.5, 12, 0 ], "axis": "z", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#leaf_2", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaf_2", "rotation": 270 } + } + }, + { + "__comment": "PlaneZ21", + "from": [ 0, 11.999, 8.5 ], + "to": [ 16, 12, 24.5 ], + "rotation": { "origin": [ 0, 12, 8.5 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaf_2" }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#leaf_2" } + } + }, + { + "__comment": "PlaneZ21", + "from": [ 0, 12, -8.5 ], + "to": [ 16, 12.001, 7.5 ], + "rotation": { "origin": [ 0, 12, 7.5 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#leaf_2" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaf_2" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/neon_equisetum_top.json b/src/main/resources/assets/betternether/models/block/neon_equisetum_top.json new file mode 100644 index 0000000..af13f0b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/neon_equisetum_top.json @@ -0,0 +1,164 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/neon_equisetum", + "texture": "betternether:block/neon_equisetum", + "stem": "betternether:block/neon_equisetum_stem" + }, + "elements": [ + { + "__comment": "PlaneX2", + "from": [ 2.5, 0, 2.5 ], + "to": [ 2.501, 16, 18.5 ], + "rotation": { "origin": [ 2.5, 0, 2.5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#stem" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 13.5, 0, 2.5 ], + "to": [ 13.501, 16, 18.5 ], + "rotation": { "origin": [ 13.5, 0, 2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#stem" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "PlaneX19", + "from": [ 8.5, -0.001, 0 ], + "to": [ 24.5, 0, 16 ], + "rotation": { "origin": [ 8.5, 0, 0 ], "axis": "z", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneX19", + "from": [ -8.5, 0, 0 ], + "to": [ 7.5, 0.001, 16 ], + "rotation": { "origin": [ 7.5, 0, 0 ], "axis": "z", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneZ21", + "from": [ 0, -0.001, 8.5 ], + "to": [ 16, 0, 24.5 ], + "rotation": { "origin": [ 0, 0, 8.5 ], "axis": "x", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ21", + "from": [ 0, 0, -8.5 ], + "to": [ 16, 0.001, 7.5 ], + "rotation": { "origin": [ 0, 0, 7.5 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX19", + "from": [ 8.5, 5.999, 0 ], + "to": [ 24.5, 6, 16 ], + "rotation": { "origin": [ 8.5, 6, 0 ], "axis": "z", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneX19", + "from": [ -8.5, 6, 0 ], + "to": [ 7.5, 6.001, 16 ], + "rotation": { "origin": [ 7.5, 6, 0 ], "axis": "z", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneZ21", + "from": [ 0, 5.999, 8.5 ], + "to": [ 16, 6, 24.5 ], + "rotation": { "origin": [ 0, 6, 8.5 ], "axis": "x", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ21", + "from": [ 0, 6, -8.5 ], + "to": [ 16, 6.001, 7.5 ], + "rotation": { "origin": [ 0, 6, 7.5 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX19", + "from": [ 8.5, 11.999, 0 ], + "to": [ 24.5, 12, 16 ], + "rotation": { "origin": [ 8.5, 12, 0 ], "axis": "z", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture", "rotation": 270 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "PlaneX19", + "from": [ -8.5, 12, 0 ], + "to": [ 7.5, 12.001, 16 ], + "rotation": { "origin": [ 7.5, 12, 0 ], "axis": "z", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 270 }, + "up": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "PlaneZ21", + "from": [ 0, 11.999, 8.5 ], + "to": [ 16, 12, 24.5 ], + "rotation": { "origin": [ 0, 12, 8.5 ], "axis": "x", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ21", + "from": [ 0, 12, -8.5 ], + "to": [ 16, 12.001, 7.5 ], + "rotation": { "origin": [ 0, 12, 7.5 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_brewing_stand.json b/src/main/resources/assets/betternether/models/block/nether_brewing_stand.json new file mode 100644 index 0000000..b5e498f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brewing_stand.json @@ -0,0 +1,53 @@ +{ + "textures": { + "particle": "betternether:block/brewing_stand", + "base": "betternether:block/brewing_stand_base", + "stand": "betternether:block/brewing_stand" + }, + "elements": [ + { "from": [ 7, 0, 7 ], + "to": [ 9, 14, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#stand" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#stand" }, + "north": { "uv": [ 7, 2, 9, 16 ], "texture": "#stand" }, + "south": { "uv": [ 7, 2, 9, 16 ], "texture": "#stand" }, + "west": { "uv": [ 7, 2, 9, 16 ], "texture": "#stand" }, + "east": { "uv": [ 7, 2, 9, 16 ], "texture": "#stand" } + } + }, + { "from": [ 9, 0, 5 ], + "to": [ 15, 2, 11 ], + "faces": { + "down": { "uv": [ 9, 5, 15, 11 ], "texture": "#base", "cullface": "down" }, + "up": { "uv": [ 9, 5, 15, 11 ], "texture": "#base" }, + "north": { "uv": [ 9, 14, 15, 16 ], "texture": "#base" }, + "south": { "uv": [ 9, 14, 15, 16 ], "texture": "#base" }, + "west": { "uv": [ 5, 14, 11, 16 ], "texture": "#base" }, + "east": { "uv": [ 5, 14, 11, 16 ], "texture": "#base" } + } + }, + { "from": [ 2, 0, 1 ], + "to": [ 8, 2, 7 ], + "faces": { + "down": { "uv": [ 2, 1, 8, 7 ], "texture": "#base", "cullface": "down" }, + "up": { "uv": [ 2, 1, 8, 7 ], "texture": "#base" }, + "north": { "uv": [ 2, 14, 8, 16 ], "texture": "#base" }, + "south": { "uv": [ 2, 14, 8, 16 ], "texture": "#base" }, + "west": { "uv": [ 1, 14, 7, 16 ], "texture": "#base" }, + "east": { "uv": [ 1, 14, 7, 16 ], "texture": "#base" } + } + }, + { "from": [ 2, 0, 9 ], + "to": [ 8, 2, 15 ], + "faces": { + "down": { "uv": [ 2, 9, 8, 15 ], "texture": "#base", "cullface": "down" }, + "up": { "uv": [ 2, 9, 8, 15 ], "texture": "#base" }, + "north": { "uv": [ 2, 14, 8, 16 ], "texture": "#base" }, + "south": { "uv": [ 2, 14, 8, 16 ], "texture": "#base" }, + "west": { "uv": [ 9, 14, 15, 16 ], "texture": "#base" }, + "east": { "uv": [ 9, 14, 15, 16 ], "texture": "#base" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brewing_stand_bottle0.json b/src/main/resources/assets/betternether/models/block/nether_brewing_stand_bottle0.json new file mode 100644 index 0000000..26c4c29 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brewing_stand_bottle0.json @@ -0,0 +1,15 @@ +{ + "textures": { + "particle": "betternether:block/brewing_stand", + "stand": "betternether:block/brewing_stand" + }, + "elements": [ + { "from": [ 8, 0, 8 ], + "to": [ 16, 16, 8 ], + "faces": { + "north": { "uv": [ 0, 0, 8, 16 ], "texture": "#stand" }, + "south": { "uv": [ 8, 0, 0, 16 ], "texture": "#stand" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brewing_stand_bottle1.json b/src/main/resources/assets/betternether/models/block/nether_brewing_stand_bottle1.json new file mode 100644 index 0000000..3339e2c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brewing_stand_bottle1.json @@ -0,0 +1,20 @@ +{ + "textures": { + "particle": "betternether:block/brewing_stand", + "stand": "betternether:block/brewing_stand" + }, + "elements": [ + { "from": [ -0.41, 0, 8 ], + "to": [ 7.59, 16, 8 ], + "rotation": { + "origin": [ 8, 8, 8 ], + "axis": "y", + "angle": -45 + }, + "faces": { + "north": { "uv": [ 8, 0, 0, 16 ], "texture": "#stand" }, + "south": { "uv": [ 0, 0, 8, 16 ], "texture": "#stand" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brewing_stand_bottle2.json b/src/main/resources/assets/betternether/models/block/nether_brewing_stand_bottle2.json new file mode 100644 index 0000000..d82f569 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brewing_stand_bottle2.json @@ -0,0 +1,20 @@ +{ + "textures": { + "particle": "betternether:block/brewing_stand", + "stand": "betternether:block/brewing_stand" + }, + "elements": [ + { "from": [ -0.41, 0, 8 ], + "to": [ 7.59, 16, 8 ], + "rotation": { + "origin": [ 8, 8, 8 ], + "axis": "y", + "angle": 45 + }, + "faces": { + "north": { "uv": [ 8, 0, 0, 16 ], "texture": "#stand" }, + "south": { "uv": [ 0, 0, 8, 16 ], "texture": "#stand" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brewing_stand_empty0.json b/src/main/resources/assets/betternether/models/block/nether_brewing_stand_empty0.json new file mode 100644 index 0000000..ed5a380 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brewing_stand_empty0.json @@ -0,0 +1,15 @@ +{ + "textures": { + "particle": "betternether:block/brewing_stand", + "stand": "betternether:block/brewing_stand" + }, + "elements": [ + { "from": [ 8, 0, 8 ], + "to": [ 16, 16, 8 ], + "faces": { + "north": { "uv": [ 16, 0, 8, 16 ], "texture": "#stand" }, + "south": { "uv": [ 8, 0, 16, 16 ], "texture": "#stand" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brewing_stand_empty1.json b/src/main/resources/assets/betternether/models/block/nether_brewing_stand_empty1.json new file mode 100644 index 0000000..97205fc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brewing_stand_empty1.json @@ -0,0 +1,20 @@ +{ + "textures": { + "particle": "betternether:block/brewing_stand", + "stand": "betternether:block/brewing_stand" + }, + "elements": [ + { "from": [ 0, 0, 8 ], + "to": [ 8, 16, 8 ], + "rotation": { + "origin": [ 8, 8, 8 ], + "axis": "y", + "angle": -45 + }, + "faces": { + "north": { "uv": [ 8, 0, 16, 16 ], "texture": "#stand" }, + "south": { "uv": [ 16, 0, 8, 16 ], "texture": "#stand" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brewing_stand_empty2.json b/src/main/resources/assets/betternether/models/block/nether_brewing_stand_empty2.json new file mode 100644 index 0000000..52c9712 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brewing_stand_empty2.json @@ -0,0 +1,20 @@ +{ + "textures": { + "particle": "betternether:block/brewing_stand", + "stand": "betternether:block/brewing_stand" + }, + "elements": [ + { "from": [ 0, 0, 8 ], + "to": [ 8, 16, 8 ], + "rotation": { + "origin": [ 8, 8, 8 ], + "axis": "y", + "angle": 45 + }, + "faces": { + "north": { "uv": [ 8, 0, 16, 16 ], "texture": "#stand" }, + "south": { "uv": [ 16, 0, 8, 16 ], "texture": "#stand" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brick_post.json b/src/main/resources/assets/betternether/models/block/nether_brick_post.json new file mode 100644 index 0000000..fbf0d5c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brick_post.json @@ -0,0 +1,60 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/nether_brick_post", + "texture": "betternether:block/nether_brick_post" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 2, 12 ], + "faces": { + "down": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture" }, + "north": { "uv": [ 8, 14, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 8, 14, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 8, 14, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 8, 14, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 3, 4 ], + "to": [ 12, 13, 12 ], + "faces": { + "down": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture" }, + "north": { "uv": [ 8, 3, 16, 13 ], "texture": "#texture" }, + "south": { "uv": [ 8, 3, 16, 13 ], "texture": "#texture" }, + "west": { "uv": [ 8, 3, 16, 13 ], "texture": "#texture" }, + "east": { "uv": [ 8, 3, 16, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 14, 4 ], + "to": [ 12, 16, 12 ], + "faces": { + "down": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 8, 0, 16, 2 ], "texture": "#texture" }, + "south": { "uv": [ 8, 0, 16, 2 ], "texture": "#texture" }, + "west": { "uv": [ 8, 0, 16, 2 ], "texture": "#texture" }, + "east": { "uv": [ 8, 0, 16, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 2, 5 ], + "to": [ 11, 14, 11 ], + "faces": { + "north": { "uv": [ 9, 2, 15, 14 ], "texture": "#texture" }, + "south": { "uv": [ 9, 2, 15, 14 ], "texture": "#texture" }, + "west": { "uv": [ 9, 2, 15, 14 ], "texture": "#texture" }, + "east": { "uv": [ 9, 2, 15, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_brick_tile_double_slab.json b/src/main/resources/assets/betternether/models/block/nether_brick_tile_double_slab.json new file mode 100644 index 0000000..bc9d78c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brick_tile_double_slab.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/nether_brick_tile_small", + "down": "betternether:block/nether_brick_tile_small", + "up": "betternether:block/nether_brick_tile_small", + "north": "betternether:block/nether_brick_tile_slab_side", + "east": "betternether:block/nether_brick_tile_slab_side", + "south": "betternether:block/nether_brick_tile_slab_side", + "west": "betternether:block/nether_brick_tile_slab_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brick_tile_half_slab.json b/src/main/resources/assets/betternether/models/block/nether_brick_tile_half_slab.json new file mode 100644 index 0000000..8c35102 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brick_tile_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/nether_brick_tile_small", + "top": "betternether:block/nether_brick_tile_small", + "side": "betternether:block/nether_brick_tile_slab_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brick_tile_inner_stairs.json b/src/main/resources/assets/betternether/models/block/nether_brick_tile_inner_stairs.json new file mode 100644 index 0000000..0b28d95 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brick_tile_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/nether_brick_tile_small", + "top": "betternether:block/nether_brick_tile_small", + "side": "betternether:block/nether_brick_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brick_tile_large.json b/src/main/resources/assets/betternether/models/block/nether_brick_tile_large.json new file mode 100644 index 0000000..82af8c9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brick_tile_large.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/nether_brick_tile_large" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brick_tile_outer_stairs.json b/src/main/resources/assets/betternether/models/block/nether_brick_tile_outer_stairs.json new file mode 100644 index 0000000..ac39e5a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brick_tile_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/nether_brick_tile_small", + "top": "betternether:block/nether_brick_tile_small", + "side": "betternether:block/nether_brick_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brick_tile_small.json b/src/main/resources/assets/betternether/models/block/nether_brick_tile_small.json new file mode 100644 index 0000000..bbb523b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brick_tile_small.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/nether_brick_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brick_tile_stairs.json b/src/main/resources/assets/betternether/models/block/nether_brick_tile_stairs.json new file mode 100644 index 0000000..96ef9dc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brick_tile_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/nether_brick_tile_small", + "top": "betternether:block/nether_brick_tile_small", + "side": "betternether:block/nether_brick_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brick_wall_ew.json b/src/main/resources/assets/betternether/models/block/nether_brick_wall_ew.json new file mode 100644 index 0000000..bcfe76e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brick_wall_ew.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/nether_brick_wall_ns", + "textures": { + "top": "betternether:block/nether_brick_wall_top_ew" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_brick_wall_ns.json b/src/main/resources/assets/betternether/models/block/nether_brick_wall_ns.json new file mode 100644 index 0000000..c5fc68e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_brick_wall_ns.json @@ -0,0 +1,131 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/nether_brick_wall_side", + "texture": "betternether:block/nether_brick_wall_side", + "top": "betternether:block/nether_brick_wall_top_ns" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 0 ], + "to": [ 10, 1, 8 ], + "faces": { + "down": { "uv": [ 6, 8, 10, 16 ], "texture": "#top", "cullface": "down" }, + "up": { "uv": [ 6, 0, 10, 8 ], "texture": "#top" }, + "north": { "uv": [ 6, 15, 10, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 15, 8, 16 ], "texture": "#texture" }, + "east": { "uv": [ 8, 15, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 1, 0 ], + "to": [ 9, 2, 8 ], + "faces": { + "north": { "uv": [ 7, 14, 9, 15 ], "texture": "#texture" }, + "west": { "uv": [ 0, 14, 8, 15 ], "texture": "#texture" }, + "east": { "uv": [ 8, 14, 16, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 2, 0 ], + "to": [ 10, 3, 8 ], + "faces": { + "down": { "uv": [ 6, 8, 10, 16 ], "texture": "#top" }, + "up": { "uv": [ 6, 0, 10, 8 ], "texture": "#top" }, + "north": { "uv": [ 6, 13, 10, 14 ], "texture": "#texture" }, + "west": { "uv": [ 0, 13, 8, 14 ], "texture": "#texture" }, + "east": { "uv": [ 8, 13, 16, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 15, 0 ], + "to": [ 10, 15.5, 8 ], + "faces": { + "down": { "uv": [ 6, 8, 10, 16 ], "texture": "#top" }, + "up": { "uv": [ 6, 0, 10, 8 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 6, 0, 10, 1 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 8, 1 ], "texture": "#texture" }, + "east": { "uv": [ 8, 0, 16, 1 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 13, 0 ], + "to": [ 10, 14, 8 ], + "faces": { + "down": { "uv": [ 6, 8, 10, 16 ], "texture": "#top" }, + "up": { "uv": [ 6, 0, 10, 8 ], "texture": "#top" }, + "north": { "uv": [ 6, 2, 10, 3 ], "texture": "#texture" }, + "west": { "uv": [ 0, 2, 8, 3 ], "texture": "#texture" }, + "east": { "uv": [ 8, 2, 16, 3 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 14, 0 ], + "to": [ 9, 15, 8 ], + "faces": { + "north": { "uv": [ 7, 1, 9, 2 ], "texture": "#texture" }, + "west": { "uv": [ 0, 1, 8, 2 ], "texture": "#texture" }, + "east": { "uv": [ 8, 1, 16, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 3, 0 ], + "to": [ 9, 13, 1 ], + "faces": { + "north": { "uv": [ 7, 3, 9, 13 ], "texture": "#texture" }, + "south": { "uv": [ 7, 3, 9, 13 ], "texture": "#texture" }, + "west": { "uv": [ 0, 3, 1, 13 ], "texture": "#texture" }, + "east": { "uv": [ 15, 3, 16, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 3, 7 ], + "to": [ 9, 13, 8 ], + "faces": { + "north": { "uv": [ 7, 3, 9, 13 ], "texture": "#texture" }, + "west": { "uv": [ 7, 3, 8, 13 ], "texture": "#texture" }, + "east": { "uv": [ 8, 3, 9, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 3, 3 ], + "to": [ 9, 13, 5 ], + "faces": { + "north": { "uv": [ 7, 3, 9, 13 ], "texture": "#texture" }, + "south": { "uv": [ 7, 3, 9, 13 ], "texture": "#texture" }, + "west": { "uv": [ 3, 3, 5, 13 ], "texture": "#texture" }, + "east": { "uv": [ 11, 3, 13, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 3, 1 ], + "to": [ 9, 4, 7 ], + "faces": { + "up": { "uv": [ 7, 1, 9, 7 ], "texture": "#top" }, + "west": { "uv": [ 1, 12, 7, 13 ], "texture": "#texture" }, + "east": { "uv": [ 9, 12, 15, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 12, 1 ], + "to": [ 9, 13, 7 ], + "faces": { + "down": { "uv": [ 7, 9, 9, 15 ], "texture": "#top" }, + "west": { "uv": [ 1, 3, 7, 4 ], "texture": "#texture" }, + "east": { "uv": [ 9, 3, 15, 4 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_cactus_middle.json b/src/main/resources/assets/betternether/models/block/nether_cactus_middle.json new file mode 100644 index 0000000..07a275c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_cactus_middle.json @@ -0,0 +1,65 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cactus_middle_side", + "side": "betternether:block/cactus_middle_side", + "top": "betternether:block/cactus_middle_top" + }, + "elements": [ + { + "__comment": "PlaneZ1", + "from": [ 4, 0, 5 ], + "to": [ 12, 16, 5.001 ], + "faces": { + "north": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" }, + "south": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 5, 0, 4 ], + "to": [ 5.001, 16, 12 ], + "faces": { + "west": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" }, + "east": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ1", + "from": [ 4, 0, 11 ], + "to": [ 12, 16, 11.001 ], + "faces": { + "north": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" }, + "south": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 11, 0, 4 ], + "to": [ 11.001, 16, 12 ], + "faces": { + "west": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" }, + "east": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneY7", + "from": [ 4, 0, 4 ], + "to": [ 12, 0.001, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#top", "cullface": "down" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY7", + "from": [ 4, 16, 4 ], + "to": [ 12, 16.001, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top", "cullface": "up" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_cactus_top.json b/src/main/resources/assets/betternether/models/block/nether_cactus_top.json new file mode 100644 index 0000000..ab2c3f0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_cactus_top.json @@ -0,0 +1,66 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cactus_top_side", + "side": "betternether:block/cactus_top_side", + "bottom": "betternether:block/cactus_top_bottom", + "top": "betternether:block/cactus_top_top" + }, + "elements": [ + { + "__comment": "PlaneY1", + "from": [ 3, 0, 3 ], + "to": [ 13, 0.001, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#bottom" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 4, 0, 3 ], + "to": [ 4.001, 9, 13 ], + "faces": { + "west": { "uv": [ 3, 7, 13, 16 ], "texture": "#side" }, + "east": { "uv": [ 3, 7, 13, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 12, 0, 3 ], + "to": [ 12.001, 9, 13 ], + "faces": { + "west": { "uv": [ 3, 7, 13, 16 ], "texture": "#side" }, + "east": { "uv": [ 3, 7, 13, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ5", + "from": [ 3, 0, 4 ], + "to": [ 13, 9, 4.001 ], + "faces": { + "north": { "uv": [ 3, 7, 13, 16 ], "texture": "#side" }, + "south": { "uv": [ 3, 7, 13, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ5", + "from": [ 3, 0, 12 ], + "to": [ 13, 9, 12.001 ], + "faces": { + "north": { "uv": [ 3, 7, 13, 16 ], "texture": "#side" }, + "south": { "uv": [ 3, 7, 13, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneY7", + "from": [ 3, 8, 3 ], + "to": [ 13, 8.001, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#top" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#top" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_grass_1.json b/src/main/resources/assets/betternether/models/block/nether_grass_1.json new file mode 100644 index 0000000..ad8a1aa --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_grass_1.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/grass_fan", + "textures": { + "texture": "betternether:block/ngrass_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_grass_2.json b/src/main/resources/assets/betternether/models/block/nether_grass_2.json new file mode 100644 index 0000000..1e56d8a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_grass_2.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/ngrass_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_grass_3.json b/src/main/resources/assets/betternether/models/block/nether_grass_3.json new file mode 100644 index 0000000..73a96e1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_grass_3.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/grass_fan", + "textures": { + "texture": "betternether:block/ngrass_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_lapis_ore.json b/src/main/resources/assets/betternether/models/block/nether_lapis_ore.json new file mode 100644 index 0000000..b02a8db --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_lapis_ore.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/nether_lapis_ore" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_mycelium.json b/src/main/resources/assets/betternether/models/block/nether_mycelium.json new file mode 100644 index 0000000..08753a2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_mycelium.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/nether_mycelium_side", + "down": "block/netherrack", + "up": "betternether:block/nether_mycelium_top", + "north": "betternether:block/nether_mycelium_side", + "east": "betternether:block/nether_mycelium_side", + "south": "betternether:block/nether_mycelium_side", + "west": "betternether:block/nether_mycelium_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_mycelium_blue.json b/src/main/resources/assets/betternether/models/block/nether_mycelium_blue.json new file mode 100644 index 0000000..13f3dbe --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_mycelium_blue.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/nether_mycelium_side_blue", + "down": "block/netherrack", + "up": "betternether:block/nether_mycelium_top_blue", + "north": "betternether:block/nether_mycelium_side_blue", + "east": "betternether:block/nether_mycelium_side_blue", + "south": "betternether:block/nether_mycelium_side_blue", + "west": "betternether:block/nether_mycelium_side_blue" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_reed.json b/src/main/resources/assets/betternether/models/block/nether_reed.json new file mode 100644 index 0000000..7e33756 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_reed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/reeds_middle" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_reed_top.json b/src/main/resources/assets/betternether/models/block/nether_reed_top.json new file mode 100644 index 0000000..9a87d6f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_reed_top.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/reeds_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_ruby_block.json b/src/main/resources/assets/betternether/models/block/nether_ruby_block.json new file mode 100644 index 0000000..110b577 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_ruby_block.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/nether_ruby_block" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_ruby_ore.json b/src/main/resources/assets/betternether/models/block/nether_ruby_ore.json new file mode 100644 index 0000000..bae447d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_ruby_ore.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/nether_ruby_ore" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_bark.json b/src/main/resources/assets/betternether/models/block/nether_sakura_bark.json new file mode 100644 index 0000000..c134bd2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_bark.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/nether_sakura_log_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_button.json b/src/main/resources/assets/betternether/models/block/nether_sakura_button.json new file mode 100644 index 0000000..69b15b7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_button.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button", + "textures": { + "texture": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_button_inventory.json b/src/main/resources/assets/betternether/models/block/nether_sakura_button_inventory.json new file mode 100644 index 0000000..71085b3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_button_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_inventory", + "textures": { + "texture": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_button_pressed.json b/src/main/resources/assets/betternether/models/block/nether_sakura_button_pressed.json new file mode 100644 index 0000000..83fd83a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_button_pressed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_pressed", + "textures": { + "texture": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_door_bottom.json b/src/main/resources/assets/betternether/models/block/nether_sakura_door_bottom.json new file mode 100644 index 0000000..920f2de --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_door_bottom.json @@ -0,0 +1,20 @@ +{ + "ambientocclusion": false, + "textures": { + "bottom": "betternether:block/nether_sakura_door_bottom", + "side": "betternether:block/nether_sakura_door_side", + "particle": "betternether:block/nether_sakura_door_bottom" + }, + "elements": [ + { "from": [ 0, 0, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 13, 0, 16, 16 ], "texture": "#side", "cullface": "down" }, + "north": { "uv": [ 3, 0, 0, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom", "cullface": "west" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#bottom" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_door_bottom_hinge.json b/src/main/resources/assets/betternether/models/block/nether_sakura_door_bottom_hinge.json new file mode 100644 index 0000000..22404d4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_door_bottom_hinge.json @@ -0,0 +1,20 @@ +{ + "ambientocclusion": false, + "textures": { + "bottom": "betternether:block/nether_sakura_door_bottom", + "side": "betternether:block/nether_sakura_door_side", + "particle": "betternether:block/nether_sakura_door_bottom" + }, + "elements": [ + { "from": [ 0, 0, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 13, 0, 16, 16 ], "texture": "#side", "cullface": "down" }, + "north": { "uv": [ 3, 0, 0, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#bottom", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_door_top.json b/src/main/resources/assets/betternether/models/block/nether_sakura_door_top.json new file mode 100644 index 0000000..99e8767 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_door_top.json @@ -0,0 +1,20 @@ +{ + "ambientocclusion": false, + "textures": { + "top": "betternether:block/nether_sakura_door_top", + "side": "betternether:block/nether_sakura_door_side", + "particle": "betternether:block/nether_sakura_door_top" + }, + "elements": [ + { "from": [ 0, 0, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "up": { "uv": [ 13, 0, 16, 16 ], "texture": "#side", "cullface": "up" }, + "north": { "uv": [ 3, 0, 0, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#top", "cullface": "west" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#top" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_door_top_hinge.json b/src/main/resources/assets/betternether/models/block/nether_sakura_door_top_hinge.json new file mode 100644 index 0000000..76ccf8d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_door_top_hinge.json @@ -0,0 +1,20 @@ +{ + "ambientocclusion": false, + "textures": { + "top": "betternether:block/nether_sakura_door_top", + "side": "betternether:block/nether_sakura_door_side", + "particle": "betternether:block/nether_sakura_door_top" + }, + "elements": [ + { "from": [ 0, 0, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "up": { "uv": [ 13, 0, 16, 16 ], "texture": "#side", "cullface": "up" }, + "north": { "uv": [ 3, 0, 0, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#top", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_fence_gate_closed.json b/src/main/resources/assets/betternether/models/block/nether_sakura_fence_gate_closed.json new file mode 100644 index 0000000..e492e0b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_fence_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate", + "textures": { + "texture": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_fence_gate_open.json b/src/main/resources/assets/betternether/models/block/nether_sakura_fence_gate_open.json new file mode 100644 index 0000000..85b72d8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_fence_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_open", + "textures": { + "texture": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_fence_inventory.json b/src/main/resources/assets/betternether/models/block/nether_sakura_fence_inventory.json new file mode 100644 index 0000000..80f6f83 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_fence_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_inventory", + "textures": { + "texture": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_fence_post.json b/src/main/resources/assets/betternether/models/block/nether_sakura_fence_post.json new file mode 100644 index 0000000..5048066 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_fence_post.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_post", + "textures": { + "texture": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_fence_side.json b/src/main/resources/assets/betternether/models/block/nether_sakura_fence_side.json new file mode 100644 index 0000000..f80ef76 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_fence_side.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_side", + "textures": { + "texture": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_half_slab.json b/src/main/resources/assets/betternether/models/block/nether_sakura_half_slab.json new file mode 100644 index 0000000..0c9ffc7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/nether_sakura_planks", + "top": "betternether:block/nether_sakura_planks", + "side": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_inner_stairs.json b/src/main/resources/assets/betternether/models/block/nether_sakura_inner_stairs.json new file mode 100644 index 0000000..f829c48 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/nether_sakura_planks", + "top": "betternether:block/nether_sakura_planks", + "side": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_ladder.json b/src/main/resources/assets/betternether/models/block/nether_sakura_ladder.json new file mode 100644 index 0000000..909019d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_ladder.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/reeds_ladder", + "textures": { + "particle": "betternether:block/nether_sakura_ladder", + "texture": "betternether:block/nether_sakura_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_leaves.json b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves.json new file mode 100644 index 0000000..5101d36 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves.json @@ -0,0 +1,65 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/nether_sakura_leaves_2", + "texture": "betternether:block/nether_sakura_leaves_2", + "sides": "betternether:block/nether_sakura_leaves_side", + "flowers": "betternether:block/nether_sakura_flowers_1" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX2", + "from": [ -4.5, 0, -4 ], + "to": [ -4.499, 16, 12 ], + "rotation": { "origin": [ -4.5, 0, -4 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 8.5, 0, 8.5 ], + "to": [ 8.501, 16, 24.5 ], + "rotation": { "origin": [ 8.5, 0, 8.5 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 7.5, 0, 8.5 ], + "to": [ 7.501, 16, 24.5 ], + "rotation": { "origin": [ 7.5, 0, 8.5 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 20.5, 0, -4 ], + "to": [ 20.501, 16, 12 ], + "rotation": { "origin": [ 20.5, 0, -4 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_1.json b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_1.json new file mode 100644 index 0000000..b852d45 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_1.json @@ -0,0 +1,81 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/nether_sakura_leaves_2", + "texture": "betternether:block/nether_sakura_leaves_2", + "sides": "betternether:block/nether_sakura_leaves_side", + "flowers1": "betternether:block/nether_sakura_flowers_3", + "flowers2": "betternether:block/nether_sakura_flowers_1", + "flowers3": "betternether:block/nether_sakura_flowers_2" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers1" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers1" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers2" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers2" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers3" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers3" } + } + }, + { + "__comment": "PlaneX2", + "from": [ -4.5, 0, -4 ], + "to": [ -4.499, 16, 12 ], + "rotation": { "origin": [ -4.5, 0, -4 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 8.5, 0, 8.5 ], + "to": [ 8.501, 16, 24.5 ], + "rotation": { "origin": [ 8.5, 0, 8.5 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 7.5, 0, 8.5 ], + "to": [ 7.501, 16, 24.5 ], + "rotation": { "origin": [ 7.5, 0, 8.5 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 20.5, 0, -4 ], + "to": [ 20.501, 16, 12 ], + "rotation": { "origin": [ 20.5, 0, -4 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_2.json b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_2.json new file mode 100644 index 0000000..abb36fb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_2.json @@ -0,0 +1,81 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/nether_sakura_leaves_2", + "texture": "betternether:block/nether_sakura_leaves_2", + "sides": "betternether:block/nether_sakura_leaves_side", + "flowers1": "betternether:block/nether_sakura_flowers_2", + "flowers2": "betternether:block/nether_sakura_flowers_3", + "flowers3": "betternether:block/nether_sakura_flowers_1" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers1" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers1" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers2" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers2" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers3" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers3" } + } + }, + { + "__comment": "PlaneX2", + "from": [ -4.5, 0, -4 ], + "to": [ -4.499, 16, 12 ], + "rotation": { "origin": [ -4.5, 0, -4 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 8.5, 0, 8.5 ], + "to": [ 8.501, 16, 24.5 ], + "rotation": { "origin": [ 8.5, 0, 8.5 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 7.5, 0, 8.5 ], + "to": [ 7.501, 16, 24.5 ], + "rotation": { "origin": [ 7.5, 0, 8.5 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 20.5, 0, -4 ], + "to": [ 20.501, 16, 12 ], + "rotation": { "origin": [ 20.5, 0, -4 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_3.json b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_3.json new file mode 100644 index 0000000..c255bfb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_3.json @@ -0,0 +1,81 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/nether_sakura_leaves_2", + "texture": "betternether:block/nether_sakura_leaves_2", + "sides": "betternether:block/nether_sakura_leaves_side", + "flowers1": "betternether:block/nether_sakura_flowers_1", + "flowers2": "betternether:block/nether_sakura_flowers_2", + "flowers3": "betternether:block/nether_sakura_flowers_3" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers1" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers1" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers2" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers2" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers3" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#flowers3" } + } + }, + { + "__comment": "PlaneX2", + "from": [ -4.5, 0, -4 ], + "to": [ -4.499, 16, 12 ], + "rotation": { "origin": [ -4.5, 0, -4 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 8.5, 0, 8.5 ], + "to": [ 8.501, 16, 24.5 ], + "rotation": { "origin": [ 8.5, 0, 8.5 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 7.5, 0, 8.5 ], + "to": [ 7.501, 16, 24.5 ], + "rotation": { "origin": [ 7.5, 0, 8.5 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 20.5, 0, -4 ], + "to": [ 20.501, 16, 12 ], + "rotation": { "origin": [ 20.5, 0, -4 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_4.json b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_4.json new file mode 100644 index 0000000..05a495d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_4.json @@ -0,0 +1,81 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/nether_sakura_leaves_2", + "texture": "betternether:block/nether_sakura_leaves_2", + "sides": "betternether:block/nether_sakura_leaves_side", + "flowers1": "betternether:block/nether_sakura_flowers_3", + "flowers2": "betternether:block/nether_sakura_flowers_1", + "flowers3": "betternether:block/nether_sakura_flowers_2" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers1" }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers1" }, + "north": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers2" }, + "south": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers2" }, + "west": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers3" }, + "east": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers3" } + } + }, + { + "__comment": "PlaneX2", + "from": [ -4.5, 0, -4 ], + "to": [ -4.499, 16, 12 ], + "rotation": { "origin": [ -4.5, 0, -4 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 8.5, 0, 8.5 ], + "to": [ 8.501, 16, 24.5 ], + "rotation": { "origin": [ 8.5, 0, 8.5 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 7.5, 0, 8.5 ], + "to": [ 7.501, 16, 24.5 ], + "rotation": { "origin": [ 7.5, 0, 8.5 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 20.5, 0, -4 ], + "to": [ 20.501, 16, 12 ], + "rotation": { "origin": [ 20.5, 0, -4 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_5.json b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_5.json new file mode 100644 index 0000000..d10c24f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_5.json @@ -0,0 +1,81 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/nether_sakura_leaves_2", + "texture": "betternether:block/nether_sakura_leaves_2", + "sides": "betternether:block/nether_sakura_leaves_side", + "flowers1": "betternether:block/nether_sakura_flowers_2", + "flowers2": "betternether:block/nether_sakura_flowers_3", + "flowers3": "betternether:block/nether_sakura_flowers_1" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers1" }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers1" }, + "north": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers2" }, + "south": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers2" }, + "west": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers3" }, + "east": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers3" } + } + }, + { + "__comment": "PlaneX2", + "from": [ -4.5, 0, -4 ], + "to": [ -4.499, 16, 12 ], + "rotation": { "origin": [ -4.5, 0, -4 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 8.5, 0, 8.5 ], + "to": [ 8.501, 16, 24.5 ], + "rotation": { "origin": [ 8.5, 0, 8.5 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 7.5, 0, 8.5 ], + "to": [ 7.501, 16, 24.5 ], + "rotation": { "origin": [ 7.5, 0, 8.5 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 20.5, 0, -4 ], + "to": [ 20.501, 16, 12 ], + "rotation": { "origin": [ 20.5, 0, -4 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_6.json b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_6.json new file mode 100644 index 0000000..60827e9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_leaves_flowers_6.json @@ -0,0 +1,81 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/nether_sakura_leaves_2", + "texture": "betternether:block/nether_sakura_leaves_2", + "sides": "betternether:block/nether_sakura_leaves_side", + "flowers1": "betternether:block/nether_sakura_flowers_1", + "flowers2": "betternether:block/nether_sakura_flowers_2", + "flowers3": "betternether:block/nether_sakura_flowers_3" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers1" }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers1" }, + "north": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers2" }, + "south": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers2" }, + "west": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers3" }, + "east": { "uv": [ 16, 16, 0, 0 ], "texture": "#flowers3" } + } + }, + { + "__comment": "PlaneX2", + "from": [ -4.5, 0, -4 ], + "to": [ -4.499, 16, 12 ], + "rotation": { "origin": [ -4.5, 0, -4 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 8.5, 0, 8.5 ], + "to": [ 8.501, 16, 24.5 ], + "rotation": { "origin": [ 8.5, 0, 8.5 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 7.5, 0, 8.5 ], + "to": [ 7.501, 16, 24.5 ], + "rotation": { "origin": [ 7.5, 0, 8.5 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 20.5, 0, -4 ], + "to": [ 20.501, 16, 12 ], + "rotation": { "origin": [ 20.5, 0, -4 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#sides" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_log.json b/src/main/resources/assets/betternether/models/block/nether_sakura_log.json new file mode 100644 index 0000000..16c222e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_log.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/nether_sakura_log_side", + "down": "betternether:block/nether_sakura_log_top", + "up": "betternether:block/nether_sakura_log_top", + "north": "betternether:block/nether_sakura_log_side", + "east": "betternether:block/nether_sakura_log_side", + "south": "betternether:block/nether_sakura_log_side", + "west": "betternether:block/nether_sakura_log_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_outer_stairs.json b/src/main/resources/assets/betternether/models/block/nether_sakura_outer_stairs.json new file mode 100644 index 0000000..d77107c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/nether_sakura_planks", + "top": "betternether:block/nether_sakura_planks", + "side": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_planks.json b/src/main/resources/assets/betternether/models/block/nether_sakura_planks.json new file mode 100644 index 0000000..d56857c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_planks.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_pressure_plate_down.json b/src/main/resources/assets/betternether/models/block/nether_sakura_pressure_plate_down.json new file mode 100644 index 0000000..429e2b7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_down", + "textures": { + "texture": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_pressure_plate_up.json b/src/main/resources/assets/betternether/models/block/nether_sakura_pressure_plate_up.json new file mode 100644 index 0000000..8778fd8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_pressure_plate_up.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_up", + "textures": { + "texture": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_sapling.json b/src/main/resources/assets/betternether/models/block/nether_sakura_sapling.json new file mode 100644 index 0000000..9cf3480 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/nether_sakura_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_stairs.json b/src/main/resources/assets/betternether/models/block/nether_sakura_stairs.json new file mode 100644 index 0000000..a56a84d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/nether_sakura_planks", + "top": "betternether:block/nether_sakura_planks", + "side": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_trapdoor.json b/src/main/resources/assets/betternether/models/block/nether_sakura_trapdoor.json new file mode 100644 index 0000000..9d9caa4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_trapdoor.json @@ -0,0 +1,68 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/nether_sakura_trapdoor", + "texture": "betternether:block/nether_sakura_trapdoor", + "side": "betternether:block/nether_sakura_door_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 2, 3, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 2, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 2, 16 ], "texture": "#texture" }, + "north": { "uv": [ 14, 12, 16, 15 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 12, 2, 15 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 12, 16, 15 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 0, 12, 16, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 0, 0 ], + "to": [ 16, 3, 16 ], + "faces": { + "down": { "uv": [ 14, 0, 16, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 14, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 12, 2, 15 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 14, 12, 16, 15 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 12, 16, 15 ], "texture": "#side" }, + "east": { "uv": [ 0, 12, 16, 15 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 0 ], + "to": [ 14, 3, 2 ], + "faces": { + "down": { "uv": [ 2, 14, 14, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 2, 0, 14, 2 ], "texture": "#texture" }, + "north": { "uv": [ 2, 12, 14, 15 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 2, 12, 14, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 14 ], + "to": [ 14, 3, 16 ], + "faces": { + "down": { "uv": [ 2, 0, 14, 2 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 2, 14, 14, 16 ], "texture": "#texture" }, + "north": { "uv": [ 2, 12, 14, 15 ], "texture": "#side" }, + "south": { "uv": [ 2, 12, 14, 15 ], "texture": "#side", "cullface": "south" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 1, 2 ], + "to": [ 14, 2, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_wall_gate_closed.json b/src/main/resources/assets/betternether/models/block/nether_sakura_wall_gate_closed.json new file mode 100644 index 0000000..da2ea3f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_wall_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall", + "textures": { + "texture": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/nether_sakura_wall_gate_open.json b/src/main/resources/assets/betternether/models/block/nether_sakura_wall_gate_open.json new file mode 100644 index 0000000..4e5db78 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/nether_sakura_wall_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall_open", + "textures": { + "texture": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/netherite_fire_bowl_off.json b/src/main/resources/assets/betternether/models/block/netherite_fire_bowl_off.json new file mode 100644 index 0000000..7198f63 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/netherite_fire_bowl_off.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/cincinnasite_fire_bowl_off", + "textures": { + "particle": "block/netherite_block", + "top": "betternether:block/netherite_fire_bowl_top", + "side": "betternether:block/netherite_fire_bowl_side", + "bottom": "block/netherite_block" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/netherite_fire_bowl_on.json b/src/main/resources/assets/betternether/models/block/netherite_fire_bowl_on.json new file mode 100644 index 0000000..0b5dcc3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/netherite_fire_bowl_on.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/cincinnasite_fire_bowl_on", + "textures": { + "particle": "block/netherite_block", + "top": "betternether:block/netherite_fire_bowl_top", + "side": "betternether:block/netherite_fire_bowl_side", + "bottom": "block/netherite_block" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/netherite_fire_bowl_soul_off.json b/src/main/resources/assets/betternether/models/block/netherite_fire_bowl_soul_off.json new file mode 100644 index 0000000..097b045 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/netherite_fire_bowl_soul_off.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/netherite_fire_bowl_off", + "textures": { + "top": "betternether:block/netherite_fire_bowl_top_soul" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/netherite_fire_bowl_soul_on.json b/src/main/resources/assets/betternether/models/block/netherite_fire_bowl_soul_on.json new file mode 100644 index 0000000..4ddb654 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/netherite_fire_bowl_soul_on.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/netherite_fire_bowl_on", + "textures": { + "top": "betternether:block/netherite_fire_bowl_top_soul", + "fire_0": "block/soul_fire_0", + "fire_1": "block/soul_fire_1" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/netherrack_furnace.json b/src/main/resources/assets/betternether/models/block/netherrack_furnace.json new file mode 100644 index 0000000..cd4517f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/netherrack_furnace.json @@ -0,0 +1,8 @@ +{ + "parent": "block/orientable", + "textures": { + "top": "betternether:block/netherrack_furnace_top", + "front": "betternether:block/netherrack_furnace_front_off", + "side": "betternether:block/netherrack_furnace_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/netherrack_furnace_on.json b/src/main/resources/assets/betternether/models/block/netherrack_furnace_on.json new file mode 100644 index 0000000..4e6b7cb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/netherrack_furnace_on.json @@ -0,0 +1,8 @@ +{ + "parent": "block/orientable", + "textures": { + "top": "betternether:block/netherrack_furnace_top", + "front": "betternether:block/netherrack_furnace_front_on", + "side": "betternether:block/netherrack_furnace_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/netherrack_moss.json b/src/main/resources/assets/betternether/models/block/netherrack_moss.json new file mode 100644 index 0000000..bded62e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/netherrack_moss.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/nether_moss_side", + "down": "block/netherrack", + "up": "betternether:block/nether_moss_top", + "north": "betternether:block/nether_moss_side", + "east": "betternether:block/nether_moss_side", + "south": "betternether:block/nether_moss_side", + "west": "betternether:block/nether_moss_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/obsidian_bricks.json b/src/main/resources/assets/betternether/models/block/obsidian_bricks.json new file mode 100644 index 0000000..35d5eb4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_bricks.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/obsidian_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_bricks_half_slab.json b/src/main/resources/assets/betternether/models/block/obsidian_bricks_half_slab.json new file mode 100644 index 0000000..0e8c92b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_bricks_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/obsidian_bricks", + "top": "betternether:block/obsidian_bricks", + "side": "betternether:block/obsidian_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_bricks_inner_stairs.json b/src/main/resources/assets/betternether/models/block/obsidian_bricks_inner_stairs.json new file mode 100644 index 0000000..842a84e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_bricks_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/obsidian_bricks", + "top": "betternether:block/obsidian_bricks", + "side": "betternether:block/obsidian_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_bricks_outer_stairs.json b/src/main/resources/assets/betternether/models/block/obsidian_bricks_outer_stairs.json new file mode 100644 index 0000000..bdfb761 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_bricks_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/obsidian_bricks", + "top": "betternether:block/obsidian_bricks", + "side": "betternether:block/obsidian_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_bricks_stairs.json b/src/main/resources/assets/betternether/models/block/obsidian_bricks_stairs.json new file mode 100644 index 0000000..fde3980 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_bricks_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/obsidian_bricks", + "top": "betternether:block/obsidian_bricks", + "side": "betternether:block/obsidian_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_glass.json b/src/main/resources/assets/betternether/models/block/obsidian_glass.json new file mode 100644 index 0000000..73a7bbb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_glass.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_noside.json b/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_noside.json new file mode 100644 index 0000000..495270e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_noside_alt.json b/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_noside_alt.json new file mode 100644 index 0000000..9f2e1c8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_post.json b/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_post.json new file mode 100644 index 0000000..e7ebf9c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/obsidian_glass", + "pane": "betternether:block/obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_side.json b/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_side.json new file mode 100644 index 0000000..94ae926 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/obsidian_glass", + "pane": "betternether:block/obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_side_alt.json b/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_side_alt.json new file mode 100644 index 0000000..c72d15f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_glass_pane_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/obsidian_glass", + "pane": "betternether:block/obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_tile.json b/src/main/resources/assets/betternether/models/block/obsidian_tile.json new file mode 100644 index 0000000..575e8cd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_tile.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/obsidian_tile" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_tile_half_slab.json b/src/main/resources/assets/betternether/models/block/obsidian_tile_half_slab.json new file mode 100644 index 0000000..da371d7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_tile_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/obsidian_tile_small", + "top": "betternether:block/obsidian_tile_small", + "side": "betternether:block/obsidian_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_tile_inner_stairs.json b/src/main/resources/assets/betternether/models/block/obsidian_tile_inner_stairs.json new file mode 100644 index 0000000..3563bd4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_tile_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/obsidian_tile_small", + "top": "betternether:block/obsidian_tile_small", + "side": "betternether:block/obsidian_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_tile_outer_stairs.json b/src/main/resources/assets/betternether/models/block/obsidian_tile_outer_stairs.json new file mode 100644 index 0000000..41a26a0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_tile_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/obsidian_tile_small", + "top": "betternether:block/obsidian_tile_small", + "side": "betternether:block/obsidian_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_tile_small.json b/src/main/resources/assets/betternether/models/block/obsidian_tile_small.json new file mode 100644 index 0000000..3de761d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_tile_small.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/obsidian_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/obsidian_tile_stairs.json b/src/main/resources/assets/betternether/models/block/obsidian_tile_stairs.json new file mode 100644 index 0000000..d146c91 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/obsidian_tile_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/obsidian_tile_small", + "top": "betternether:block/obsidian_tile_small", + "side": "betternether:block/obsidian_tile_small" + } +} diff --git a/src/main/resources/assets/betternether/models/block/orange_mushroom_01.json b/src/main/resources/assets/betternether/models/block/orange_mushroom_01.json new file mode 100644 index 0000000..ac286bf --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/orange_mushroom_01.json @@ -0,0 +1,197 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/orange_mushroom_side", + "side": "betternether:block/orange_mushroom_side", + "top": "betternether:block/orange_mushroom_top", + "bottom": "betternether:block/orange_mushroom_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 7, 5 ], + "to": [ 11, 10, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 6, 11, 9 ], "texture": "#side" }, + "south": { "uv": [ 5, 6, 11, 9 ], "texture": "#side" }, + "west": { "uv": [ 5, 6, 11, 9 ], "texture": "#side" }, + "east": { "uv": [ 5, 6, 11, 9 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 8, 10 ], + "faces": { + "north": { "uv": [ 6, 8, 10, 16 ], "texture": "#side" }, + "south": { "uv": [ 6, 8, 10, 16 ], "texture": "#side" }, + "west": { "uv": [ 6, 8, 10, 16 ], "texture": "#side" }, + "east": { "uv": [ 6, 8, 10, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 12, 3 ], + "to": [ 12, 15, 13 ], + "faces": { + "down": { "uv": [ 4, 3, 12, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 3, 12, 13 ], "texture": "#top", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 12, 3 ], + "to": [ 4, 16, 13 ], + "faces": { + "down": { "uv": [ 0, 3, 4, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 0, 3, 4, 13 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 12, 0, 16, 4 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 4, 4 ], "texture": "#side" }, + "west": { "uv": [ 3, 0, 13, 4 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 3, 0, 13, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 12, 3 ], + "to": [ 16, 16, 13 ], + "faces": { + "down": { "uv": [ 12, 3, 16, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 12, 3, 16, 13 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 0, 0, 4, 4 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 4 ], "texture": "#side" }, + "west": { "uv": [ 3, 0, 13, 4 ], "texture": "#side" }, + "east": { "uv": [ 3, 0, 13, 4 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 10, 3 ], + "to": [ 11, 12, 13 ], + "faces": { + "down": { "uv": [ 5, 3, 11, 13 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "south": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "west": { "uv": [ 3, 4, 13, 6 ], "texture": "#side" }, + "east": { "uv": [ 3, 4, 13, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 10, 5 ], + "to": [ 5, 12, 11 ], + "faces": { + "down": { "uv": [ 3, 5, 5, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 11, 4, 13, 6 ], "texture": "#side" }, + "south": { "uv": [ 3, 4, 5, 6 ], "texture": "#side" }, + "west": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 10, 5 ], + "to": [ 13, 12, 11 ], + "faces": { + "down": { "uv": [ 11, 5, 13, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 3, 4, 5, 6 ], "texture": "#side" }, + "south": { "uv": [ 11, 4, 13, 6 ], "texture": "#side" }, + "east": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 8.5, 0, 9 ], + "to": [ 10.5, 3, 11 ], + "faces": { + "up": { "uv": [ 7, 12, 9, 14 ], "texture": "#side" }, + "north": { "uv": [ 5.5, 13, 7.5, 16 ], "texture": "#side" }, + "south": { "uv": [ 8.5, 13, 10.5, 16 ], "texture": "#side" }, + "west": { "uv": [ 9, 13, 11, 16 ], "texture": "#side" }, + "east": { "uv": [ 5, 13, 7, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 8.5, 0, 5.5 ], + "to": [ 10.5, 1, 7.5 ], + "faces": { + "up": { "uv": [ 9, 13, 11, 15 ], "texture": "#side" }, + "north": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" }, + "south": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" }, + "west": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" }, + "east": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 5.5, 0, 8.5 ], + "to": [ 7.5, 1, 10.5 ], + "faces": { + "down": { "uv": [ 5.5, 5.5, 7.5, 7.5 ], "texture": "#side", "cullface": "down" }, + "up": { "uv": [ 6, 13, 8, 15 ], "texture": "#side" }, + "north": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" }, + "south": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" }, + "west": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" }, + "east": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 12, 0 ], + "to": [ 13, 16, 3 ], + "faces": { + "down": { "uv": [ 3, 13, 13, 16 ], "texture": "#bottom" }, + "up": { "uv": [ 3, 0, 13, 3 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 3, 0, 13, 4 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 3, 0, 13, 4 ], "texture": "#side" }, + "west": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 13, 0, 16, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 12, 13 ], + "to": [ 13, 16, 16 ], + "faces": { + "down": { "uv": [ 3, 0, 13, 3 ], "texture": "#bottom" }, + "up": { "uv": [ 3, 13, 13, 16 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 3, 0, 13, 4 ], "texture": "#side" }, + "south": { "uv": [ 3, 0, 13, 4 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 13, 0, 16, 4 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 0, 0, 3, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 15, 12 ], + "to": [ 12, 16, 13 ], + "faces": { + "up": { "uv": [ 4, 12, 12, 13 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 4, 0, 12, 1 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 15, 3 ], + "to": [ 12, 16, 4 ], + "faces": { + "up": { "uv": [ 4, 3, 12, 4 ], "texture": "#top", "cullface": "up" }, + "south": { "uv": [ 4, 0, 12, 1 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 5, 0, 5 ], + "to": [ 7, 2, 7 ], + "faces": { + "up": { "uv": [ 5, 13, 7, 15 ], "texture": "#side" }, + "north": { "uv": [ 9, 14, 11, 16 ], "texture": "#side" }, + "south": { "uv": [ 5, 14, 7, 16 ], "texture": "#side" }, + "west": { "uv": [ 5, 14, 7, 16 ], "texture": "#side" }, + "east": { "uv": [ 9, 14, 11, 16 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/orange_mushroom_02.json b/src/main/resources/assets/betternether/models/block/orange_mushroom_02.json new file mode 100644 index 0000000..01a745f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/orange_mushroom_02.json @@ -0,0 +1,197 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/orange_mushroom_side", + "side": "betternether:block/orange_mushroom_side", + "top": "betternether:block/orange_mushroom_top", + "bottom": "betternether:block/orange_mushroom_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 6, 6 ], + "to": [ 10, 9, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#bottom" }, + "north": { "uv": [ 6, 7, 10, 10 ], "texture": "#side" }, + "south": { "uv": [ 6, 7, 10, 10 ], "texture": "#side" }, + "west": { "uv": [ 6, 7, 10, 10 ], "texture": "#side" }, + "east": { "uv": [ 6, 7, 10, 10 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 6, 9 ], + "faces": { + "north": { "uv": [ 7, 10, 9, 16 ], "texture": "#side" }, + "south": { "uv": [ 7, 10, 9, 16 ], "texture": "#side" }, + "west": { "uv": [ 7, 10, 9, 16 ], "texture": "#side" }, + "east": { "uv": [ 7, 10, 9, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 11, 3 ], + "to": [ 12, 13, 13 ], + "faces": { + "down": { "uv": [ 4, 3, 12, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 3, 12, 13 ], "texture": "#top", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 11, 3 ], + "to": [ 4, 14, 13 ], + "faces": { + "down": { "uv": [ 1, 3, 4, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 1, 3, 4, 13 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 13, 1, 16, 4 ], "texture": "#side" }, + "south": { "uv": [ 13, 1, 16, 4 ], "texture": "#side" }, + "west": { "uv": [ 3, 1, 13, 4 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 3, 1, 13, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 11, 3 ], + "to": [ 15, 14, 13 ], + "faces": { + "down": { "uv": [ 12, 3, 15, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 12, 3, 15, 13 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 0, 1, 3, 4 ], "texture": "#side" }, + "south": { "uv": [ 0, 1, 3, 4 ], "texture": "#side" }, + "west": { "uv": [ 3, 1, 13, 4 ], "texture": "#side" }, + "east": { "uv": [ 3, 1, 13, 4 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 9, 3 ], + "to": [ 11, 11, 13 ], + "faces": { + "down": { "uv": [ 5, 3, 11, 13 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "south": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "west": { "uv": [ 3, 4, 13, 6 ], "texture": "#side" }, + "east": { "uv": [ 3, 4, 13, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 9, 5 ], + "to": [ 5, 11, 11 ], + "faces": { + "down": { "uv": [ 3, 5, 5, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 11, 4, 13, 6 ], "texture": "#side" }, + "south": { "uv": [ 3, 4, 5, 6 ], "texture": "#side" }, + "west": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 9, 5 ], + "to": [ 13, 11, 11 ], + "faces": { + "down": { "uv": [ 11, 5, 13, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 3, 4, 5, 6 ], "texture": "#side" }, + "south": { "uv": [ 11, 4, 13, 6 ], "texture": "#side" }, + "east": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 8, 0, 8 ], + "to": [ 10, 3, 10 ], + "faces": { + "up": { "uv": [ 7, 12, 9, 14 ], "texture": "#side" }, + "north": { "uv": [ 5.5, 13, 7.5, 16 ], "texture": "#side" }, + "south": { "uv": [ 8.5, 13, 10.5, 16 ], "texture": "#side" }, + "west": { "uv": [ 9, 13, 11, 16 ], "texture": "#side" }, + "east": { "uv": [ 5, 13, 7, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 8, 0, 6 ], + "to": [ 10, 1, 8 ], + "faces": { + "up": { "uv": [ 9, 13, 11, 15 ], "texture": "#side" }, + "north": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" }, + "south": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" }, + "west": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" }, + "east": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 6, 0, 8 ], + "to": [ 8, 1, 10 ], + "faces": { + "down": { "uv": [ 5.5, 5.5, 7.5, 7.5 ], "texture": "#side", "cullface": "down" }, + "up": { "uv": [ 6, 13, 8, 15 ], "texture": "#side" }, + "north": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" }, + "south": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" }, + "west": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" }, + "east": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 11, 1 ], + "to": [ 13, 14, 3 ], + "faces": { + "down": { "uv": [ 3, 13, 13, 15 ], "texture": "#bottom" }, + "up": { "uv": [ 3, 1, 13, 3 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 3, 0, 13, 2 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 3, 1, 13, 4 ], "texture": "#side" }, + "west": { "uv": [ 13, 1, 15, 4 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 13, 1, 15, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 11, 13 ], + "to": [ 13, 14, 15 ], + "faces": { + "down": { "uv": [ 3, 1, 13, 3 ], "texture": "#bottom" }, + "up": { "uv": [ 3, 13, 13, 15 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 3, 1, 13, 4 ], "texture": "#side" }, + "south": { "uv": [ 3, 1, 13, 4 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 13, 1, 15, 4 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 13, 1, 15, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 13, 12 ], + "to": [ 12, 14, 13 ], + "faces": { + "up": { "uv": [ 4, 12, 12, 13 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 4, 1, 12, 2 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 13, 3 ], + "to": [ 12, 14, 4 ], + "faces": { + "up": { "uv": [ 4, 3, 12, 4 ], "texture": "#top", "cullface": "up" }, + "south": { "uv": [ 4, 1, 12, 2 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 6, 0, 6 ], + "to": [ 8, 2, 8 ], + "faces": { + "up": { "uv": [ 5, 13, 7, 15 ], "texture": "#side" }, + "north": { "uv": [ 9, 14, 11, 16 ], "texture": "#side" }, + "south": { "uv": [ 5, 14, 7, 16 ], "texture": "#side" }, + "west": { "uv": [ 5, 14, 7, 16 ], "texture": "#side" }, + "east": { "uv": [ 9, 14, 11, 16 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/orange_mushroom_03.json b/src/main/resources/assets/betternether/models/block/orange_mushroom_03.json new file mode 100644 index 0000000..0c95917 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/orange_mushroom_03.json @@ -0,0 +1,84 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/orange_mushroom_side", + "side": "betternether:block/orange_mushroom_side", + "top": "betternether:block/orange_mushroom_top", + "bottom": "betternether:block/orange_mushroom_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 4, 6 ], + "to": [ 10, 6, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#bottom" }, + "north": { "uv": [ 6, 8, 10, 10 ], "texture": "#side" }, + "south": { "uv": [ 6, 8, 10, 10 ], "texture": "#side" }, + "west": { "uv": [ 6, 8, 10, 10 ], "texture": "#side" }, + "east": { "uv": [ 6, 8, 10, 10 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 4, 9 ], + "faces": { + "north": { "uv": [ 7, 12, 9, 16 ], "texture": "#side" }, + "south": { "uv": [ 7, 12, 9, 16 ], "texture": "#side" }, + "west": { "uv": [ 7, 12, 9, 16 ], "texture": "#side" }, + "east": { "uv": [ 7, 12, 9, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 8, 2 ], + "to": [ 12, 10, 14 ], + "faces": { + "down": { "uv": [ 4, 2, 12, 14 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 2, 12, 14 ], "texture": "#top" }, + "north": { "uv": [ 3, 1, 11, 3 ], "texture": "#side" }, + "south": { "uv": [ 3, 1, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 1, 1, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 1, 1, 13, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 6, 5 ], + "to": [ 11, 8, 11 ], + "faces": { + "down": { "uv": [ 3, 5, 5, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "south": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "west": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "east": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 8, 4 ], + "to": [ 14, 10, 12 ], + "faces": { + "down": { "uv": [ 12, 4, 14, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 12, 4, 14, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 1, 6, 3 ], "texture": "#side" }, + "south": { "uv": [ 4, 1, 6, 3 ], "texture": "#side" }, + "east": { "uv": [ 4, 1, 12, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 8, 4 ], + "to": [ 4, 10, 12 ], + "faces": { + "down": { "uv": [ 12, 4, 14, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 12, 4, 14, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 1, 6, 3 ], "texture": "#side" }, + "south": { "uv": [ 4, 1, 6, 3 ], "texture": "#side" }, + "west": { "uv": [ 4, 1, 12, 3 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/orange_mushroom_04.json b/src/main/resources/assets/betternether/models/block/orange_mushroom_04.json new file mode 100644 index 0000000..38b9ae5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/orange_mushroom_04.json @@ -0,0 +1,48 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/orange_mushroom_side", + "side": "betternether:block/orange_mushroom_side", + "top": "betternether:block/orange_mushroom_top", + "bottom": "betternether:block/orange_mushroom_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 2, 6 ], + "to": [ 10, 4, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#bottom" }, + "north": { "uv": [ 6, 5, 10, 7 ], "texture": "#side" }, + "south": { "uv": [ 6, 5, 10, 7 ], "texture": "#side" }, + "west": { "uv": [ 6, 5, 10, 7 ], "texture": "#side" }, + "east": { "uv": [ 6, 5, 10, 7 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 2, 9 ], + "faces": { + "north": { "uv": [ 7, 8, 9, 10 ], "texture": "#side" }, + "south": { "uv": [ 7, 8, 9, 10 ], "texture": "#side" }, + "west": { "uv": [ 7, 8, 9, 10 ], "texture": "#side" }, + "east": { "uv": [ 7, 8, 9, 10 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 4, 4 ], + "to": [ 12, 6, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 1, 12, 3 ], "texture": "#side" }, + "south": { "uv": [ 4, 1, 12, 3 ], "texture": "#side" }, + "west": { "uv": [ 4, 1, 12, 3 ], "texture": "#side" }, + "east": { "uv": [ 4, 1, 12, 3 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/pig_statue_respawner.json b/src/main/resources/assets/betternether/models/block/pig_statue_respawner.json new file mode 100644 index 0000000..db1f189 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/pig_statue_respawner.json @@ -0,0 +1,222 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/pig_statue_1", + "texture": "betternether:block/pig_statue_1", + "bowl": "betternether:block/pig_statue_1_bowl", + "body": "betternether:block/pig_statue_1_body", + "flame": "betternether:block/fire_small" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 9, 12, 4 ], + "to": [ 13, 22, 12 ], + "faces": { + "down": { "uv": [ 0, 10, 8, 14 ], "texture": "#body", "cullface": "up", "rotation": 90 }, + "north": { "uv": [ 8, 0, 12, 10 ], "texture": "#body", "cullface": "up" }, + "south": { "uv": [ 8, 0, 12, 10 ], "texture": "#body", "cullface": "up" }, + "west": { "uv": [ 0, 0, 8, 10 ], "texture": "#body", "cullface": "up" }, + "east": { "uv": [ 0, 0, 8, 10 ], "texture": "#body", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 0, 4 ], + "to": [ 13, 12, 8 ], + "faces": { + "down": { "uv": [ 0, 0, 4, 4 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 4, 4, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 4, 4, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 4, 4, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 22, 4 ], + "to": [ 15, 30, 12 ], + "faces": { + "down": { "uv": [ 4, 0, 12, 8 ], "texture": "#texture", "cullface": "up" }, + "up": { "uv": [ 4, 0, 12, 8 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 4, 0, 12, 8 ], "texture": "#texture", "cullface": "up" }, + "south": { "uv": [ 4, 0, 12, 8 ], "texture": "#texture", "cullface": "up" }, + "west": { "uv": [ 4, 8, 12, 16 ], "texture": "#texture", "cullface": "up" }, + "east": { "uv": [ 4, 0, 12, 8 ], "texture": "#texture", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 18, 12 ], + "to": [ 13, 22, 16 ], + "rotation": { "origin": [ 13, 18, 12 ], "axis": "z", "angle": 22.5 }, + "faces": { + "down": { "uv": [ 0, 4, 4, 16 ], "texture": "#texture", "cullface": "up", "rotation": 270 }, + "up": { "uv": [ 0, 4, 4, 16 ], "texture": "#texture", "cullface": "up", "rotation": 270 }, + "north": { "uv": [ 0, 16, 4, 4 ], "texture": "#texture", "cullface": "up", "rotation": 90 }, + "south": { "uv": [ 0, 16, 4, 4 ], "texture": "#texture", "cullface": "up", "rotation": 90 }, + "west": { "uv": [ 4, 4, 0, 0 ], "texture": "#texture", "cullface": "up", "rotation": 270 }, + "east": { "uv": [ 4, 4, 0, 0 ], "texture": "#texture", "cullface": "up", "rotation": 270 } + } + }, + { + "__comment": "Box8", + "from": [ -1, 17, 4 ], + "to": [ 7, 20, 12 ], + "faces": { + "down": { "uv": [ 8, 0, 16, 8 ], "texture": "#bowl", "cullface": "up" }, + "up": { "uv": [ 0, 0, 8, 8 ], "texture": "#bowl", "cullface": "up" }, + "north": { "uv": [ 0, 8, 8, 11 ], "texture": "#bowl", "cullface": "up" }, + "south": { "uv": [ 0, 8, 8, 11 ], "texture": "#bowl", "cullface": "up" }, + "west": { "uv": [ 0, 8, 8, 11 ], "texture": "#bowl", "cullface": "up" }, + "east": { "uv": [ 0, 8, 8, 11 ], "texture": "#bowl", "cullface": "up" } + } + }, + { + "__comment": "Box8", + "from": [ 0, 16, 5 ], + "to": [ 6, 17, 11 ], + "faces": { + "down": { "uv": [ 9, 1, 15, 7 ], "texture": "#bowl", "cullface": "up" }, + "north": { "uv": [ 1, 11, 7, 12 ], "texture": "#bowl", "cullface": "up" }, + "south": { "uv": [ 1, 11, 7, 12 ], "texture": "#bowl", "cullface": "up" }, + "west": { "uv": [ 1, 11, 7, 12 ], "texture": "#bowl", "cullface": "up" }, + "east": { "uv": [ 1, 11, 7, 12 ], "texture": "#bowl", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 0, 8 ], + "to": [ 7, 6, 10 ], + "faces": { + "down": { "uv": [ 0, 0, 2, 2 ], "texture": "#texture", "cullface": "down" }, + "south": { "uv": [ 0, 4, 2, 10 ], "texture": "#texture" }, + "west": { "uv": [ 0, 4, 2, 10 ], "texture": "#texture" }, + "east": { "uv": [ 0, 4, 2, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 6, 6 ], + "to": [ 7, 11, 10 ], + "faces": { + "down": { "uv": [ 13, 4, 15, 8 ], "texture": "#texture" }, + "north": { "uv": [ 12, 4, 14, 9 ], "texture": "#texture" }, + "south": { "uv": [ 12, 4, 14, 9 ], "texture": "#texture" }, + "west": { "uv": [ 12, 4, 16, 9 ], "texture": "#texture" }, + "east": { "uv": [ 12, 4, 16, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 11, 6 ], + "to": [ 8, 15, 10 ], + "faces": { + "down": { "uv": [ 0, 0, 4, 4 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 4, 4 ], "texture": "#texture" }, + "north": { "uv": [ 0, 0, 4, 4 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 4, 4 ], "texture": "#texture" }, + "west": { "uv": [ 12, 0, 16, 4 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 4, 4 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1.0057, 9.2617, 4 ], + "to": [ 7.0057, 11.2617, 6 ], + "rotation": { "origin": [ 7, 9, 4 ], "axis": "z", "angle": -22.5 }, + "faces": { + "down": { "uv": [ 2, 10, 0, 4 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 2, 10, 0, 4 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 2, 10, 0, 4 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 2, 10, 0, 4 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 2, 2, 0, 0 ], "texture": "#texture", "rotation": 270 }, + "east": { "uv": [ 2, 2, 0, 0 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "Box1", + "from": [ 9, 0, 8 ], + "to": [ 13, 12, 12 ], + "faces": { + "down": { "uv": [ 0, 0, 4, 4 ], "texture": "#texture", "cullface": "down" }, + "south": { "uv": [ 0, 4, 4, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 4, 4, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 4, 4, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 18, 0 ], + "to": [ 13, 22, 4 ], + "rotation": { "origin": [ 13, 18, 0 ], "axis": "z", "angle": 22.5 }, + "faces": { + "down": { "uv": [ 0, 4, 4, 16 ], "texture": "#texture", "cullface": "up", "rotation": 270 }, + "up": { "uv": [ 0, 4, 4, 16 ], "texture": "#texture", "cullface": "up", "rotation": 270 }, + "north": { "uv": [ 0, 16, 4, 4 ], "texture": "#texture", "cullface": "up", "rotation": 90 }, + "south": { "uv": [ 0, 16, 4, 4 ], "texture": "#texture", "cullface": "up", "rotation": 90 }, + "west": { "uv": [ 4, 4, 0, 0 ], "texture": "#texture", "cullface": "up", "rotation": 270 }, + "east": { "uv": [ 4, 4, 0, 0 ], "texture": "#texture", "cullface": "up", "rotation": 270 } + } + }, + { + "__comment": "Box1", + "from": [ 1.0057, 9.2617, 10 ], + "to": [ 7.0057, 11.2617, 12 ], + "rotation": { "origin": [ 7, 9, 10 ], "axis": "z", "angle": -22.5 }, + "faces": { + "down": { "uv": [ 2, 10, 0, 4 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 2, 10, 0, 4 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 2, 10, 0, 4 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 2, 10, 0, 4 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 2, 2, 0, 0 ], "texture": "#texture", "rotation": 270 }, + "east": { "uv": [ 2, 2, 0, 0 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "Box1", + "from": [ 5, 0, 6 ], + "to": [ 7, 6, 8 ], + "faces": { + "down": { "uv": [ 0, 0, 2, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 4, 2, 10 ], "texture": "#texture" }, + "west": { "uv": [ 0, 4, 2, 10 ], "texture": "#texture" }, + "east": { "uv": [ 0, 4, 2, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 23, 6 ], + "to": [ 7, 26, 10 ], + "faces": { + "down": { "uv": [ 6, 14, 10, 15 ], "texture": "#texture", "cullface": "up" }, + "up": { "uv": [ 6, 12, 10, 13 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 7, 12, 8, 15 ], "texture": "#texture", "cullface": "up" }, + "south": { "uv": [ 8, 12, 9, 15 ], "texture": "#texture", "cullface": "up" }, + "west": { "uv": [ 6, 12, 10, 15 ], "texture": "#texture", "cullface": "up" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 0, 17, 5 ], + "to": [ 0.001, 25, 13 ], + "rotation": { "origin": [ 0, 17, 5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#flame" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#flame" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 6, 17, 5 ], + "to": [ 6.001, 25, 13 ], + "rotation": { "origin": [ 6, 17, 5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#flame" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#flame" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/pig_statue_respawner_top.json b/src/main/resources/assets/betternether/models/block/pig_statue_respawner_top.json new file mode 100644 index 0000000..f81080b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/pig_statue_respawner_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/pig_statue_1" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_agave.json b/src/main/resources/assets/betternether/models/block/potted_agave.json new file mode 100644 index 0000000..087e1ab --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_agave.json @@ -0,0 +1,130 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/agave_leaf", + "texture": "betternether:block/agave_leaf", + "texture2": "betternether:block/agave_leaf_02" + }, + "elements": [ + { + "__comment": "PlaneZ5", + "from": [ 0, -8, 7 ], + "to": [ 16, 8, 7.001 ], + "rotation": { "origin": [ 0, -8, 7 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ5", + "from": [ 0, -8, 9 ], + "to": [ 16, 8, 9.001 ], + "rotation": { "origin": [ 0, -8, 9 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 9, -8, 0 ], + "to": [ 9.001, 8, 16 ], + "rotation": { "origin": [ 9, -8, 0 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 7, -8, 0 ], + "to": [ 7.001, 8, 16 ], + "rotation": { "origin": [ 7, -8, 0 ], "axis": "z", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2" } + } + }, + { + "__comment": "PlaneX8", + "from": [ 0, -8, 0 ], + "to": [ 22, 8, 0.001 ], + "rotation": { "origin": [ 0, -8, 0 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 14, 0, 14.001, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 14, 0, 14.001, 16 ], "texture": "#texture", "rotation": 270 }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 1.999001, 0, 2, 16 ], "texture": "#texture" }, + "east": { "uv": [ 14, 0, 14.001, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX8", + "from": [ 0, -8, 16 ], + "to": [ 22, 8, 16.001 ], + "rotation": { "origin": [ 0, -8, 16 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 14, 0, 14.001, 16 ], "texture": "#texture2", "rotation": 90 }, + "up": { "uv": [ 14, 0, 14.001, 16 ], "texture": "#texture2", "rotation": 270 }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2" }, + "west": { "uv": [ 1.999001, 0, 2, 16 ], "texture": "#texture2" }, + "east": { "uv": [ 14, 0, 14.001, 16 ], "texture": "#texture2" } + } + }, + { + "__comment": "PlaneY7", + "from": [ 0, -2, -6.5 ], + "to": [ 16, -1.999, 9.5 ], + "rotation": { "origin": [ 0, -2, -6.5 ], "axis": "x", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY7", + "from": [ 0, -8, 8 ], + "to": [ 16, -7.999, 24 ], + "rotation": { "origin": [ 0, -8, 8 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture2", "rotation": 180 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture2", "rotation": 180 } + } + }, + { + "__comment": "PlaneY9", + "from": [ 8, -8, 0 ], + "to": [ 24, -7.999, 16 ], + "rotation": { "origin": [ 8, -8, 0 ], "axis": "z", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "PlaneY9", + "from": [ -7, -2, 0 ], + "to": [ 9, -1.999, 16 ], + "rotation": { "origin": [ -7, -2, 0 ], "axis": "z", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture2", "rotation": 270 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture2", "rotation": 270 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_black_apple.json b/src/main/resources/assets/betternether/models/block/potted_black_apple.json new file mode 100644 index 0000000..ab42046 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_black_apple.json @@ -0,0 +1,69 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/black_apple", + "texture": "betternether:block/black_apple" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, -8, 6 ], + "to": [ 9, -2, 8 ], + "faces": { + "down": { "uv": [ 5.5, 14, 7.5, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 5, 10, 7, 12 ], "texture": "#texture" }, + "north": { "uv": [ 5, 10, 7, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 10, 7, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 10, 7, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 10, 7, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7.5, -2, 6 ], + "to": [ 8.5, 0, 7.5 ], + "faces": { + "up": { "uv": [ 6, 8, 7, 9.5 ], "texture": "#texture" }, + "north": { "uv": [ 5, 8, 6, 10 ], "texture": "#texture" }, + "south": { "uv": [ 6, 8, 7, 10 ], "texture": "#texture" }, + "west": { "uv": [ 5, 8, 6.5, 10 ], "texture": "#texture" }, + "east": { "uv": [ 5, 8, 6.5, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "Box9", + "from": [ 6, -1, 8.5 ], + "to": [ 10, 3, 12.5 ], + "faces": { + "down": { "uv": [ 10, 6, 14, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 10, 6, 14, 10 ], "texture": "#texture" }, + "north": { "uv": [ 14, 6, 10, 10 ], "texture": "#texture" }, + "south": { "uv": [ 10, 6, 14, 10 ], "texture": "#texture", "rotation": 180 }, + "west": { "uv": [ 10, 6, 14, 10 ], "texture": "#texture" }, + "east": { "uv": [ 10, 6, 14, 10 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "Box10", + "from": [ 7, -2, 9.5 ], + "to": [ 9, -1, 11.5 ], + "faces": { + "down": { "uv": [ 11, 13, 13, 15 ], "texture": "#texture" }, + "north": { "uv": [ 11, 11, 13, 12 ], "texture": "#texture" }, + "south": { "uv": [ 11, 11, 13, 12 ], "texture": "#texture" }, + "west": { "uv": [ 11, 11, 13, 12 ], "texture": "#texture" }, + "east": { "uv": [ 11, 11, 13, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX12", + "from": [ 8, -4, 1 ], + "to": [ 8.001, 8, 11 ], + "faces": { + "west": { "uv": [ 0, 0, 10, 12 ], "texture": "#texture" }, + "east": { "uv": [ 10, 0, 0, 12 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_black_bush.json b/src/main/resources/assets/betternether/models/block/potted_black_bush.json new file mode 100644 index 0000000..bd4dd7e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_black_bush.json @@ -0,0 +1,48 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/black_bush", + "texture": "betternether:block/black_bush", + "stem": "betternether:block/ink_bush_bark" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, -6, 2 ], + "to": [ 14, 6, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "north": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "south": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "west": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "east": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, -9, 7 ], + "to": [ 9, 0, 9 ], + "faces": { + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#stem" }, + "north": { "uv": [ 7, 7, 9, 16 ], "texture": "#stem" }, + "south": { "uv": [ 7, 7, 9, 16 ], "texture": "#stem" }, + "west": { "uv": [ 7, 7, 9, 16 ], "texture": "#stem" }, + "east": { "uv": [ 7, 7, 9, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box3", + "from": [ 4, -4, 4 ], + "to": [ 12, 4, 12 ], + "faces": { + "down": { "uv": [ 12, 12, 4, 4 ], "texture": "#texture" }, + "up": { "uv": [ 12, 12, 4, 4 ], "texture": "#texture" }, + "north": { "uv": [ 12, 12, 4, 4 ], "texture": "#texture" }, + "south": { "uv": [ 12, 12, 4, 4 ], "texture": "#texture" }, + "west": { "uv": [ 12, 12, 4, 4 ], "texture": "#texture" }, + "east": { "uv": [ 12, 12, 4, 4 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_bone_grass.json b/src/main/resources/assets/betternether/models/block/potted_bone_grass.json new file mode 100644 index 0000000..f2ac196 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_bone_grass.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/potted_reeds", + "textures": { + "particle": "betternether:block/bone_grass_1", + "texture": "betternether:block/bone_grass_1" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_bone_mushroom.json b/src/main/resources/assets/betternether/models/block/potted_bone_mushroom.json new file mode 100644 index 0000000..0f30a48 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_bone_mushroom.json @@ -0,0 +1,195 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/bone_mushroom_up", + "texture": "betternether:block/bone_mushroom_up", + "cap": "betternether:block/bone_mushroom_cap", + "wall": "betternether:block/bone_mycelium" + }, + "elements": [ + { + "__comment": "outCap", + "from": [ 1, 1, 9.5 ], + "to": [ 5, 3, 13.5 ], + "shade": false, + "faces": { + "up": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "inCap", + "from": [ 5, 3, 13.5 ], + "to": [ 1, 1, 9.5 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapOut", + "from": [ 11.5, -1, 9 ], + "to": [ 14.5, 0, 12 ], + "shade": false, + "faces": { + "up": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapIn", + "from": [ 14.5, 0, 12 ], + "to": [ 11.5, -1, 9 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + }, + { + "__comment": "bgCapOut", + "from": [ 7, 3.5, 6.5 ], + "to": [ 12, 5.5, 11.5 ], + "shade": false, + "faces": { + "up": { "uv": [ 4, 0, 9, 5 ], "texture": "#cap" }, + "north": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "south": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "west": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "east": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" } + } + }, + { + "__comment": "bgCapIn", + "from": [ 12, 5.5, 11.5 ], + "to": [ 7, 3.5, 6.5 ], + "shade": false, + "faces": { + "down": { "uv": [ 4, 0, 9, 5 ], "texture": "#cap" }, + "north": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "south": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "west": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" }, + "east": { "uv": [ 4, 5, 9, 7 ], "texture": "#cap" } + } + }, + { + "__comment": "PlaneY24", + "from": [ 0, -7.5, 0 ], + "to": [ 16, -7.499, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#wall" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 2, -8, 0 ], + "to": [ 2.001, 8, 16 ], + "rotation": { "origin": [ 2, -8, 0 ], "axis": "y", "angle": 22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 7.5, -8, 0 ], + "to": [ 7.501, 8, 16 ], + "rotation": { "origin": [ 7.5, -8, 0 ], "axis": "y", "angle": -22.5 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 13, -8, 0 ], + "to": [ 13.001, 8, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX25", + "from": [ 0, -8, 7 ], + "to": [ 16, 8, 7.001 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "outCap", + "from": [ 3.5, 4, 2 ], + "to": [ 7.5, 6, 6 ], + "shade": false, + "faces": { + "up": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "inCap", + "from": [ 7.5, 6, 6 ], + "to": [ 3.5, 4, 2 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 4, 4 ], "texture": "#cap" }, + "north": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "south": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "west": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" }, + "east": { "uv": [ 0, 4, 4, 6 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapOut", + "from": [ 8.5, -1, 5.5 ], + "to": [ 11.5, 0, 8.5 ], + "shade": false, + "faces": { + "up": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + }, + { + "__comment": "smCapIn", + "from": [ 11.5, 0, 8.5 ], + "to": [ 8.5, -1, 5.5 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 8, 3, 11 ], "texture": "#cap" }, + "north": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "south": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" }, + "east": { "uv": [ 0, 11, 3, 12 ], "texture": "#cap" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_cactus_barrel.json b/src/main/resources/assets/betternether/models/block/potted_cactus_barrel.json new file mode 100644 index 0000000..8a337a7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_cactus_barrel.json @@ -0,0 +1,76 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cactus_barrel_top", + "side": "betternether:block/cactus_barrel_side", + "top": "betternether:block/cactus_barrel_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 3, -8, 3 ], + "to": [ 13, -6, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#top" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#top" }, + "north": { "uv": [ 3, 6, 13, 8 ], "texture": "#side" }, + "south": { "uv": [ 3, 6, 13, 8 ], "texture": "#side" }, + "west": { "uv": [ 3, 6, 13, 8 ], "texture": "#side" }, + "east": { "uv": [ 3, 6, 13, 8 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 4, 3 ], + "to": [ 13, 6, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#top" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#top" }, + "north": { "uv": [ 3, 2, 13, 4 ], "texture": "#side" }, + "south": { "uv": [ 3, 2, 13, 4 ], "texture": "#side" }, + "west": { "uv": [ 3, 2, 13, 4 ], "texture": "#side" }, + "east": { "uv": [ 3, 2, 13, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, -6, 14 ], + "to": [ 14, 4, 16 ], + "faces": { + "down": { "uv": [ 2, 0, 14, 2 ], "texture": "#top" }, + "up": { "uv": [ 2, 14, 14, 16 ], "texture": "#top" }, + "north": { "uv": [ 2, 4, 14, 14 ], "texture": "#side" }, + "south": { "uv": [ 2, 4, 14, 14 ], "texture": "#side" }, + "west": { "uv": [ 14, 4, 16, 14 ], "texture": "#side" }, + "east": { "uv": [ 0, 4, 2, 14 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, -6, 0 ], + "to": [ 14, 4, 2 ], + "faces": { + "down": { "uv": [ 2, 14, 14, 16 ], "texture": "#top" }, + "up": { "uv": [ 2, 0, 14, 2 ], "texture": "#top" }, + "north": { "uv": [ 2, 4, 14, 14 ], "texture": "#side" }, + "south": { "uv": [ 2, 4, 14, 14 ], "texture": "#side" }, + "west": { "uv": [ 0, 4, 2, 14 ], "texture": "#side" }, + "east": { "uv": [ 14, 4, 16, 14 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 0, -6, 2 ], + "to": [ 16, 4, 14 ], + "faces": { + "down": { "uv": [ 0, 2, 16, 14 ], "texture": "#top" }, + "up": { "uv": [ 0, 2, 16, 14 ], "texture": "#top" }, + "north": { "uv": [ 0, 4, 16, 14 ], "texture": "#side" }, + "south": { "uv": [ 0, 4, 16, 14 ], "texture": "#side" }, + "west": { "uv": [ 2, 4, 14, 14 ], "texture": "#side" }, + "east": { "uv": [ 2, 4, 14, 14 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_egg_plant.json b/src/main/resources/assets/betternether/models/block/potted_egg_plant.json new file mode 100644 index 0000000..88c432a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_egg_plant.json @@ -0,0 +1,43 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/egg_plant", + "texture": "betternether:block/egg_plant", + "vine": "betternether:block/egg_plant_vine" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, -9, 5 ], + "to": [ 12, -2, 12 ], + "faces": { + "up": { "uv": [ 0, 1, 7, 8 ], "texture": "#texture" }, + "north": { "uv": [ 0, 8, 7, 15 ], "texture": "#texture" }, + "south": { "uv": [ 0, 8, 7, 15 ], "texture": "#texture" }, + "west": { "uv": [ 0, 8, 7, 15 ], "texture": "#texture" }, + "east": { "uv": [ 0, 8, 7, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY5", + "from": [ 0, -7.5, 0 ], + "to": [ 16, -7.499, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#vine" } + } + }, + { + "__comment": "Box1", + "from": [ 6, -2, 6 ], + "to": [ 11, -1, 11 ], + "faces": { + "up": { "uv": [ 1, 1, 6, 6 ], "texture": "#texture" }, + "north": { "uv": [ 1.5, 8, 6.5, 9 ], "texture": "#texture" }, + "south": { "uv": [ 1.5, 8, 6.5, 9 ], "texture": "#texture" }, + "west": { "uv": [ 1.5, 8, 6.5, 9 ], "texture": "#texture" }, + "east": { "uv": [ 1.5, 8, 6.5, 9 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_gray_mold.json b/src/main/resources/assets/betternether/models/block/potted_gray_mold.json new file mode 100644 index 0000000..27ca619 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_gray_mold.json @@ -0,0 +1,87 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/gray_mold_side", + "side": "betternether:block/gray_mold_side", + "bottom": "betternether:block/gray_mold_bottom" + }, + "elements": [ + { + "__comment": "PlaneY2", + "from": [ 0, -7.5, 0 ], + "to": [ 16, -7.499, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 7, -8, 0 ], + "to": [ 7.001, 8, 16 ], + "rotation": { "origin": [ 7, -8, 0 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#side" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX3", + "from": [ -3.9848, -7.3021, 0 ], + "to": [ 12.0152, -7.3011, 16 ], + "rotation": { "origin": [ 12, -8, 0 ], "axis": "z", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 16, 0, 0 ], "texture": "#side", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#side", "rotation": 270 } + } + }, + { + "__comment": "PlaneZ7", + "from": [ 2.5, -11, 2.5 ], + "to": [ 18.5, 5, 2.501 ], + "rotation": { "origin": [ 2.5, -11, 2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ7", + "from": [ 0, -8.000999, 5 ], + "to": [ 16, -8, 21 ], + "rotation": { "origin": [ 0, -8, 5 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ7", + "from": [ 0, -8, 9 ], + "to": [ 16, 8, 9.001 ], + "rotation": { "origin": [ 0, -8, 9 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ7", + "from": [ 2.5, -9, 13.5 ], + "to": [ 18.5, 7, 13.501 ], + "rotation": { "origin": [ 2.5, -9, 13.5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_ink_bush.json b/src/main/resources/assets/betternether/models/block/potted_ink_bush.json new file mode 100644 index 0000000..fad9449 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_ink_bush.json @@ -0,0 +1,422 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/ink_bush_bark", + "bark": "betternether:block/ink_bush_bark", + "leaves": "betternether:block/ink_bush_leaves" + }, + "elements": [ + { + "__comment": "trunk", + "from": [ 5, -8, 6 ], + "to": [ 7, 2, 8 ], + "faces": { + "down": { "uv": [ 5, 8, 7, 10 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 5, 6, 7, 8 ], "texture": "#bark" }, + "north": { "uv": [ 8, 6, 10, 16 ], "texture": "#bark" }, + "south": { "uv": [ 8, 6, 10, 16 ], "texture": "#bark" }, + "west": { "uv": [ 8, 6, 10, 16 ], "texture": "#bark" }, + "east": { "uv": [ 8, 6, 10, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk1", + "from": [ 8, -8, 9 ], + "to": [ 10, -1, 11 ], + "faces": { + "down": { "uv": [ 8, 5, 10, 7 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 8, 9, 10, 11 ], "texture": "#bark" }, + "north": { "uv": [ 6, 9, 8, 16 ], "texture": "#bark" }, + "south": { "uv": [ 8, 9, 10, 16 ], "texture": "#bark" }, + "west": { "uv": [ 9, 9, 11, 16 ], "texture": "#bark" }, + "east": { "uv": [ 5, 9, 7, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk2", + "from": [ 5, 1, 1 ], + "to": [ 6, 2, 6 ], + "faces": { + "down": { "uv": [ 5, 10, 6, 15 ], "texture": "#bark" }, + "up": { "uv": [ 5, 1, 6, 6 ], "texture": "#bark" }, + "north": { "uv": [ 10, 6, 11, 7 ], "texture": "#bark" }, + "west": { "uv": [ 1, 6, 6, 7 ], "texture": "#bark" }, + "east": { "uv": [ 10, 6, 15, 7 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk3", + "from": [ 9, -3, 5 ], + "to": [ 10, -2, 9 ], + "faces": { + "down": { "uv": [ 9, 7, 10, 11 ], "texture": "#bark" }, + "up": { "uv": [ 9, 5, 10, 9 ], "texture": "#bark" }, + "north": { "uv": [ 6, 10, 7, 11 ], "texture": "#bark" }, + "west": { "uv": [ 5, 10, 9, 11 ], "texture": "#bark" }, + "east": { "uv": [ 7, 10, 11, 11 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk4", + "from": [ 10, -2, 10 ], + "to": [ 15, -1, 11 ], + "faces": { + "down": { "uv": [ 10, 5, 15, 6 ], "texture": "#bark" }, + "up": { "uv": [ 10, 10, 15, 11 ], "texture": "#bark" }, + "north": { "uv": [ 1, 9, 6, 10 ], "texture": "#bark" }, + "south": { "uv": [ 10, 9, 15, 10 ], "texture": "#bark" }, + "east": { "uv": [ 5, 9, 6, 10 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk5", + "from": [ 8, -2, 11 ], + "to": [ 9, -1, 14 ], + "faces": { + "down": { "uv": [ 8, 2, 9, 5 ], "texture": "#bark" }, + "up": { "uv": [ 8, 11, 9, 14 ], "texture": "#bark" }, + "west": { "uv": [ 11, 9, 14, 10 ], "texture": "#bark" }, + "east": { "uv": [ 2, 9, 5, 10 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk6", + "from": [ 4, -4, 10 ], + "to": [ 8, -3, 11 ], + "faces": { + "down": { "uv": [ 4, 5, 8, 6 ], "texture": "#bark" }, + "up": { "uv": [ 4, 10, 8, 11 ], "texture": "#bark" }, + "north": { "uv": [ 8, 11, 12, 12 ], "texture": "#bark" }, + "south": { "uv": [ 4, 11, 8, 12 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk7", + "from": [ 9, -2, 5 ], + "to": [ 10, 6, 6 ], + "faces": { + "up": { "uv": [ 9, 5, 10, 6 ], "texture": "#bark" }, + "north": { "uv": [ 6, 2, 7, 10 ], "texture": "#bark" }, + "south": { "uv": [ 9, 2, 10, 10 ], "texture": "#bark" }, + "west": { "uv": [ 5, 2, 6, 10 ], "texture": "#bark" }, + "east": { "uv": [ 10, 2, 11, 10 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk8", + "from": [ 8, -2, 14 ], + "to": [ 9, 4, 15 ], + "faces": { + "down": { "uv": [ 8, 1, 9, 2 ], "texture": "#bark" }, + "up": { "uv": [ 8, 14, 9, 15 ], "texture": "#bark" }, + "north": { "uv": [ 7, 4, 8, 10 ], "texture": "#bark" }, + "south": { "uv": [ 8, 4, 9, 10 ], "texture": "#bark" }, + "west": { "uv": [ 14, 4, 15, 10 ], "texture": "#bark" }, + "east": { "uv": [ 1, 4, 2, 10 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk9", + "from": [ 3, -4, 10 ], + "to": [ 4, 2, 11 ], + "faces": { + "down": { "uv": [ 3, 5, 4, 6 ], "texture": "#bark" }, + "up": { "uv": [ 3, 10, 4, 11 ], "texture": "#bark" }, + "north": { "uv": [ 12, 6, 13, 12 ], "texture": "#bark" }, + "south": { "uv": [ 3, 6, 4, 12 ], "texture": "#bark" }, + "west": { "uv": [ 10, 6, 11, 12 ], "texture": "#bark" }, + "east": { "uv": [ 5, 6, 6, 12 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk10", + "from": [ 14, -1, 10 ], + "to": [ 15, 5, 11 ], + "faces": { + "up": { "uv": [ 14, 10, 15, 11 ], "texture": "#bark" }, + "north": { "uv": [ 1, 3, 2, 9 ], "texture": "#bark" }, + "south": { "uv": [ 14, 3, 15, 9 ], "texture": "#bark" }, + "west": { "uv": [ 10, 3, 11, 9 ], "texture": "#bark" }, + "east": { "uv": [ 5, 3, 6, 9 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk11", + "from": [ 2, -1, 7 ], + "to": [ 5, 0, 8 ], + "faces": { + "down": { "uv": [ 2, 8, 5, 9 ], "texture": "#bark" }, + "up": { "uv": [ 2, 7, 5, 8 ], "texture": "#bark" }, + "north": { "uv": [ 11, 8, 14, 9 ], "texture": "#bark" }, + "south": { "uv": [ 2, 8, 5, 9 ], "texture": "#bark" }, + "west": { "uv": [ 7, 8, 8, 9 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk12", + "from": [ 7, 0, 7 ], + "to": [ 10, 1, 8 ], + "faces": { + "down": { "uv": [ 7, 8, 10, 9 ], "texture": "#bark" }, + "up": { "uv": [ 7, 7, 10, 8 ], "texture": "#bark" }, + "north": { "uv": [ 6, 7, 9, 8 ], "texture": "#bark" }, + "south": { "uv": [ 7, 7, 10, 8 ], "texture": "#bark" }, + "east": { "uv": [ 8, 7, 9, 8 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk13", + "from": [ 6, -2, 8 ], + "to": [ 7, -1, 13 ], + "faces": { + "down": { "uv": [ 6, 3, 7, 8 ], "texture": "#bark" }, + "up": { "uv": [ 6, 8, 7, 13 ], "texture": "#bark" }, + "south": { "uv": [ 6, 9, 7, 10 ], "texture": "#bark" }, + "west": { "uv": [ 8, 9, 13, 10 ], "texture": "#bark" }, + "east": { "uv": [ 3, 9, 8, 10 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk14", + "from": [ 6, -1, 12 ], + "to": [ 7, 5, 13 ], + "faces": { + "up": { "uv": [ 6, 12, 7, 13 ], "texture": "#bark" }, + "north": { "uv": [ 9, 3, 10, 9 ], "texture": "#bark" }, + "south": { "uv": [ 6, 3, 7, 9 ], "texture": "#bark" }, + "west": { "uv": [ 12, 3, 13, 9 ], "texture": "#bark" }, + "east": { "uv": [ 3, 3, 4, 9 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk15", + "from": [ 2, 0, 7 ], + "to": [ 3, 6, 8 ], + "faces": { + "up": { "uv": [ 2, 7, 3, 8 ], "texture": "#bark" }, + "north": { "uv": [ 13, 2, 14, 8 ], "texture": "#bark" }, + "south": { "uv": [ 2, 2, 3, 8 ], "texture": "#bark" }, + "west": { "uv": [ 7, 2, 8, 8 ], "texture": "#bark" }, + "east": { "uv": [ 8, 2, 9, 8 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk16", + "from": [ 5, 2, 1 ], + "to": [ 6, 5, 2 ], + "faces": { + "up": { "uv": [ 5, 1, 6, 2 ], "texture": "#bark" }, + "north": { "uv": [ 10, 3, 11, 6 ], "texture": "#bark" }, + "south": { "uv": [ 5, 3, 6, 6 ], "texture": "#bark" }, + "west": { "uv": [ 1, 3, 2, 6 ], "texture": "#bark" }, + "east": { "uv": [ 14, 3, 15, 6 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk17", + "from": [ 9, 1, 7 ], + "to": [ 10, 4, 8 ], + "faces": { + "up": { "uv": [ 9, 7, 10, 8 ], "texture": "#bark" }, + "north": { "uv": [ 6, 4, 7, 7 ], "texture": "#bark" }, + "south": { "uv": [ 9, 4, 10, 7 ], "texture": "#bark" }, + "west": { "uv": [ 7, 4, 8, 7 ], "texture": "#bark" }, + "east": { "uv": [ 8, 4, 9, 7 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk18", + "from": [ 4, -8, 5 ], + "to": [ 6, -6, 7 ], + "faces": { + "down": { "uv": [ 4, 9, 6, 11 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 4, 5, 6, 7 ], "texture": "#bark" }, + "north": { "uv": [ 10, 14, 12, 16 ], "texture": "#bark" }, + "south": { "uv": [ 4, 14, 6, 16 ], "texture": "#bark" }, + "west": { "uv": [ 5, 14, 7, 16 ], "texture": "#bark" }, + "east": { "uv": [ 9, 14, 11, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk19", + "from": [ 6, -8, 7 ], + "to": [ 8, -4, 9 ], + "faces": { + "down": { "uv": [ 6, 7, 8, 9 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 6, 7, 8, 9 ], "texture": "#bark" }, + "north": { "uv": [ 8, 12, 10, 16 ], "texture": "#bark" }, + "south": { "uv": [ 6, 12, 8, 16 ], "texture": "#bark" }, + "west": { "uv": [ 7, 12, 9, 16 ], "texture": "#bark" }, + "east": { "uv": [ 7, 12, 9, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk20", + "from": [ 9, -8, 8 ], + "to": [ 11, -5, 10 ], + "faces": { + "down": { "uv": [ 9, 6, 11, 8 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 9, 8, 11, 10 ], "texture": "#bark" }, + "north": { "uv": [ 5, 13, 7, 16 ], "texture": "#bark" }, + "south": { "uv": [ 9, 13, 11, 16 ], "texture": "#bark" }, + "west": { "uv": [ 8, 13, 10, 16 ], "texture": "#bark" }, + "east": { "uv": [ 6, 13, 8, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk21", + "from": [ 7, -8, 10 ], + "to": [ 9, -7, 12 ], + "faces": { + "down": { "uv": [ 7, 4, 9, 6 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 7, 10, 9, 12 ], "texture": "#bark" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#bark" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#bark" }, + "west": { "uv": [ 10, 15, 12, 16 ], "texture": "#bark" }, + "east": { "uv": [ 4, 15, 6, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk22", + "from": [ 5, -8, 8 ], + "to": [ 6, -7, 9 ], + "faces": { + "down": { "uv": [ 5, 7, 6, 8 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 5, 8, 6, 9 ], "texture": "#bark" }, + "south": { "uv": [ 5, 15, 6, 16 ], "texture": "#bark" }, + "west": { "uv": [ 8, 15, 9, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk23", + "from": [ 7, -8, 5 ], + "to": [ 8, -7, 6 ], + "faces": { + "down": { "uv": [ 7, 10, 8, 11 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 7, 5, 8, 6 ], "texture": "#bark" }, + "north": { "uv": [ 8, 15, 9, 16 ], "texture": "#bark" }, + "south": { "uv": [ 7, 15, 8, 16 ], "texture": "#bark" }, + "west": { "uv": [ 5, 15, 6, 16 ], "texture": "#bark" }, + "east": { "uv": [ 10, 15, 11, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "trunk24", + "from": [ 10, -8, 11 ], + "to": [ 11, -7, 12 ], + "faces": { + "down": { "uv": [ 10, 4, 11, 5 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 10, 11, 11, 12 ], "texture": "#bark" }, + "north": { "uv": [ 5, 15, 6, 16 ], "texture": "#bark" }, + "south": { "uv": [ 10, 15, 11, 16 ], "texture": "#bark" }, + "west": { "uv": [ 11, 15, 12, 16 ], "texture": "#bark" }, + "east": { "uv": [ 4, 15, 5, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "Box27", + "from": [ 7, 2, 10 ], + "to": [ 13, 8, 16 ], + "faces": { + "down": { "uv": [ 7, 0, 13, 6 ], "texture": "#leaves" }, + "up": { "uv": [ 7, 10, 13, 16 ], "texture": "#leaves" }, + "north": { "uv": [ 3, 0, 9, 6 ], "texture": "#leaves" }, + "south": { "uv": [ 7, 0, 13, 6 ], "texture": "#leaves" }, + "west": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaves" }, + "east": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 10, 1, 7 ], + "to": [ 16, 7, 13 ], + "faces": { + "down": { "uv": [ 10, 3, 16, 9 ], "texture": "#leaves" }, + "up": { "uv": [ 10, 7, 16, 13 ], "texture": "#leaves" }, + "north": { "uv": [ 0, 1, 6, 7 ], "texture": "#leaves" }, + "south": { "uv": [ 10, 1, 16, 7 ], "texture": "#leaves" }, + "west": { "uv": [ 7, 1, 13, 7 ], "texture": "#leaves" }, + "east": { "uv": [ 3, 1, 9, 7 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 9, 4, 4 ], + "to": [ 13, 8, 8 ], + "faces": { + "down": { "uv": [ 9, 8, 13, 12 ], "texture": "#leaves" }, + "up": { "uv": [ 9, 4, 13, 8 ], "texture": "#leaves" }, + "north": { "uv": [ 3, 0, 7, 4 ], "texture": "#leaves" }, + "south": { "uv": [ 9, 0, 13, 4 ], "texture": "#leaves" }, + "west": { "uv": [ 4, 0, 8, 4 ], "texture": "#leaves" }, + "east": { "uv": [ 8, 0, 12, 4 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 4, 3, 0 ], + "to": [ 8, 7, 4 ], + "faces": { + "down": { "uv": [ 4, 12, 8, 16 ], "texture": "#leaves" }, + "up": { "uv": [ 4, 0, 8, 4 ], "texture": "#leaves" }, + "north": { "uv": [ 8, 1, 12, 5 ], "texture": "#leaves" }, + "south": { "uv": [ 4, 1, 8, 5 ], "texture": "#leaves" }, + "west": { "uv": [ 0, 1, 4, 5 ], "texture": "#leaves" }, + "east": { "uv": [ 12, 1, 16, 5 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 0, 2, 4 ], + "to": [ 6, 8, 10 ], + "faces": { + "down": { "uv": [ 0, 6, 6, 12 ], "texture": "#leaves" }, + "up": { "uv": [ 0, 4, 6, 10 ], "texture": "#leaves" }, + "north": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaves" }, + "south": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaves" }, + "west": { "uv": [ 4, 0, 10, 6 ], "texture": "#leaves" }, + "east": { "uv": [ 6, 0, 12, 6 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 1, 1, 8.5 ], + "to": [ 5, 5, 12.5 ], + "faces": { + "down": { "uv": [ 1, 3.5, 5, 7.5 ], "texture": "#leaves" }, + "up": { "uv": [ 1, 8.5, 5, 12.5 ], "texture": "#leaves" }, + "north": { "uv": [ 11, 3, 15, 7 ], "texture": "#leaves" }, + "south": { "uv": [ 1, 3, 5, 7 ], "texture": "#leaves" }, + "west": { "uv": [ 8.5, 3, 12.5, 7 ], "texture": "#leaves" }, + "east": { "uv": [ 3.5, 3, 7.5, 7 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 5, 2, 9 ], + "to": [ 10, 7, 14 ], + "faces": { + "down": { "uv": [ 5, 2, 10, 7 ], "texture": "#leaves" }, + "up": { "uv": [ 5, 9, 10, 14 ], "texture": "#leaves" }, + "north": { "uv": [ 6, 1, 11, 6 ], "texture": "#leaves" }, + "south": { "uv": [ 5, 1, 10, 6 ], "texture": "#leaves" }, + "west": { "uv": [ 9, 1, 14, 6 ], "texture": "#leaves" }, + "east": { "uv": [ 2, 1, 7, 6 ], "texture": "#leaves" } + } + }, + { + "__comment": "Box27", + "from": [ 6, 1, 3 ], + "to": [ 11, 6, 8 ], + "faces": { + "down": { "uv": [ 6, 8, 11, 13 ], "texture": "#leaves" }, + "up": { "uv": [ 6, 3, 11, 8 ], "texture": "#leaves" }, + "north": { "uv": [ 5, 2, 10, 7 ], "texture": "#leaves" }, + "south": { "uv": [ 6, 2, 11, 7 ], "texture": "#leaves" }, + "west": { "uv": [ 3, 2, 8, 7 ], "texture": "#leaves" }, + "east": { "uv": [ 8, 2, 13, 7 ], "texture": "#leaves" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_jellyfish_mushroom.json b/src/main/resources/assets/betternether/models/block/potted_jellyfish_mushroom.json new file mode 100644 index 0000000..016369e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_jellyfish_mushroom.json @@ -0,0 +1,142 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/jellyfish_mushroom_top", + "texture": "betternether:block/jellyfish_mushroom_top", + "side": "betternether:block/jellyfish_mushroom_side", + "stem": "betternether:block/jellyfish_mushroom_stem", + "bottom": "betternether:block/jellyfish_mushroom_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 5, 6 ], + "to": [ 10, 6, 10 ], + "faces": { + "down": { "uv": [ 6, 0, 10, 4 ], "texture": "#stem", "cullface": "down" }, + "up": { "uv": [ 6, 0, 10, 4 ], "texture": "#stem" }, + "north": { "uv": [ 6, 2, 10, 3 ], "texture": "#stem" }, + "south": { "uv": [ 6, 2, 10, 3 ], "texture": "#stem" }, + "west": { "uv": [ 6, 2, 10, 3 ], "texture": "#stem" }, + "east": { "uv": [ 6, 2, 10, 3 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 7, -8, 7 ], + "to": [ 9, 5, 9 ], + "faces": { + "north": { "uv": [ 7, 3, 9, 16 ], "texture": "#stem" }, + "south": { "uv": [ 7, 3, 9, 16 ], "texture": "#stem" }, + "west": { "uv": [ 7, 3, 9, 16 ], "texture": "#stem" }, + "east": { "uv": [ 7, 3, 9, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box11", + "from": [ 7, -8, 6 ], + "to": [ 9, -4, 10 ], + "faces": { + "up": { "uv": [ 7, 6, 9, 10 ], "texture": "#bottom" }, + "north": { "uv": [ 7, 12, 9, 16 ], "texture": "#bottom" }, + "south": { "uv": [ 7, 12, 9, 16 ], "texture": "#bottom" }, + "west": { "uv": [ 6, 12, 10, 16 ], "texture": "#bottom" }, + "east": { "uv": [ 6, 12, 10, 16 ], "texture": "#bottom" } + } + }, + { + "__comment": "Box11", + "from": [ 6, -8, 7 ], + "to": [ 10, -4, 9 ], + "faces": { + "up": { "uv": [ 6, 7, 10, 9 ], "texture": "#bottom" }, + "north": { "uv": [ 6, 12, 10, 16 ], "texture": "#bottom" }, + "south": { "uv": [ 6, 12, 10, 16 ], "texture": "#bottom" }, + "west": { "uv": [ 7, 12, 9, 16 ], "texture": "#bottom" }, + "east": { "uv": [ 7, 12, 9, 16 ], "texture": "#bottom" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 6, 5 ], + "to": [ 11, 8, 11 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 5, 10, 11, 12 ], "texture": "#texture" }, + "south": { "uv": [ 5, 10, 11, 12 ], "texture": "#texture" }, + "west": { "uv": [ 5, 10, 11, 12 ], "texture": "#texture" }, + "east": { "uv": [ 5, 10, 11, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 2, 3 ], + "to": [ 11, 6, 5 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 5, 11, 3 ], "texture": "#side" }, + "up": { "uv": [ 5, 3, 11, 5 ], "texture": "#texture" }, + "north": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" }, + "south": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" }, + "west": { "uv": [ 3, 0, 5, 4 ], "texture": "#side" }, + "east": { "uv": [ 11, 0, 13, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 2, 11 ], + "to": [ 11, 6, 13 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 3, 11, 5 ], "texture": "#side" }, + "up": { "uv": [ 5, 11, 11, 13 ], "texture": "#texture" }, + "north": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" }, + "south": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" }, + "west": { "uv": [ 11, 0, 13, 4 ], "texture": "#side" }, + "east": { "uv": [ 3, 0, 5, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 11, 2, 5 ], + "to": [ 13, 6, 11 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 3, 11, 5 ], "texture": "#side", "rotation": 90 }, + "up": { "uv": [ 11, 5, 13, 11 ], "texture": "#texture" }, + "north": { "uv": [ 3, 0, 5, 4 ], "texture": "#side" }, + "south": { "uv": [ 11, 0, 13, 4 ], "texture": "#side" }, + "west": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" }, + "east": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box2", + "from": [ 3, 2, 5 ], + "to": [ 5, 6, 11 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 5, 11, 3 ], "texture": "#side", "rotation": 90 }, + "up": { "uv": [ 3, 5, 5, 11 ], "texture": "#texture" }, + "north": { "uv": [ 11, 0, 13, 4 ], "texture": "#side" }, + "south": { "uv": [ 3, 0, 5, 4 ], "texture": "#side" }, + "west": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" }, + "east": { "uv": [ 5, 0, 11, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box8", + "from": [ 5, -1, 5 ], + "to": [ 11, 2, 11 ], + "shade": false, + "faces": { + "north": { "uv": [ 5, 8, 11, 11 ], "texture": "#side" }, + "south": { "uv": [ 10, 8, 16, 11 ], "texture": "#side" }, + "west": { "uv": [ 10, 8, 16, 11 ], "texture": "#side" }, + "east": { "uv": [ 8, 8, 14, 11 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_jungle_plant.json b/src/main/resources/assets/betternether/models/block/potted_jungle_plant.json new file mode 100644 index 0000000..0f70d48 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_jungle_plant.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/potted_reeds", + "textures": { + "particle": "betternether:block/jungle_plant_1", + "texture": "betternether:block/jungle_plant_1" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_magma_flower.json b/src/main/resources/assets/betternether/models/block/potted_magma_flower.json new file mode 100644 index 0000000..fbb38cd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_magma_flower.json @@ -0,0 +1,76 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/magma_flower_side", + "side": "betternether:block/magma_flower_side", + "top": "betternether:block/magma_flower_top", + "leaf": "betternether:block/magma_flower_leaf" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, -7.5, 2 ], + "to": [ 8, -0.5, 8 ], + "faces": { + "down": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf" }, + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf" }, + "north": { "uv": [ 10, 2, 16, 9 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 2, 16, 9 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 2, 16, 9 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 2, 16, 9 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 7, -8, 3 ], + "to": [ 13, -2, 9 ], + "faces": { + "down": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 90 }, + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 90 }, + "north": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 8, -7.5, 8 ], + "to": [ 14, -3.5, 14 ], + "faces": { + "down": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 180 }, + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 180 }, + "north": { "uv": [ 10, 3, 16, 7 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 3, 16, 7 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 3, 16, 7 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 3, 16, 7 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 3, -8, 7 ], + "to": [ 9, -2, 13 ], + "faces": { + "down": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf" }, + "up": { "uv": [ 0, 0, 6, 6 ], "texture": "#leaf", "rotation": 270 }, + "north": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaf" }, + "south": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaf" }, + "west": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaf" }, + "east": { "uv": [ 10, 0, 16, 6 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box1", + "from": [ 4, -7.5, 4 ], + "to": [ 12, 0, 12 ], + "faces": { + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 4, 12, 11.5 ], "texture": "#side" }, + "south": { "uv": [ 4, 4, 12, 11.5 ], "texture": "#side" }, + "west": { "uv": [ 4, 4, 12, 11.5 ], "texture": "#side" }, + "east": { "uv": [ 4, 4, 12, 11.5 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_mc_wart.json b/src/main/resources/assets/betternether/models/block/potted_mc_wart.json new file mode 100644 index 0000000..c9388f0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_mc_wart.json @@ -0,0 +1,46 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "ambientocclusion": false, + "textures": { + "particle": "block/nether_wart_stage2", + "texture": "block/nether_wart_stage2" + }, + "elements": [ + { + "__comment": "PlaneX1", + "from": [ 5, -8, 2 ], + "to": [ 5.001, 4, 14 ], + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX1", + "from": [ 11, -8, 2 ], + "to": [ 11.001, 4, 14 ], + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ3", + "from": [ 2, -8, 5 ], + "to": [ 14, 4, 5.001 ], + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ3", + "from": [ 2, -8, 11 ], + "to": [ 14, 4, 11.001 ], + "faces": { + "north": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "south": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_nether_cactus.json b/src/main/resources/assets/betternether/models/block/potted_nether_cactus.json new file mode 100644 index 0000000..4ddd629 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_nether_cactus.json @@ -0,0 +1,103 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cactus_middle_side", + "side": "betternether:block/cactus_middle_side", + "top_bottom": "betternether:block/cactus_top_bottom", + "top_top": "betternether:block/cactus_top_top", + "top_side": "betternether:block/cactus_top_side" + }, + "elements": [ + { + "__comment": "PlaneZ1", + "from": [ 4, -8, 5 ], + "to": [ 12, 8, 5.001 ], + "faces": { + "north": { "uv": [ 4, 8, 12, 16 ], "texture": "#side" }, + "south": { "uv": [ 4, 8, 12, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 5, -8, 4 ], + "to": [ 5.001, 8, 12 ], + "faces": { + "west": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" }, + "east": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ1", + "from": [ 4, -8, 11 ], + "to": [ 12, 8, 11.001 ], + "faces": { + "north": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" }, + "south": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 11, -8, 4 ], + "to": [ 11.001, 8, 12 ], + "faces": { + "west": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" }, + "east": { "uv": [ 4, 0, 12, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneY7", + "from": [ 3, 3, 3 ], + "to": [ 13, 3.001, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#top_bottom" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#top_bottom" } + } + }, + { + "__comment": "PlaneY7", + "from": [ 3, 11, 3 ], + "to": [ 13, 11.001, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#top_top" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#top_top" } + } + }, + { + "__comment": "PlaneX9", + "from": [ 4, 3, 3 ], + "to": [ 4.001, 12, 13 ], + "faces": { + "west": { "uv": [ 3, 7, 13, 16 ], "texture": "#top_side" }, + "east": { "uv": [ 3, 7, 13, 16 ], "texture": "#top_side" } + } + }, + { + "__comment": "PlaneX9", + "from": [ 12, 3, 3 ], + "to": [ 12.001, 12, 13 ], + "faces": { + "west": { "uv": [ 3, 7, 13, 16 ], "texture": "#top_side" }, + "east": { "uv": [ 3, 7, 13, 16 ], "texture": "#top_side" } + } + }, + { + "__comment": "PlaneZ11", + "from": [ 3, 3, 12 ], + "to": [ 13, 12, 12.001 ], + "faces": { + "north": { "uv": [ 3, 7, 13, 16 ], "texture": "#top_side" }, + "south": { "uv": [ 3, 7, 13, 16 ], "texture": "#top_side" } + } + }, + { + "__comment": "PlaneZ11", + "from": [ 3, 3, 4 ], + "to": [ 13, 12, 4.001 ], + "faces": { + "north": { "uv": [ 3, 7, 13, 16 ], "texture": "#top_side" }, + "south": { "uv": [ 3, 7, 13, 16 ], "texture": "#top_side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_nether_grass_1.json b/src/main/resources/assets/betternether/models/block/potted_nether_grass_1.json new file mode 100644 index 0000000..137dec4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_nether_grass_1.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/grass_fan_pot", + "textures": { + "texture": "betternether:block/ngrass_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/potted_nether_grass_2.json b/src/main/resources/assets/betternether/models/block/potted_nether_grass_2.json new file mode 100644 index 0000000..ded59ed --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_nether_grass_2.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/grass_pot", + "textures": { + "texture": "betternether:block/ngrass_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/potted_nether_grass_3.json b/src/main/resources/assets/betternether/models/block/potted_nether_grass_3.json new file mode 100644 index 0000000..9fa2404 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_nether_grass_3.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/grass_fan_pot", + "textures": { + "texture": "betternether:block/ngrass_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/potted_orange_mushroom_01.json b/src/main/resources/assets/betternether/models/block/potted_orange_mushroom_01.json new file mode 100644 index 0000000..a84f793 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_orange_mushroom_01.json @@ -0,0 +1,197 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/orange_mushroom_side", + "side": "betternether:block/orange_mushroom_side", + "top": "betternether:block/orange_mushroom_top", + "bottom": "betternether:block/orange_mushroom_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, -1, 5 ], + "to": [ 11, 2, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 6, 11, 9 ], "texture": "#side" }, + "south": { "uv": [ 5, 6, 11, 9 ], "texture": "#side" }, + "west": { "uv": [ 5, 6, 11, 9 ], "texture": "#side" }, + "east": { "uv": [ 5, 6, 11, 9 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 6, -8, 6 ], + "to": [ 10, 0, 10 ], + "faces": { + "north": { "uv": [ 6, 8, 10, 16 ], "texture": "#side" }, + "south": { "uv": [ 6, 8, 10, 16 ], "texture": "#side" }, + "west": { "uv": [ 6, 8, 10, 16 ], "texture": "#side" }, + "east": { "uv": [ 6, 8, 10, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 4, 3 ], + "to": [ 12, 7, 13 ], + "faces": { + "down": { "uv": [ 4, 3, 12, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 3, 12, 13 ], "texture": "#top", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 4, 3 ], + "to": [ 4, 8, 13 ], + "faces": { + "down": { "uv": [ 0, 3, 4, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 0, 3, 4, 13 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 12, 0, 16, 4 ], "texture": "#side" }, + "south": { "uv": [ 0, 0, 4, 4 ], "texture": "#side" }, + "west": { "uv": [ 3, 0, 13, 4 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 3, 0, 13, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 4, 3 ], + "to": [ 16, 8, 13 ], + "faces": { + "down": { "uv": [ 12, 3, 16, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 12, 3, 16, 13 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 0, 0, 4, 4 ], "texture": "#side" }, + "south": { "uv": [ 12, 0, 16, 4 ], "texture": "#side" }, + "west": { "uv": [ 3, 0, 13, 4 ], "texture": "#side" }, + "east": { "uv": [ 3, 0, 13, 4 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 2, 3 ], + "to": [ 11, 4, 13 ], + "faces": { + "down": { "uv": [ 5, 3, 11, 13 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "south": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "west": { "uv": [ 3, 4, 13, 6 ], "texture": "#side" }, + "east": { "uv": [ 3, 4, 13, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 2, 5 ], + "to": [ 5, 4, 11 ], + "faces": { + "down": { "uv": [ 3, 5, 5, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 11, 4, 13, 6 ], "texture": "#side" }, + "south": { "uv": [ 3, 4, 5, 6 ], "texture": "#side" }, + "west": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 2, 5 ], + "to": [ 13, 4, 11 ], + "faces": { + "down": { "uv": [ 11, 5, 13, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 3, 4, 5, 6 ], "texture": "#side" }, + "south": { "uv": [ 11, 4, 13, 6 ], "texture": "#side" }, + "east": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 8.5, -8, 9 ], + "to": [ 10.5, -5, 11 ], + "faces": { + "up": { "uv": [ 7, 12, 9, 14 ], "texture": "#side" }, + "north": { "uv": [ 5.5, 13, 7.5, 16 ], "texture": "#side" }, + "south": { "uv": [ 8.5, 13, 10.5, 16 ], "texture": "#side" }, + "west": { "uv": [ 9, 13, 11, 16 ], "texture": "#side" }, + "east": { "uv": [ 5, 13, 7, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 8.5, -8, 5.5 ], + "to": [ 10.5, -7, 7.5 ], + "faces": { + "up": { "uv": [ 9, 13, 11, 15 ], "texture": "#side" }, + "north": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" }, + "south": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" }, + "west": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" }, + "east": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 5.5, -8, 8.5 ], + "to": [ 7.5, -7, 10.5 ], + "faces": { + "down": { "uv": [ 5.5, 5.5, 7.5, 7.5 ], "texture": "#side", "cullface": "down" }, + "up": { "uv": [ 6, 13, 8, 15 ], "texture": "#side" }, + "north": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" }, + "south": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" }, + "west": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" }, + "east": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 4, 0 ], + "to": [ 13, 8, 3 ], + "faces": { + "down": { "uv": [ 3, 13, 13, 16 ], "texture": "#bottom" }, + "up": { "uv": [ 3, 0, 13, 3 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 3, 0, 13, 4 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 3, 0, 13, 4 ], "texture": "#side" }, + "west": { "uv": [ 0, 0, 3, 4 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 13, 0, 16, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 4, 13 ], + "to": [ 13, 8, 16 ], + "faces": { + "down": { "uv": [ 3, 0, 13, 3 ], "texture": "#bottom" }, + "up": { "uv": [ 3, 13, 13, 16 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 3, 0, 13, 4 ], "texture": "#side" }, + "south": { "uv": [ 3, 0, 13, 4 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 13, 0, 16, 4 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 0, 0, 3, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 7, 12 ], + "to": [ 12, 8, 13 ], + "faces": { + "up": { "uv": [ 4, 12, 12, 13 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 4, 0, 12, 1 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 7, 3 ], + "to": [ 12, 8, 4 ], + "faces": { + "up": { "uv": [ 4, 3, 12, 4 ], "texture": "#top", "cullface": "up" }, + "south": { "uv": [ 4, 0, 12, 1 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 5, -8, 5 ], + "to": [ 7, -6, 7 ], + "faces": { + "up": { "uv": [ 5, 13, 7, 15 ], "texture": "#side" }, + "north": { "uv": [ 9, 14, 11, 16 ], "texture": "#side" }, + "south": { "uv": [ 5, 14, 7, 16 ], "texture": "#side" }, + "west": { "uv": [ 5, 14, 7, 16 ], "texture": "#side" }, + "east": { "uv": [ 9, 14, 11, 16 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_orange_mushroom_02.json b/src/main/resources/assets/betternether/models/block/potted_orange_mushroom_02.json new file mode 100644 index 0000000..2fe550b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_orange_mushroom_02.json @@ -0,0 +1,197 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/orange_mushroom_side", + "side": "betternether:block/orange_mushroom_side", + "top": "betternether:block/orange_mushroom_top", + "bottom": "betternether:block/orange_mushroom_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, -2, 6 ], + "to": [ 10, 1, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#bottom" }, + "north": { "uv": [ 6, 6, 10, 9 ], "texture": "#side" }, + "south": { "uv": [ 6, 6, 10, 9 ], "texture": "#side" }, + "west": { "uv": [ 6, 6, 10, 9 ], "texture": "#side" }, + "east": { "uv": [ 6, 6, 10, 9 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 7, -8, 7 ], + "to": [ 9, -2, 9 ], + "faces": { + "north": { "uv": [ 7, 3, 9, 9 ], "texture": "#side" }, + "south": { "uv": [ 7, 3, 9, 9 ], "texture": "#side" }, + "west": { "uv": [ 7, 3, 9, 9 ], "texture": "#side" }, + "east": { "uv": [ 7, 3, 9, 9 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 3, 3 ], + "to": [ 12, 5, 13 ], + "faces": { + "down": { "uv": [ 4, 3, 12, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 3, 12, 13 ], "texture": "#top", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 3, 3 ], + "to": [ 4, 6, 13 ], + "faces": { + "down": { "uv": [ 1, 3, 4, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 1, 3, 4, 13 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 13, 1, 16, 4 ], "texture": "#side" }, + "south": { "uv": [ 13, 1, 16, 4 ], "texture": "#side" }, + "west": { "uv": [ 3, 1, 13, 4 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 3, 1, 13, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 3, 3 ], + "to": [ 15, 6, 13 ], + "faces": { + "down": { "uv": [ 12, 3, 15, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 12, 3, 15, 13 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 0, 1, 3, 4 ], "texture": "#side" }, + "south": { "uv": [ 0, 1, 3, 4 ], "texture": "#side" }, + "west": { "uv": [ 3, 1, 13, 4 ], "texture": "#side" }, + "east": { "uv": [ 3, 1, 13, 4 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 1, 3 ], + "to": [ 11, 3, 13 ], + "faces": { + "down": { "uv": [ 5, 3, 11, 13 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "south": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "west": { "uv": [ 3, 4, 13, 6 ], "texture": "#side" }, + "east": { "uv": [ 3, 4, 13, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 1, 5 ], + "to": [ 5, 3, 11 ], + "faces": { + "down": { "uv": [ 3, 5, 5, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 11, 4, 13, 6 ], "texture": "#side" }, + "south": { "uv": [ 3, 4, 5, 6 ], "texture": "#side" }, + "west": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 1, 5 ], + "to": [ 13, 3, 11 ], + "faces": { + "down": { "uv": [ 11, 5, 13, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 3, 4, 5, 6 ], "texture": "#side" }, + "south": { "uv": [ 11, 4, 13, 6 ], "texture": "#side" }, + "east": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 8, -8, 8 ], + "to": [ 10, -5, 10 ], + "faces": { + "up": { "uv": [ 7, 12, 9, 14 ], "texture": "#side" }, + "north": { "uv": [ 5.5, 13, 7.5, 16 ], "texture": "#side" }, + "south": { "uv": [ 8.5, 13, 10.5, 16 ], "texture": "#side" }, + "west": { "uv": [ 9, 13, 11, 16 ], "texture": "#side" }, + "east": { "uv": [ 5, 13, 7, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 8, -8, 6 ], + "to": [ 10, -7, 8 ], + "faces": { + "up": { "uv": [ 9, 13, 11, 15 ], "texture": "#side" }, + "north": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" }, + "south": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" }, + "west": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" }, + "east": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 6, -8, 8 ], + "to": [ 8, -7, 10 ], + "faces": { + "down": { "uv": [ 5.5, 5.5, 7.5, 7.5 ], "texture": "#side", "cullface": "down" }, + "up": { "uv": [ 6, 13, 8, 15 ], "texture": "#side" }, + "north": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" }, + "south": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" }, + "west": { "uv": [ 8.5, 15, 10.5, 16 ], "texture": "#side" }, + "east": { "uv": [ 5.5, 15, 7.5, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 3, 1 ], + "to": [ 13, 6, 3 ], + "faces": { + "down": { "uv": [ 3, 13, 13, 15 ], "texture": "#bottom" }, + "up": { "uv": [ 3, 1, 13, 3 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 3, 0, 13, 2 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 3, 1, 13, 4 ], "texture": "#side" }, + "west": { "uv": [ 13, 1, 15, 4 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 13, 1, 15, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 3, 13 ], + "to": [ 13, 6, 15 ], + "faces": { + "down": { "uv": [ 3, 1, 13, 3 ], "texture": "#bottom" }, + "up": { "uv": [ 3, 13, 13, 15 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 3, 1, 13, 4 ], "texture": "#side" }, + "south": { "uv": [ 3, 1, 13, 4 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 13, 1, 15, 4 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 13, 1, 15, 4 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 5, 12 ], + "to": [ 12, 6, 13 ], + "faces": { + "up": { "uv": [ 4, 12, 12, 13 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 4, 1, 12, 2 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 5, 3 ], + "to": [ 12, 6, 4 ], + "faces": { + "up": { "uv": [ 4, 3, 12, 4 ], "texture": "#top", "cullface": "up" }, + "south": { "uv": [ 4, 1, 12, 2 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 6, -8, 6 ], + "to": [ 8, -6, 8 ], + "faces": { + "up": { "uv": [ 5, 13, 7, 15 ], "texture": "#side" }, + "north": { "uv": [ 9, 14, 11, 16 ], "texture": "#side" }, + "south": { "uv": [ 5, 14, 7, 16 ], "texture": "#side" }, + "west": { "uv": [ 5, 14, 7, 16 ], "texture": "#side" }, + "east": { "uv": [ 9, 14, 11, 16 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_orange_mushroom_03.json b/src/main/resources/assets/betternether/models/block/potted_orange_mushroom_03.json new file mode 100644 index 0000000..7d1374c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_orange_mushroom_03.json @@ -0,0 +1,84 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/orange_mushroom_side", + "side": "betternether:block/orange_mushroom_side", + "top": "betternether:block/orange_mushroom_top", + "bottom": "betternether:block/orange_mushroom_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, -5, 6 ], + "to": [ 10, -3, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#bottom" }, + "north": { "uv": [ 6, 8, 10, 10 ], "texture": "#side" }, + "south": { "uv": [ 6, 8, 10, 10 ], "texture": "#side" }, + "west": { "uv": [ 6, 8, 10, 10 ], "texture": "#side" }, + "east": { "uv": [ 6, 8, 10, 10 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 7, -9, 7 ], + "to": [ 9, -5, 9 ], + "faces": { + "north": { "uv": [ 7, 12, 9, 16 ], "texture": "#side" }, + "south": { "uv": [ 7, 12, 9, 16 ], "texture": "#side" }, + "west": { "uv": [ 7, 12, 9, 16 ], "texture": "#side" }, + "east": { "uv": [ 7, 12, 9, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, -1, 2 ], + "to": [ 12, 1, 14 ], + "faces": { + "down": { "uv": [ 4, 2, 12, 14 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 2, 12, 14 ], "texture": "#top" }, + "north": { "uv": [ 3, 1, 11, 3 ], "texture": "#side" }, + "south": { "uv": [ 3, 1, 11, 3 ], "texture": "#side" }, + "west": { "uv": [ 1, 1, 13, 3 ], "texture": "#side" }, + "east": { "uv": [ 1, 1, 13, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 5, -3, 5 ], + "to": [ 11, -1, 11 ], + "faces": { + "down": { "uv": [ 3, 5, 5, 11 ], "texture": "#bottom" }, + "north": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "south": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "west": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" }, + "east": { "uv": [ 5, 4, 11, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 12, -1, 4 ], + "to": [ 14, 1, 12 ], + "faces": { + "down": { "uv": [ 12, 4, 14, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 12, 4, 14, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 1, 6, 3 ], "texture": "#side" }, + "south": { "uv": [ 4, 1, 6, 3 ], "texture": "#side" }, + "east": { "uv": [ 4, 1, 12, 3 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, -1, 4 ], + "to": [ 4, 1, 12 ], + "faces": { + "down": { "uv": [ 12, 4, 14, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 12, 4, 14, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 1, 6, 3 ], "texture": "#side" }, + "south": { "uv": [ 4, 1, 6, 3 ], "texture": "#side" }, + "west": { "uv": [ 4, 1, 12, 3 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_red_mold.json b/src/main/resources/assets/betternether/models/block/potted_red_mold.json new file mode 100644 index 0000000..6315384 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_red_mold.json @@ -0,0 +1,119 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/red_mold_top", + "texture": "betternether:block/red_mold_top", + "bottom": "betternether:block/red_mold_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 9, -9, 4.5 ], + "to": [ 11, -5, 6.5 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 12, 7, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 12, 7, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 12, 7, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 12, 7, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 8, -5, 3.5 ], + "to": [ 12, 2, 7.5 ], + "faces": { + "down": { "uv": [ 0, 10, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 8, 12, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 4, 2, 8, 9 ], "texture": "#texture" }, + "south": { "uv": [ 4, 2, 8, 9 ], "texture": "#texture" }, + "west": { "uv": [ 4, 2, 8, 9 ], "texture": "#texture" }, + "east": { "uv": [ 4, 2, 8, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 2, 4.5 ], + "to": [ 11, 3, 6.5 ], + "faces": { + "up": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture" }, + "north": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "south": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "west": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "east": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, -9, 9.5 ], + "to": [ 8, -7, 11.5 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" }, + "west": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" }, + "east": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, -7, 8.5 ], + "to": [ 9, -1, 12.5 ], + "faces": { + "down": { "uv": [ 0, 10, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 8, 12, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" }, + "south": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" }, + "west": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" }, + "east": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, -1, 9.5 ], + "to": [ 8, 0, 11.5 ], + "faces": { + "up": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture" }, + "north": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "south": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "west": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "east": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, -8, 4.5 ], + "to": [ 7, -3, 7.5 ], + "faces": { + "down": { "uv": [ 1, 11, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 9, 13, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "south": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "west": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "east": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, -9, 5.5 ], + "to": [ 6, -8, 6.5 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY4", + "from": [ 0, -8.5, 0 ], + "to": [ 16, -7.499, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_reeds.json b/src/main/resources/assets/betternether/models/block/potted_reeds.json new file mode 100644 index 0000000..6c6dd63 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_reeds.json @@ -0,0 +1,46 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/reeds_potted", + "texture": "betternether:block/reeds_potted" + }, + "elements": [ + { + "__comment": "PlaneX1", + "from": [ 5, -8, 0 ], + "to": [ 5.001, 8, 16 ], + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX1", + "from": [ 11, -8, 0 ], + "to": [ 11.001, 8, 16 ], + "faces": { + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ3", + "from": [ 0, -8, 5 ], + "to": [ 16, 8, 5.001 ], + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ3", + "from": [ 0, -8, 11 ], + "to": [ 16, 8, 11.001 ], + "faces": { + "north": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "south": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_smoker.json b/src/main/resources/assets/betternether/models/block/potted_smoker.json new file mode 100644 index 0000000..61286a8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_smoker.json @@ -0,0 +1,182 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/smoker_stem", + "stem": "betternether:block/smoker_stem", + "top": "betternether:block/smoker_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 2, 6 ], + "to": [ 10, 6, 10 ], + "faces": { + "down": { "uv": [ 2, 10, 6, 14 ], "texture": "#top" }, + "up": { "uv": [ 10, 2, 14, 6 ], "texture": "#top" }, + "north": { "uv": [ 4, 2, 8, 6 ], "texture": "#top" }, + "south": { "uv": [ 4, 2, 8, 6 ], "texture": "#top" }, + "west": { "uv": [ 1, 1, 5, 5 ], "texture": "#top" }, + "east": { "uv": [ 2, 2, 6, 6 ], "texture": "#top" } + } + }, + { + "__comment": "Box1", + "from": [ 7, -8, 7 ], + "to": [ 9, 2, 9 ], + "faces": { + "north": { "uv": [ 2, 6, 4, 16 ], "texture": "#stem" }, + "south": { "uv": [ 2, 6, 4, 16 ], "texture": "#stem" }, + "west": { "uv": [ 2, 3, 4, 13 ], "texture": "#stem" }, + "east": { "uv": [ 2, 5, 4, 15 ], "texture": "#stem" } + } + }, + { + "__comment": "Box4", + "from": [ 6.5, -8, 7.5 ], + "to": [ 9.5, -6, 8.5 ], + "faces": { + "up": { "uv": [ 9, 8, 12, 9 ], "texture": "#stem" }, + "north": { "uv": [ 8, 14, 11, 16 ], "texture": "#stem" }, + "south": { "uv": [ 9, 14, 12, 16 ], "texture": "#stem" }, + "west": { "uv": [ 8, 14, 9, 16 ], "texture": "#stem" }, + "east": { "uv": [ 10, 14, 11, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box4", + "from": [ 7.5, -8, 6.5 ], + "to": [ 8.5, -5, 9.5 ], + "faces": { + "up": { "uv": [ 8, 8, 9, 11 ], "texture": "#stem" }, + "north": { "uv": [ 8, 13, 9, 16 ], "texture": "#stem" }, + "south": { "uv": [ 8, 13, 9, 16 ], "texture": "#stem" }, + "west": { "uv": [ 10, 13, 13, 16 ], "texture": "#stem" }, + "east": { "uv": [ 11, 13, 14, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box6", + "from": [ 6, -2.5, 6 ], + "to": [ 8, -0.5, 8 ], + "faces": { + "down": { "uv": [ 6, 4, 8, 6 ], "texture": "#stem" }, + "up": { "uv": [ 6, 4, 8, 6 ], "texture": "#stem" }, + "north": { "uv": [ 6, 4, 8, 6 ], "texture": "#stem" }, + "south": { "uv": [ 6, 4, 8, 6 ], "texture": "#stem" }, + "west": { "uv": [ 6, 4, 8, 6 ], "texture": "#stem" }, + "east": { "uv": [ 6, 4, 8, 6 ], "texture": "#stem" } + } + }, + { + "__comment": "Box6", + "from": [ 8.5, 0, 8.5 ], + "to": [ 9.5, 1, 9.5 ], + "faces": { + "down": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "up": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "north": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "south": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "west": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "east": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" } + } + }, + { + "__comment": "Box6", + "from": [ 8.5, -4, 6.5 ], + "to": [ 9.5, -3, 7.5 ], + "faces": { + "down": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "up": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "north": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "south": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "west": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "east": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 10, -8, 10 ], + "to": [ 11.5, -3, 11.5 ], + "faces": { + "north": { "uv": [ 2, 6, 4, 12 ], "texture": "#stem" }, + "south": { "uv": [ 2, 6, 4, 12 ], "texture": "#stem" }, + "west": { "uv": [ 1, 5, 3, 11 ], "texture": "#stem" }, + "east": { "uv": [ 1, 5, 3, 11 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 9.25, -3, 9.25 ], + "to": [ 12.25, 0, 12.25 ], + "faces": { + "down": { "uv": [ 2, 10, 6, 14 ], "texture": "#top" }, + "up": { "uv": [ 10, 2, 14, 6 ], "texture": "#top" }, + "north": { "uv": [ 4, 2, 8, 6 ], "texture": "#top" }, + "south": { "uv": [ 4, 2, 8, 6 ], "texture": "#top" }, + "west": { "uv": [ 1, 1, 5, 5 ], "texture": "#top" }, + "east": { "uv": [ 2, 2, 6, 6 ], "texture": "#top" } + } + }, + { + "__comment": "Box4", + "from": [ 10.25, -8, 9.75 ], + "to": [ 11.25, -6, 11.75 ], + "faces": { + "up": { "uv": [ 8, 8, 9, 11 ], "texture": "#stem" }, + "north": { "uv": [ 8, 13, 9, 16 ], "texture": "#stem" }, + "south": { "uv": [ 8, 13, 9, 16 ], "texture": "#stem" }, + "west": { "uv": [ 10, 13, 13, 16 ], "texture": "#stem" }, + "east": { "uv": [ 11, 13, 14, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box4", + "from": [ 9.75, -8, 10 ], + "to": [ 11.75, -6.5, 11 ], + "faces": { + "up": { "uv": [ 9, 8, 12, 9 ], "texture": "#stem" }, + "north": { "uv": [ 8, 14, 11, 16 ], "texture": "#stem" }, + "south": { "uv": [ 9, 14, 12, 16 ], "texture": "#stem" }, + "west": { "uv": [ 8, 14, 9, 16 ], "texture": "#stem" }, + "east": { "uv": [ 10, 14, 11, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 3, -8, 8 ], + "to": [ 6, -5, 11 ], + "faces": { + "up": { "uv": [ 10, 2, 14, 6 ], "texture": "#top", "rotation": 180 }, + "north": { "uv": [ 4, 2, 8, 6 ], "texture": "#top" }, + "south": { "uv": [ 4, 2, 8, 6 ], "texture": "#top" }, + "west": { "uv": [ 2, 2, 6, 6 ], "texture": "#top" }, + "east": { "uv": [ 1, 1, 5, 5 ], "texture": "#top" } + } + }, + { + "__comment": "Box1", + "from": [ 8, -8, 3 ], + "to": [ 11, -5, 6 ], + "faces": { + "up": { "uv": [ 10, 2, 14, 6 ], "texture": "#top", "rotation": 90 }, + "north": { "uv": [ 1, 1, 5, 5 ], "texture": "#top" }, + "south": { "uv": [ 2, 2, 6, 6 ], "texture": "#top" }, + "west": { "uv": [ 4, 2, 8, 6 ], "texture": "#top" }, + "east": { "uv": [ 4, 2, 8, 6 ], "texture": "#top" } + } + }, + { + "__comment": "Box6", + "from": [ 9.5, -5.5, 11 ], + "to": [ 10.5, -4.5, 12 ], + "faces": { + "down": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "up": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "north": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "south": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "west": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" }, + "east": { "uv": [ 6, 4, 7, 5 ], "texture": "#stem" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_soul_grass.json b/src/main/resources/assets/betternether/models/block/potted_soul_grass.json new file mode 100644 index 0000000..b2a5930 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_soul_grass.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/potted_reeds", + "textures": { + "particle": "betternether:block/soul_grass_01", + "texture": "betternether:block/soul_grass_01" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_swamp_grass.json b/src/main/resources/assets/betternether/models/block/potted_swamp_grass.json new file mode 100644 index 0000000..be81d83 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_swamp_grass.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/potted_reeds", + "textures": { + "particle": "betternether:block/swamp_grass_2", + "texture": "betternether:block/swamp_grass_2" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_wart.json b/src/main/resources/assets/betternether/models/block/potted_wart.json new file mode 100644 index 0000000..0e71c71 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_wart.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "block/nether_wart_block", + "texture": "block/nether_wart_block" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, -8, 2 ], + "to": [ 14, 4, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "north": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "south": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "west": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "east": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/potted_willow.json b/src/main/resources/assets/betternether/models/block/potted_willow.json new file mode 100644 index 0000000..19a2bbb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/potted_willow.json @@ -0,0 +1,514 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/willow_bark_bottom", + "texture": "betternether:block/willow_bark_bottom", + "leaves": "betternether:block/willow_leaves_full", + "leaves_top": "betternether:block/willow_leaves_top", + "branch": "betternether:block/willow_potted_branch" + }, + "elements": [ + { + "__comment": "stem", + "from": [ 7, -8, 7 ], + "to": [ 9, 5, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture" }, + "north": { "uv": [ 7, 11, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 11, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 11, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 11, 9, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "stem1", + "from": [ 7.5, 0, 9 ], + "to": [ 8.5, 1, 13 ], + "faces": { + "down": { "uv": [ 7.5, 3, 8.5, 7 ], "texture": "#texture" }, + "up": { "uv": [ 7.5, 9, 8.5, 13 ], "texture": "#texture" }, + "south": { "uv": [ 7.5, 15, 8.5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 9, 15, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 15, 7, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "stem2", + "from": [ 9, 2, 7.5 ], + "to": [ 13, 3, 8.5 ], + "faces": { + "down": { "uv": [ 9, 7.5, 13, 8.5 ], "texture": "#texture" }, + "up": { "uv": [ 9, 7.5, 13, 8.5 ], "texture": "#texture" }, + "north": { "uv": [ 3, 13, 7, 14 ], "texture": "#texture" }, + "south": { "uv": [ 9, 13, 13, 14 ], "texture": "#texture" }, + "east": { "uv": [ 7.5, 13, 8.5, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "stem3", + "from": [ 7.5, 1, 3 ], + "to": [ 8.5, 2, 7 ], + "faces": { + "down": { "uv": [ 7.5, 9, 8.5, 13 ], "texture": "#texture" }, + "up": { "uv": [ 7.5, 3, 8.5, 7 ], "texture": "#texture" }, + "north": { "uv": [ 7.5, 14, 8.5, 15 ], "texture": "#texture" }, + "west": { "uv": [ 3, 14, 7, 15 ], "texture": "#texture" }, + "east": { "uv": [ 9, 14, 13, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "stem4", + "from": [ 2, 1, 7.5 ], + "to": [ 7, 2, 8.5 ], + "faces": { + "down": { "uv": [ 2, 7.5, 7, 8.5 ], "texture": "#texture" }, + "up": { "uv": [ 2, 7.5, 7, 8.5 ], "texture": "#texture" }, + "north": { "uv": [ 9, 14, 14, 15 ], "texture": "#texture" }, + "south": { "uv": [ 2, 14, 7, 15 ], "texture": "#texture" }, + "west": { "uv": [ 7.5, 14, 8.5, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "stem5", + "from": [ 7.5, 1, 12 ], + "to": [ 8.5, 5, 13 ], + "faces": { + "north": { "uv": [ 7.5, 11, 8.5, 15 ], "texture": "#texture" }, + "south": { "uv": [ 7.5, 11, 8.5, 15 ], "texture": "#texture" }, + "west": { "uv": [ 12, 11, 13, 15 ], "texture": "#texture" }, + "east": { "uv": [ 3, 11, 4, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "stem6", + "from": [ 12, 3, 7.5 ], + "to": [ 13, 5, 8.5 ], + "faces": { + "north": { "uv": [ 3, 11, 4, 13 ], "texture": "#texture" }, + "south": { "uv": [ 12, 11, 13, 13 ], "texture": "#texture" }, + "west": { "uv": [ 7.5, 11, 8.5, 13 ], "texture": "#texture" }, + "east": { "uv": [ 7.5, 11, 8.5, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "stem7", + "from": [ 2, 2, 7.5 ], + "to": [ 3, 5, 8.5 ], + "faces": { + "north": { "uv": [ 13, 11, 14, 14 ], "texture": "#texture" }, + "south": { "uv": [ 2, 11, 3, 14 ], "texture": "#texture" }, + "west": { "uv": [ 7.5, 11, 8.5, 14 ], "texture": "#texture" }, + "east": { "uv": [ 7.5, 11, 8.5, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "stem8", + "from": [ 7.5, 2, 3 ], + "to": [ 8.5, 5, 4 ], + "faces": { + "north": { "uv": [ 7.5, 11, 8.5, 14 ], "texture": "#texture" }, + "south": { "uv": [ 7.5, 11, 8.5, 14 ], "texture": "#texture" }, + "west": { "uv": [ 3, 11, 4, 14 ], "texture": "#texture" }, + "east": { "uv": [ 12, 11, 13, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "stem9", + "from": [ 7.5, 3, 1 ], + "to": [ 8.5, 4, 3 ], + "faces": { + "down": { "uv": [ 7.5, 13, 8.5, 15 ], "texture": "#texture" }, + "up": { "uv": [ 7.5, 1, 8.5, 3 ], "texture": "#texture" }, + "north": { "uv": [ 7.5, 12, 8.5, 13 ], "texture": "#texture" }, + "west": { "uv": [ 1, 12, 3, 13 ], "texture": "#texture" }, + "east": { "uv": [ 13, 12, 15, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "stem10", + "from": [ 4, 2, 3 ], + "to": [ 7.5, 3, 4 ], + "faces": { + "down": { "uv": [ 4, 12, 7.5, 13 ], "texture": "#texture" }, + "up": { "uv": [ 4, 3, 7.5, 4 ], "texture": "#texture" }, + "north": { "uv": [ 8.5, 13, 12, 14 ], "texture": "#texture" }, + "south": { "uv": [ 4, 13, 7.5, 14 ], "texture": "#texture" }, + "west": { "uv": [ 3, 13, 4, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "stem11", + "from": [ 4, 3, 3 ], + "to": [ 5, 6, 4 ], + "faces": { + "north": { "uv": [ 11, 10, 12, 13 ], "texture": "#texture" }, + "south": { "uv": [ 4, 10, 5, 13 ], "texture": "#texture" }, + "west": { "uv": [ 3, 10, 4, 13 ], "texture": "#texture" }, + "east": { "uv": [ 12, 10, 13, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "stem12", + "from": [ 7.5, 4, 1 ], + "to": [ 8.5, 6, 2 ], + "faces": { + "north": { "uv": [ 7.5, 10, 8.5, 12 ], "texture": "#texture" }, + "south": { "uv": [ 7.5, 10, 8.5, 12 ], "texture": "#texture" }, + "west": { "uv": [ 1, 10, 2, 12 ], "texture": "#texture" }, + "east": { "uv": [ 14, 10, 15, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "stem13", + "from": [ 12, 3, 8.5 ], + "to": [ 13, 4, 10.5 ], + "faces": { + "down": { "uv": [ 12, 5.5, 13, 7.5 ], "texture": "#texture" }, + "south": { "uv": [ 12, 12, 13, 13 ], "texture": "#texture" }, + "west": { "uv": [ 8.5, 12, 10.5, 13 ], "texture": "#texture" }, + "east": { "uv": [ 5.5, 12, 7.5, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "stem14", + "from": [ 10, 3, 4 ], + "to": [ 11, 4, 7.5 ], + "faces": { + "down": { "uv": [ 10, 8.5, 11, 12 ], "texture": "#texture" }, + "north": { "uv": [ 5, 12, 6, 13 ], "texture": "#texture" }, + "south": { "uv": [ 10, 12, 11, 13 ], "texture": "#texture" }, + "west": { "uv": [ 4, 12, 7.5, 13 ], "texture": "#texture" }, + "east": { "uv": [ 8.5, 12, 12, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "stem15", + "from": [ 4, 1, 5.5 ], + "to": [ 5, 2, 7.5 ], + "faces": { + "down": { "uv": [ 4, 8.5, 5, 10.5 ], "texture": "#texture" }, + "up": { "uv": [ 4, 5.5, 5, 7.5 ], "texture": "#texture" }, + "north": { "uv": [ 11, 14, 12, 15 ], "texture": "#texture" }, + "west": { "uv": [ 5.5, 14, 7.5, 15 ], "texture": "#texture" }, + "east": { "uv": [ 8.5, 14, 10.5, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "stem16", + "from": [ 4, 2, 5.5 ], + "to": [ 5, 5, 6.5 ], + "faces": { + "up": { "uv": [ 4, 5.5, 5, 6.5 ], "texture": "#texture" }, + "north": { "uv": [ 11, 11, 12, 14 ], "texture": "#texture" }, + "south": { "uv": [ 4, 11, 5, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5.5, 11, 6.5, 14 ], "texture": "#texture" }, + "east": { "uv": [ 9.5, 11, 10.5, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "stem17", + "from": [ 7.5, 3, 14 ], + "to": [ 8.5, 6, 15 ], + "faces": { + "north": { "uv": [ 7.5, 10, 8.5, 13 ], "texture": "#texture" }, + "south": { "uv": [ 7.5, 10, 8.5, 13 ], "texture": "#texture" }, + "west": { "uv": [ 14, 10, 15, 13 ], "texture": "#texture" }, + "east": { "uv": [ 1, 10, 2, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "stem18", + "from": [ 7.5, 2, 13 ], + "to": [ 8.5, 3, 15 ], + "faces": { + "down": { "uv": [ 7.5, 1, 8.5, 3 ], "texture": "#texture" }, + "up": { "uv": [ 7.5, 13, 8.5, 15 ], "texture": "#texture" }, + "south": { "uv": [ 7.5, 13, 8.5, 14 ], "texture": "#texture" }, + "west": { "uv": [ 13, 13, 15, 14 ], "texture": "#texture" }, + "east": { "uv": [ 1, 13, 3, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "stem19", + "from": [ 5, 0, 12 ], + "to": [ 7.5, 1, 13 ], + "faces": { + "down": { "uv": [ 5, 3, 7.5, 4 ], "texture": "#texture" }, + "up": { "uv": [ 5, 12, 7.5, 13 ], "texture": "#texture" }, + "north": { "uv": [ 8.5, 15, 11, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 15, 7.5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 12, 15, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "stem20", + "from": [ 5, 1, 12 ], + "to": [ 6, 4, 13 ], + "faces": { + "north": { "uv": [ 10, 12, 11, 15 ], "texture": "#texture" }, + "south": { "uv": [ 5, 12, 6, 15 ], "texture": "#texture" }, + "west": { "uv": [ 12, 12, 13, 15 ], "texture": "#texture" }, + "east": { "uv": [ 3, 12, 4, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "leaves", + "from": [ 0, 4, 6 ], + "to": [ 7.5, 7, 14 ], + "faces": { + "down": { "uv": [ 0, 2, 7.5, 10 ], "texture": "#leaves_top" }, + "up": { "uv": [ 0, 6, 7.5, 14 ], "texture": "#leaves_top" }, + "north": { "uv": [ 8.5, 1, 16, 4 ], "texture": "#leaves" }, + "south": { "uv": [ 3.5, 6, 11, 9 ], "texture": "#leaves" }, + "west": { "uv": [ 8, 6, 16, 9 ], "texture": "#leaves" }, + "east": { "uv": [ 0, 1, 8, 4 ], "texture": "#leaves" } + } + }, + { + "__comment": "leaves1", + "from": [ 3, 4.5, 2 ], + "to": [ 7, 7.5, 6 ], + "faces": { + "down": { "uv": [ 3, 10, 7, 14 ], "texture": "#leaves_top" }, + "up": { "uv": [ 3, 2, 7, 6 ], "texture": "#leaves_top" }, + "north": { "uv": [ 9, 8.5, 13, 11.5 ], "texture": "#leaves" }, + "south": { "uv": [ 3, 8.5, 7, 11.5 ], "texture": "#leaves" }, + "west": { "uv": [ 2, 8.5, 6, 11.5 ], "texture": "#leaves" }, + "east": { "uv": [ 10, 8.5, 14, 11.5 ], "texture": "#leaves" } + } + }, + { + "__comment": "leaves2", + "from": [ 6, 5, 0 ], + "to": [ 11, 8, 5 ], + "faces": { + "down": { "uv": [ 6, 11, 11, 16 ], "texture": "#leaves_top" }, + "up": { "uv": [ 6, 0, 11, 5 ], "texture": "#leaves_top" }, + "north": { "uv": [ 5, 8, 10, 11 ], "texture": "#leaves" }, + "south": { "uv": [ 6, 8, 11, 11 ], "texture": "#leaves" }, + "west": { "uv": [ 0, 8, 5, 11 ], "texture": "#leaves" }, + "east": { "uv": [ 11, 8, 16, 11 ], "texture": "#leaves" } + } + }, + { + "__comment": "leaves3", + "from": [ 8.5, 3.5, 3 ], + "to": [ 16, 7.5, 11 ], + "faces": { + "down": { "uv": [ 8.5, 5, 16, 13 ], "texture": "#leaves_top" }, + "up": { "uv": [ 8.5, 3, 16, 11 ], "texture": "#leaves_top" }, + "north": { "uv": [ 0, 8.5, 7.5, 12.5 ], "texture": "#leaves" }, + "south": { "uv": [ 8.5, 8.5, 16, 12.5 ], "texture": "#leaves" }, + "west": { "uv": [ 3, 8.5, 11, 12.5 ], "texture": "#leaves" }, + "east": { "uv": [ 5, 8.5, 13, 12.5 ], "texture": "#leaves" } + } + }, + { + "__comment": "leaves4", + "from": [ 7, 5, 11 ], + "to": [ 12, 8, 16 ], + "faces": { + "down": { "uv": [ 7, 0, 12, 5 ], "texture": "#leaves_top" }, + "up": { "uv": [ 7, 11, 12, 16 ], "texture": "#leaves_top" }, + "north": { "uv": [ 4, 0, 9, 3 ], "texture": "#leaves" }, + "south": { "uv": [ 7, 0, 12, 3 ], "texture": "#leaves" }, + "west": { "uv": [ 7, 1, 12, 4 ], "texture": "#leaves" }, + "east": { "uv": [ 2, 2, 7, 5 ], "texture": "#leaves" } + } + }, + { + "__comment": "leaves5", + "from": [ 5, 6, 4.5 ], + "to": [ 11, 9, 10.5 ], + "faces": { + "down": { "uv": [ 5, 5.5, 11, 11.5 ], "texture": "#leaves_top" }, + "up": { "uv": [ 5, 4.5, 11, 10.5 ], "texture": "#leaves_top" }, + "north": { "uv": [ 5, 7, 11, 10 ], "texture": "#leaves" }, + "south": { "uv": [ 5, 7, 11, 10 ], "texture": "#leaves" }, + "west": { "uv": [ 4.5, 7, 10.5, 10 ], "texture": "#leaves" }, + "east": { "uv": [ 5.5, 7, 11.5, 10 ], "texture": "#leaves" } + } + }, + { + "__comment": "leaves6", + "from": [ 1.5, 3, 11 ], + "to": [ 5.5, 6, 15 ], + "faces": { + "down": { "uv": [ 1.5, 1, 5.5, 5 ], "texture": "#leaves_top" }, + "up": { "uv": [ 1.5, 11, 5.5, 15 ], "texture": "#leaves_top" }, + "north": { "uv": [ 10.5, 2, 14.5, 5 ], "texture": "#leaves" }, + "south": { "uv": [ 1, 2, 5, 5 ], "texture": "#leaves" }, + "west": { "uv": [ 11, 2, 15, 5 ], "texture": "#leaves" }, + "east": { "uv": [ 1, 2, 5, 5 ], "texture": "#leaves" } + } + }, + { + "__comment": "leaves7", + "from": [ 10, 4, 9 ], + "to": [ 14, 7, 13 ], + "faces": { + "down": { "uv": [ 10, 3, 14, 7 ], "texture": "#leaves_top" }, + "up": { "uv": [ 10, 9, 14, 13 ], "texture": "#leaves_top" }, + "north": { "uv": [ 2, 9, 6, 12 ], "texture": "#leaves" }, + "south": { "uv": [ 10, 9, 14, 12 ], "texture": "#leaves" }, + "west": { "uv": [ 9, 9, 13, 12 ], "texture": "#leaves" }, + "east": { "uv": [ 3, 9, 7, 12 ], "texture": "#leaves" } + } + }, + { + "__comment": "roots", + "from": [ 7, -8, 9 ], + "to": [ 8, -5, 10 ], + "faces": { + "up": { "uv": [ 7, 9, 8, 10 ], "texture": "#texture" }, + "south": { "uv": [ 7, 5, 8, 8 ], "texture": "#texture" }, + "west": { "uv": [ 9, 5, 10, 8 ], "texture": "#texture" }, + "east": { "uv": [ 6, 5, 7, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "roots1", + "from": [ 7, -8, 6 ], + "to": [ 8, -4, 7 ], + "faces": { + "up": { "uv": [ 7, 6, 8, 7 ], "texture": "#texture" }, + "north": { "uv": [ 8, 4, 9, 8 ], "texture": "#texture" }, + "west": { "uv": [ 6, 4, 7, 8 ], "texture": "#texture" }, + "east": { "uv": [ 9, 4, 10, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "roots2", + "from": [ 6, -8, 7 ], + "to": [ 7, -6, 8 ], + "faces": { + "up": { "uv": [ 6, 7, 7, 8 ], "texture": "#texture" }, + "north": { "uv": [ 9, 6, 10, 8 ], "texture": "#texture" }, + "south": { "uv": [ 6, 6, 7, 8 ], "texture": "#texture" }, + "west": { "uv": [ 7, 6, 8, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "roots3", + "from": [ 9, -8, 8 ], + "to": [ 10, -6, 9 ], + "faces": { + "up": { "uv": [ 9, 8, 10, 9 ], "texture": "#texture" }, + "north": { "uv": [ 6, 6, 7, 8 ], "texture": "#texture" }, + "south": { "uv": [ 9, 6, 10, 8 ], "texture": "#texture" }, + "east": { "uv": [ 7, 6, 8, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "branches", + "from": [ 6, -4, 1 ], + "to": [ 6.001, 5, 5 ], + "rotation": { "origin": [ 6, -4, 1 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" }, + "east": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" } + } + }, + { + "__comment": "branches1", + "from": [ 9, -4, 1 ], + "to": [ 9.001, 5, 5 ], + "rotation": { "origin": [ 9, -4, 1 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" }, + "east": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" } + } + }, + { + "__comment": "branches2", + "from": [ 1, -5.5, 8 ], + "to": [ 1.001, 3.5, 12 ], + "rotation": { "origin": [ 1, -5.5, 8 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" }, + "east": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" } + } + }, + { + "__comment": "branches3", + "from": [ 4, -5.5, 8 ], + "to": [ 4.001, 3.5, 12 ], + "rotation": { "origin": [ 4, -5.5, 8 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" }, + "east": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" } + } + }, + { + "__comment": "branches4", + "from": [ 10.5, -3, 10.5 ], + "to": [ 10.501, 6, 14.5 ], + "rotation": { "origin": [ 10.5, -3, 10.5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" }, + "east": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" } + } + }, + { + "__comment": "branches5", + "from": [ 13.5, -3, 10.5 ], + "to": [ 13.501, 6, 14.5 ], + "rotation": { "origin": [ 13.5, -3, 10.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" }, + "east": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" } + } + }, + { + "__comment": "branches6", + "from": [ 12.5, -2, 5 ], + "to": [ 12.501, 7, 9 ], + "rotation": { "origin": [ 12.5, -2, 5 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" }, + "east": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" } + } + }, + { + "__comment": "branches7", + "from": [ 15.5, -2, 5 ], + "to": [ 15.501, 7, 9 ], + "rotation": { "origin": [ 15.5, -2, 5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" }, + "east": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" } + } + }, + { + "__comment": "branches8", + "from": [ 5, -5, 9 ], + "to": [ 5.001, 4, 13 ], + "rotation": { "origin": [ 5, -5, 9 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" }, + "east": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" } + } + }, + { + "__comment": "branches9", + "from": [ 8, -5, 9 ], + "to": [ 8.001, 4, 13 ], + "rotation": { "origin": [ 8, -5, 9 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" }, + "east": { "uv": [ 0, 0, 8, 16 ], "texture": "#branch" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass.json b/src/main/resources/assets/betternether/models/block/quartz_glass.json new file mode 100644 index 0000000..bb461df --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_bars_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_bars_side.json new file mode 100644 index 0000000..e67acdc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_bars_side.json @@ -0,0 +1,57 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/cincinnasite_tiles_small", + "bars": "betternether:block/quartz_glass", + "edge": "betternether:block/cincinnasite_tiles_small" + }, + "elements": [ + { + "__comment": "Box10", + "from": [ 7.5, 0, 0 ], + "to": [ 8.5, 1, 8 ], + "faces": { + "down": { "uv": [ 7.5, 8, 8.5, 16 ], "texture": "#edge", "cullface": "down" }, + "up": { "uv": [ 7.5, 0, 8.5, 8 ], "texture": "#edge" }, + "north": { "uv": [ 7.5, 15, 8.5, 16 ], "texture": "#edge", "cullface": "north" }, + "south": { "uv": [ 7.5, 15, 8.5, 16 ], "texture": "#edge" }, + "west": { "uv": [ 0, 15, 8, 16 ], "texture": "#edge" }, + "east": { "uv": [ 8, 15, 16, 16 ], "texture": "#edge" } + } + }, + { + "__comment": "Box10", + "from": [ 7.5, 15, 0 ], + "to": [ 8.5, 16, 8 ], + "faces": { + "down": { "uv": [ 7.5, 8, 8.5, 16 ], "texture": "#edge" }, + "up": { "uv": [ 7.5, 0, 8.5, 8 ], "texture": "#edge", "cullface": "up" }, + "north": { "uv": [ 7.5, 0, 8.5, 1 ], "texture": "#edge", "cullface": "north" }, + "south": { "uv": [ 7.5, 0, 8.5, 1 ], "texture": "#edge" }, + "west": { "uv": [ 0, 0, 8, 1 ], "texture": "#edge" }, + "east": { "uv": [ 8, 0, 16, 1 ], "texture": "#edge" } + } + }, + { + "__comment": "Box10", + "from": [ 7.5, 1, 0 ], + "to": [ 8.5, 15, 1 ], + "faces": { + "north": { "uv": [ 7.5, 1, 8.5, 15 ], "texture": "#edge", "cullface": "north" }, + "south": { "uv": [ 7.5, 1, 8.5, 15 ], "texture": "#edge" }, + "west": { "uv": [ 0, 1, 1, 15 ], "texture": "#edge" }, + "east": { "uv": [ 15, 1, 16, 15 ], "texture": "#edge" } + } + }, + { + "__comment": "PlaneX9", + "from": [ 8, 1, 1 ], + "to": [ 8.001, 15, 8 ], + "faces": { + "west": { "uv": [ 1, 1, 8, 15 ], "texture": "#bars" }, + "east": { "uv": [ 8, 1, 15, 15 ], "texture": "#bars" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_bars_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_bars_side_alt.json new file mode 100644 index 0000000..db6fb02 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_bars_side_alt.json @@ -0,0 +1,57 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/cincinnasite_tiles_small", + "bars": "betternether:block/quartz_glass", + "edge": "betternether:block/cincinnasite_tiles_small" + }, + "elements": [ + { + "__comment": "Box6", + "from": [ 7.5, 0, 8 ], + "to": [ 8.5, 1, 16 ], + "faces": { + "down": { "uv": [ 7.5, 0, 8.5, 8 ], "texture": "#edge", "cullface": "down" }, + "up": { "uv": [ 7.5, 8, 8.5, 16 ], "texture": "#edge" }, + "north": { "uv": [ 7.5, 15, 8.5, 16 ], "texture": "#edge" }, + "south": { "uv": [ 7.5, 15, 8.5, 16 ], "texture": "#edge", "cullface": "south" }, + "west": { "uv": [ 8, 15, 16, 16 ], "texture": "#edge" }, + "east": { "uv": [ 0, 15, 8, 16 ], "texture": "#edge" } + } + }, + { + "__comment": "Box6", + "from": [ 7.5, 15, 8 ], + "to": [ 8.5, 16, 16 ], + "faces": { + "down": { "uv": [ 7.5, 0, 8.5, 8 ], "texture": "#edge" }, + "up": { "uv": [ 7.5, 8, 8.5, 16 ], "texture": "#edge", "cullface": "up" }, + "north": { "uv": [ 7.5, 0, 8.5, 1 ], "texture": "#edge" }, + "south": { "uv": [ 7.5, 0, 8.5, 1 ], "texture": "#edge", "cullface": "south" }, + "west": { "uv": [ 8, 0, 16, 1 ], "texture": "#edge" }, + "east": { "uv": [ 0, 0, 8, 1 ], "texture": "#edge" } + } + }, + { + "__comment": "Box6", + "from": [ 7.5, 1, 15 ], + "to": [ 8.5, 15, 16 ], + "faces": { + "north": { "uv": [ 7.5, 1, 8.5, 15 ], "texture": "#edge" }, + "south": { "uv": [ 7.5, 1, 8.5, 15 ], "texture": "#edge", "cullface": "south" }, + "west": { "uv": [ 15, 1, 16, 15 ], "texture": "#edge" }, + "east": { "uv": [ 0, 1, 1, 15 ], "texture": "#edge" } + } + }, + { + "__comment": "PlaneX5", + "from": [ 8, 1, 8 ], + "to": [ 8.001, 15, 15 ], + "faces": { + "west": { "uv": [ 8, 1, 15, 15 ], "texture": "#bars" }, + "east": { "uv": [ 1, 1, 8, 15 ], "texture": "#bars" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_black.json b/src/main/resources/assets/betternether/models/block/quartz_glass_black.json new file mode 100644 index 0000000..1f310dd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_black.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_black" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_blue.json b/src/main/resources/assets/betternether/models/block/quartz_glass_blue.json new file mode 100644 index 0000000..21be796 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_brown.json b/src/main/resources/assets/betternether/models/block/quartz_glass_brown.json new file mode 100644 index 0000000..8f887d1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_brown.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_cyan.json b/src/main/resources/assets/betternether/models/block/quartz_glass_cyan.json new file mode 100644 index 0000000..bf2c639 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_cyan.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed.json new file mode 100644 index 0000000..63c50c4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_glass_framed" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_black.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_black.json new file mode 100644 index 0000000..58752d6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_black.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_black" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_blue.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_blue.json new file mode 100644 index 0000000..f9ddbbe --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_brown.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_brown.json new file mode 100644 index 0000000..166b5ec --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_brown.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_cyan.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_cyan.json new file mode 100644 index 0000000..8696a69 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_cyan.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_gray.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_gray.json new file mode 100644 index 0000000..6f51617 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_green.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_green.json new file mode 100644 index 0000000..2dd71cd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_green.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_green" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_light_blue.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_light_blue.json new file mode 100644 index 0000000..ad74914 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_light_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_light_gray.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_light_gray.json new file mode 100644 index 0000000..63cbdbd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_light_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_lime.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_lime.json new file mode 100644 index 0000000..6eafa96 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_lime.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_magenta.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_magenta.json new file mode 100644 index 0000000..9171f6c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_magenta.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_orange.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_orange.json new file mode 100644 index 0000000..699d9bf --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_orange.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_noside.json new file mode 100644 index 0000000..59ec430 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_black" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_noside_alt.json new file mode 100644 index 0000000..00c7fa1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_black" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_post.json new file mode 100644 index 0000000..dc887ff --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_black" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_side.json new file mode 100644 index 0000000..160e19c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_black" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_side_alt.json new file mode 100644 index 0000000..80b8de1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_black_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_black" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_noside.json new file mode 100644 index 0000000..a83b9bd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_noside_alt.json new file mode 100644 index 0000000..1944b43 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_post.json new file mode 100644 index 0000000..3f8c501 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_side.json new file mode 100644 index 0000000..e09550a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_side_alt.json new file mode 100644 index 0000000..981559e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_blue_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_noside.json new file mode 100644 index 0000000..dfd483d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_noside_alt.json new file mode 100644 index 0000000..28f8134 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_post.json new file mode 100644 index 0000000..56b1916 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_side.json new file mode 100644 index 0000000..1cbf22e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_side_alt.json new file mode 100644 index 0000000..2e4b65f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_brown_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_noside.json new file mode 100644 index 0000000..fbd5c4f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_noside_alt.json new file mode 100644 index 0000000..a446d0f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_post.json new file mode 100644 index 0000000..30b824d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_side.json new file mode 100644 index 0000000..6839424 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_side_alt.json new file mode 100644 index 0000000..c5ce307 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_cyan_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_noside.json new file mode 100644 index 0000000..3d0951a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_noside_alt.json new file mode 100644 index 0000000..88a49d5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_post.json new file mode 100644 index 0000000..3b8b2e0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_side.json new file mode 100644 index 0000000..1602338 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_side_alt.json new file mode 100644 index 0000000..ea5a226 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_gray_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_noside.json new file mode 100644 index 0000000..1fbe583 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_green" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_noside_alt.json new file mode 100644 index 0000000..51ef7b8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_green" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_post.json new file mode 100644 index 0000000..d4113cd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_green" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_side.json new file mode 100644 index 0000000..b36378f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_green" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_side_alt.json new file mode 100644 index 0000000..c395ae4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_green_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_green" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_noside.json new file mode 100644 index 0000000..2a252d2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_noside_alt.json new file mode 100644 index 0000000..39f6434 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_post.json new file mode 100644 index 0000000..fab584b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_side.json new file mode 100644 index 0000000..2118dbd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_side_alt.json new file mode 100644 index 0000000..2e08e7b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_blue_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_noside.json new file mode 100644 index 0000000..7be7f40 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_noside_alt.json new file mode 100644 index 0000000..8c28891 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_post.json new file mode 100644 index 0000000..738696c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_side.json new file mode 100644 index 0000000..b701289 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_side_alt.json new file mode 100644 index 0000000..1088014 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_light_gray_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_noside.json new file mode 100644 index 0000000..e4531ef --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_noside_alt.json new file mode 100644 index 0000000..e0b5ec5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_post.json new file mode 100644 index 0000000..24bd081 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_side.json new file mode 100644 index 0000000..97710b5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_side_alt.json new file mode 100644 index 0000000..9032857 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_lime_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_noside.json new file mode 100644 index 0000000..aaeba70 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_noside_alt.json new file mode 100644 index 0000000..90b3f28 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_post.json new file mode 100644 index 0000000..f60407a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_side.json new file mode 100644 index 0000000..66c2c19 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_side_alt.json new file mode 100644 index 0000000..ff7bf4d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_magenta_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_noside.json new file mode 100644 index 0000000..afb7647 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_noside_alt.json new file mode 100644 index 0000000..c3b890d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_post.json new file mode 100644 index 0000000..919d161 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_side.json new file mode 100644 index 0000000..0845026 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_side_alt.json new file mode 100644 index 0000000..452e537 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_orange_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_noside.json new file mode 100644 index 0000000..c2fb1e2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_noside_alt.json new file mode 100644 index 0000000..7608a6a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_post.json new file mode 100644 index 0000000..0a8efb5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_side.json new file mode 100644 index 0000000..45021f3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_side_alt.json new file mode 100644 index 0000000..d4fa153 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_pink_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_noside.json new file mode 100644 index 0000000..6c156b0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_noside_alt.json new file mode 100644 index 0000000..523abc2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_post.json new file mode 100644 index 0000000..1962c0b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_side.json new file mode 100644 index 0000000..3db058f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_side_alt.json new file mode 100644 index 0000000..613472a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_purple_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_noside.json new file mode 100644 index 0000000..dfe49ee --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_red" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_noside_alt.json new file mode 100644 index 0000000..61c2f76 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_red" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_post.json new file mode 100644 index 0000000..5b5a50e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_red" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_side.json new file mode 100644 index 0000000..6dd06b9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_red" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_side_alt.json new file mode 100644 index 0000000..be7fd04 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_red_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_red" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_noside.json new file mode 100644 index 0000000..ab86e25 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_white" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_noside_alt.json new file mode 100644 index 0000000..f314da2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_white" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_post.json new file mode 100644 index 0000000..107b2e0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_white" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_side.json new file mode 100644 index 0000000..3073a71 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_white" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_side_alt.json new file mode 100644 index 0000000..69d963f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_white_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_white" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_noside.json new file mode 100644 index 0000000..326d641 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_noside_alt.json new file mode 100644 index 0000000..52b97ef --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_noside_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_post.json new file mode 100644 index 0000000..2b3a232 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_post.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_post", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_side.json new file mode 100644 index 0000000..9223359 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_side.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_side_alt.json new file mode 100644 index 0000000..1475e75 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pane_yellow_side_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass_framed_side_alt", + "textures": { + "bars": "betternether:block/quartz_stained_glass_framed_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pink.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pink.json new file mode 100644 index 0000000..a3354aa --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_post.json new file mode 100644 index 0000000..3fd6f83 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_post.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/cincinnasite_tiles_small", + "texture": "betternether:block/cincinnasite_tiles_small" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 16, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_purple.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_purple.json new file mode 100644 index 0000000..2daf0a8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_red.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_red.json new file mode 100644 index 0000000..2c81dbe --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_red.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_red" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_side.json new file mode 100644 index 0000000..39d699c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_side.json @@ -0,0 +1,57 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/quartz_glass_framed", + "bars": "betternether:block/quartz_glass_framed", + "edge": "betternether:block/cincinnasite_tiles_small" + }, + "elements": [ + { + "__comment": "Box10", + "from": [ 7, 0, 0 ], + "to": [ 9, 1, 8 ], + "faces": { + "down": { "uv": [ 7, 8, 9, 16 ], "texture": "#edge", "cullface": "down" }, + "up": { "uv": [ 7, 0, 9, 8 ], "texture": "#edge" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#edge", "cullface": "north" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#edge" }, + "west": { "uv": [ 0, 15, 8, 16 ], "texture": "#edge" }, + "east": { "uv": [ 8, 15, 16, 16 ], "texture": "#edge" } + } + }, + { + "__comment": "Box10", + "from": [ 7, 15, 0 ], + "to": [ 9, 16, 8 ], + "faces": { + "down": { "uv": [ 7, 8, 9, 16 ], "texture": "#edge" }, + "up": { "uv": [ 7, 0, 9, 8 ], "texture": "#edge", "cullface": "up" }, + "north": { "uv": [ 7, 0, 9, 1 ], "texture": "#edge", "cullface": "north" }, + "south": { "uv": [ 7, 0, 9, 1 ], "texture": "#edge" }, + "west": { "uv": [ 0, 0, 8, 1 ], "texture": "#edge" }, + "east": { "uv": [ 8, 0, 16, 1 ], "texture": "#edge" } + } + }, + { + "__comment": "Box10", + "from": [ 7, 1, 0 ], + "to": [ 9, 15, 1 ], + "faces": { + "north": { "uv": [ 7, 1, 9, 15 ], "texture": "#edge", "cullface": "north" }, + "south": { "uv": [ 7, 1, 9, 15 ], "texture": "#edge" }, + "west": { "uv": [ 0, 1, 1, 15 ], "texture": "#edge" }, + "east": { "uv": [ 15, 1, 16, 15 ], "texture": "#edge" } + } + }, + { + "__comment": "PlaneX9", + "from": [ 8, 1, 1 ], + "to": [ 8.001, 15, 8 ], + "faces": { + "west": { "uv": [ 1, 1, 8, 15 ], "texture": "#bars" }, + "east": { "uv": [ 8, 1, 15, 15 ], "texture": "#bars" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_side_alt.json new file mode 100644 index 0000000..41fa2fd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_side_alt.json @@ -0,0 +1,57 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/quartz_glass_framed", + "bars": "betternether:block/quartz_glass_framed", + "edge": "betternether:block/cincinnasite_tiles_small" + }, + "elements": [ + { + "__comment": "Box6", + "from": [ 7, 0, 8 ], + "to": [ 9, 1, 16 ], + "faces": { + "down": { "uv": [ 7, 0, 9, 8 ], "texture": "#edge", "cullface": "down" }, + "up": { "uv": [ 7, 8, 9, 16 ], "texture": "#edge" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#edge" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#edge", "cullface": "south" }, + "west": { "uv": [ 8, 15, 16, 16 ], "texture": "#edge" }, + "east": { "uv": [ 0, 15, 8, 16 ], "texture": "#edge" } + } + }, + { + "__comment": "Box6", + "from": [ 7, 15, 8 ], + "to": [ 9, 16, 16 ], + "faces": { + "down": { "uv": [ 7, 0, 9, 8 ], "texture": "#edge" }, + "up": { "uv": [ 7, 8, 9, 16 ], "texture": "#edge", "cullface": "up" }, + "north": { "uv": [ 7, 0, 9, 1 ], "texture": "#edge" }, + "south": { "uv": [ 7, 0, 9, 1 ], "texture": "#edge", "cullface": "south" }, + "west": { "uv": [ 8, 0, 16, 1 ], "texture": "#edge" }, + "east": { "uv": [ 0, 0, 8, 1 ], "texture": "#edge" } + } + }, + { + "__comment": "Box6", + "from": [ 7, 1, 15 ], + "to": [ 9, 15, 16 ], + "faces": { + "north": { "uv": [ 7, 1, 9, 15 ], "texture": "#edge" }, + "south": { "uv": [ 7, 1, 9, 15 ], "texture": "#edge", "cullface": "south" }, + "west": { "uv": [ 15, 1, 16, 15 ], "texture": "#edge" }, + "east": { "uv": [ 0, 1, 1, 15 ], "texture": "#edge" } + } + }, + { + "__comment": "PlaneX5", + "from": [ 8, 1, 8 ], + "to": [ 8.001, 15, 15 ], + "faces": { + "west": { "uv": [ 8, 1, 15, 15 ], "texture": "#bars" }, + "east": { "uv": [ 1, 1, 8, 15 ], "texture": "#bars" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_white.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_white.json new file mode 100644 index 0000000..b310105 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_white.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_white" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_framed_yellow.json b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_yellow.json new file mode 100644 index 0000000..ac3de0d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_framed_yellow.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_framed_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_gray.json b/src/main/resources/assets/betternether/models/block/quartz_glass_gray.json new file mode 100644 index 0000000..61f1be2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_green.json b/src/main/resources/assets/betternether/models/block/quartz_glass_green.json new file mode 100644 index 0000000..eabbc64 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_green.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_green" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_light_blue.json b/src/main/resources/assets/betternether/models/block/quartz_glass_light_blue.json new file mode 100644 index 0000000..d647e7c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_light_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_light_gray.json b/src/main/resources/assets/betternether/models/block/quartz_glass_light_gray.json new file mode 100644 index 0000000..a599c0e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_light_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_lime.json b/src/main/resources/assets/betternether/models/block/quartz_glass_lime.json new file mode 100644 index 0000000..e5e1047 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_lime.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_magenta.json b/src/main/resources/assets/betternether/models/block/quartz_glass_magenta.json new file mode 100644 index 0000000..aa3698a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_magenta.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_orange.json b/src/main/resources/assets/betternether/models/block/quartz_glass_orange.json new file mode 100644 index 0000000..659fd1d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_orange.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_noside.json new file mode 100644 index 0000000..2672719 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_black" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_noside_alt.json new file mode 100644 index 0000000..61a8594 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_black" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_post.json new file mode 100644 index 0000000..683a532 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_black", + "pane": "betternether:block/quartz_stained_glass_black" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_side.json new file mode 100644 index 0000000..6871d4a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_black", + "pane": "betternether:block/quartz_stained_glass_black" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_side_alt.json new file mode 100644 index 0000000..cfc36ff --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_black_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_black", + "pane": "betternether:block/quartz_stained_glass_black" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_noside.json new file mode 100644 index 0000000..5c26ec8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_noside_alt.json new file mode 100644 index 0000000..1aab4fc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_post.json new file mode 100644 index 0000000..0c0e290 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_blue", + "pane": "betternether:block/quartz_stained_glass_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_side.json new file mode 100644 index 0000000..257910e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_blue", + "pane": "betternether:block/quartz_stained_glass_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_side_alt.json new file mode 100644 index 0000000..053e0cb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_blue_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_blue", + "pane": "betternether:block/quartz_stained_glass_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_noside.json new file mode 100644 index 0000000..da7ac0e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_noside_alt.json new file mode 100644 index 0000000..11f3831 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_post.json new file mode 100644 index 0000000..8aeae0b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_brown", + "pane": "betternether:block/quartz_stained_glass_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_side.json new file mode 100644 index 0000000..409d338 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_brown", + "pane": "betternether:block/quartz_stained_glass_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_side_alt.json new file mode 100644 index 0000000..ed68db8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_brown_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_brown", + "pane": "betternether:block/quartz_stained_glass_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_noside.json new file mode 100644 index 0000000..df5a2b7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_noside_alt.json new file mode 100644 index 0000000..ad8b61d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_post.json new file mode 100644 index 0000000..3ac3119 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_cyan", + "pane": "betternether:block/quartz_stained_glass_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_side.json new file mode 100644 index 0000000..35bca4f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_cyan", + "pane": "betternether:block/quartz_stained_glass_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_side_alt.json new file mode 100644 index 0000000..57348b2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_cyan_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_cyan", + "pane": "betternether:block/quartz_stained_glass_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_noside.json new file mode 100644 index 0000000..b53baaa --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_noside_alt.json new file mode 100644 index 0000000..2ca5ad2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_post.json new file mode 100644 index 0000000..2e44fe2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_gray", + "pane": "betternether:block/quartz_stained_glass_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_side.json new file mode 100644 index 0000000..ef2729f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_gray", + "pane": "betternether:block/quartz_stained_glass_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_side_alt.json new file mode 100644 index 0000000..4b9803b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_gray_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_gray", + "pane": "betternether:block/quartz_stained_glass_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_noside.json new file mode 100644 index 0000000..b6b8d71 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_green" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_noside_alt.json new file mode 100644 index 0000000..85a0815 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_green" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_post.json new file mode 100644 index 0000000..46ecfd5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_green", + "pane": "betternether:block/quartz_stained_glass_green" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_side.json new file mode 100644 index 0000000..2669523 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_green", + "pane": "betternether:block/quartz_stained_glass_green" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_side_alt.json new file mode 100644 index 0000000..f6d67a8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_green_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_green", + "pane": "betternether:block/quartz_stained_glass_green" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_noside.json new file mode 100644 index 0000000..255eea2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_noside_alt.json new file mode 100644 index 0000000..6ae42d9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_post.json new file mode 100644 index 0000000..55cb1a6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_light_blue", + "pane": "betternether:block/quartz_stained_glass_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_side.json new file mode 100644 index 0000000..d48d33e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_light_blue", + "pane": "betternether:block/quartz_stained_glass_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_side_alt.json new file mode 100644 index 0000000..344a92b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_blue_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_light_blue", + "pane": "betternether:block/quartz_stained_glass_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_noside.json new file mode 100644 index 0000000..ff3ba08 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_noside_alt.json new file mode 100644 index 0000000..596100a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_post.json new file mode 100644 index 0000000..30c3edf --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_light_gray", + "pane": "betternether:block/quartz_stained_glass_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_side.json new file mode 100644 index 0000000..c04245f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_light_gray", + "pane": "betternether:block/quartz_stained_glass_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_side_alt.json new file mode 100644 index 0000000..bd44259 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_light_gray_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_light_gray", + "pane": "betternether:block/quartz_stained_glass_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_noside.json new file mode 100644 index 0000000..2f9a345 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_noside_alt.json new file mode 100644 index 0000000..eee5043 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_post.json new file mode 100644 index 0000000..3908853 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_lime", + "pane": "betternether:block/quartz_stained_glass_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_side.json new file mode 100644 index 0000000..2e5382f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_lime", + "pane": "betternether:block/quartz_stained_glass_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_side_alt.json new file mode 100644 index 0000000..c6ed8ee --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_lime_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_lime", + "pane": "betternether:block/quartz_stained_glass_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_noside.json new file mode 100644 index 0000000..5376acd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_noside_alt.json new file mode 100644 index 0000000..8f3d6a0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_post.json new file mode 100644 index 0000000..570487c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_magenta", + "pane": "betternether:block/quartz_stained_glass_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_side.json new file mode 100644 index 0000000..c136f53 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_magenta", + "pane": "betternether:block/quartz_stained_glass_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_side_alt.json new file mode 100644 index 0000000..b1dc4e7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_magenta_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_magenta", + "pane": "betternether:block/quartz_stained_glass_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_noside.json new file mode 100644 index 0000000..ffc971f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_noside_alt.json new file mode 100644 index 0000000..213dfe7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_noside.json new file mode 100644 index 0000000..509a6d4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_noside_alt.json new file mode 100644 index 0000000..ad830f1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_post.json new file mode 100644 index 0000000..b7a18d2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_orange", + "pane": "betternether:block/quartz_stained_glass_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_side.json new file mode 100644 index 0000000..a3ad41d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_orange", + "pane": "betternether:block/quartz_stained_glass_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_side_alt.json new file mode 100644 index 0000000..6f4ed01 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_orange_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_orange", + "pane": "betternether:block/quartz_stained_glass_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_noside.json new file mode 100644 index 0000000..9385d00 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_noside_alt.json new file mode 100644 index 0000000..41b9423 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_post.json new file mode 100644 index 0000000..47c52d1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_pink", + "pane": "betternether:block/quartz_stained_glass_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_side.json new file mode 100644 index 0000000..d474ad3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_pink", + "pane": "betternether:block/quartz_stained_glass_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_side_alt.json new file mode 100644 index 0000000..db1cb2d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_pink_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_pink", + "pane": "betternether:block/quartz_stained_glass_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_post.json new file mode 100644 index 0000000..176ed0c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_glass", + "pane": "betternether:block/quartz_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_noside.json new file mode 100644 index 0000000..d3e9abb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_noside_alt.json new file mode 100644 index 0000000..01ef896 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_post.json new file mode 100644 index 0000000..fad2d2a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_purple", + "pane": "betternether:block/quartz_stained_glass_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_side.json new file mode 100644 index 0000000..3fafb05 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_purple", + "pane": "betternether:block/quartz_stained_glass_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_side_alt.json new file mode 100644 index 0000000..e922ba2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_purple_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_purple", + "pane": "betternether:block/quartz_stained_glass_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_noside.json new file mode 100644 index 0000000..9b37f23 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_red" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_noside_alt.json new file mode 100644 index 0000000..8f2600f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_red" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_post.json new file mode 100644 index 0000000..952d964 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_red", + "pane": "betternether:block/quartz_stained_glass_red" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_side.json new file mode 100644 index 0000000..156d98c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_red", + "pane": "betternether:block/quartz_stained_glass_red" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_side_alt.json new file mode 100644 index 0000000..651b194 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_red_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_red", + "pane": "betternether:block/quartz_stained_glass_red" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_side.json new file mode 100644 index 0000000..0572106 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_glass", + "pane": "betternether:block/quartz_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_side_alt.json new file mode 100644 index 0000000..e4925e9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_glass", + "pane": "betternether:block/quartz_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_noside.json new file mode 100644 index 0000000..02c05ae --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_white" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_noside_alt.json new file mode 100644 index 0000000..e513f63 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_white" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_post.json new file mode 100644 index 0000000..08001c7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_white", + "pane": "betternether:block/quartz_stained_glass_white" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_side.json new file mode 100644 index 0000000..c2e7d59 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_white", + "pane": "betternether:block/quartz_stained_glass_white" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_side_alt.json new file mode 100644 index 0000000..cb1ccc1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_white_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_white", + "pane": "betternether:block/quartz_stained_glass_white" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_noside.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_noside.json new file mode 100644 index 0000000..2cfd34c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_noside.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside", + "textures": { + "pane": "betternether:block/quartz_stained_glass_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_noside_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_noside_alt.json new file mode 100644 index 0000000..7c02e1a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_noside_alt.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_glass_pane_noside_alt", + "textures": { + "pane": "betternether:block/quartz_stained_glass_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_post.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_post.json new file mode 100644 index 0000000..433b1c1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_post.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_post", + "textures": { + "edge": "betternether:block/quartz_stained_glass_yellow", + "pane": "betternether:block/quartz_stained_glass_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_side.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_side.json new file mode 100644 index 0000000..2de1b22 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_side.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side", + "textures": { + "edge": "betternether:block/quartz_stained_glass_yellow", + "pane": "betternether:block/quartz_stained_glass_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_side_alt.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_side_alt.json new file mode 100644 index 0000000..1da8460 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pane_yellow_side_alt.json @@ -0,0 +1,7 @@ +{ + "parent": "block/template_glass_pane_side_alt", + "textures": { + "edge": "betternether:block/quartz_stained_glass_yellow", + "pane": "betternether:block/quartz_stained_glass_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_pink.json b/src/main/resources/assets/betternether/models/block/quartz_glass_pink.json new file mode 100644 index 0000000..4a88df6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_purple.json b/src/main/resources/assets/betternether/models/block/quartz_glass_purple.json new file mode 100644 index 0000000..292bbc7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_red.json b/src/main/resources/assets/betternether/models/block/quartz_glass_red.json new file mode 100644 index 0000000..cb4dbd7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_red.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_red" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_white.json b/src/main/resources/assets/betternether/models/block/quartz_glass_white.json new file mode 100644 index 0000000..1c999b1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_white.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_white" + } +} diff --git a/src/main/resources/assets/betternether/models/block/quartz_glass_yellow.json b/src/main/resources/assets/betternether/models/block/quartz_glass_yellow.json new file mode 100644 index 0000000..cb859a4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/quartz_glass_yellow.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/quartz_stained_glass_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/red_mold_01.json b/src/main/resources/assets/betternether/models/block/red_mold_01.json new file mode 100644 index 0000000..4605694 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/red_mold_01.json @@ -0,0 +1,181 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/red_mold_top", + "texture": "betternether:block/red_mold_top", + "bottom": "betternether:block/red_mold_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 1, 2, 1 ], + "to": [ 5, 10, 5 ], + "faces": { + "down": { "uv": [ 0, 10, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 8, 12, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" }, + "south": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" }, + "west": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" }, + "east": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 10, 2 ], + "to": [ 4, 11, 4 ], + "faces": { + "up": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture" }, + "north": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "south": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "west": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "east": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 0, 5 ], + "to": [ 12, 4, 7 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 12, 7, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 12, 7, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 12, 7, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 12, 7, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 4, 4 ], + "to": [ 13, 11, 8 ], + "faces": { + "down": { "uv": [ 0, 10, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 8, 12, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 4, 2, 8, 9 ], "texture": "#texture" }, + "south": { "uv": [ 4, 2, 8, 9 ], "texture": "#texture" }, + "west": { "uv": [ 4, 2, 8, 9 ], "texture": "#texture" }, + "east": { "uv": [ 4, 2, 8, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 11, 5 ], + "to": [ 12, 12, 7 ], + "faces": { + "up": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture" }, + "north": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "south": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "west": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "east": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 0, 11 ], + "to": [ 7, 2, 13 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" }, + "west": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" }, + "east": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 2, 10 ], + "to": [ 8, 8, 14 ], + "faces": { + "down": { "uv": [ 0, 10, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 8, 12, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" }, + "south": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" }, + "west": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" }, + "east": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 8, 11 ], + "to": [ 7, 9, 13 ], + "faces": { + "up": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture" }, + "north": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "south": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "west": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "east": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 0, 10 ], + "to": [ 11, 1, 11 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 1, 9 ], + "to": [ 12, 6, 12 ], + "faces": { + "down": { "uv": [ 1, 11, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 9, 13, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "south": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "west": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "east": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 1, 6 ], + "to": [ 6, 6, 9 ], + "faces": { + "down": { "uv": [ 1, 11, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 9, 13, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "south": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "west": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "east": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 0, 7 ], + "to": [ 5, 1, 8 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 2 ], + "to": [ 4, 2, 4 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY4", + "from": [ 0, 0.5, 0 ], + "to": [ 16, 0.501, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/red_mold_02.json b/src/main/resources/assets/betternether/models/block/red_mold_02.json new file mode 100644 index 0000000..84305a2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/red_mold_02.json @@ -0,0 +1,194 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/red_mold_top", + "texture": "betternether:block/red_mold_top", + "bottom": "betternether:block/red_mold_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 2, 5 ], + "to": [ 9, 10, 9 ], + "faces": { + "down": { "uv": [ 0, 10, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 8, 12, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" }, + "south": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" }, + "west": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" }, + "east": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 10, 6 ], + "to": [ 8, 11, 8 ], + "faces": { + "up": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture" }, + "north": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "south": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "west": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "east": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 11 ], + "to": [ 4, 2, 13 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" }, + "west": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" }, + "east": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 2, 10 ], + "to": [ 5, 8, 14 ], + "faces": { + "down": { "uv": [ 0, 10, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 8, 12, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" }, + "south": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" }, + "west": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" }, + "east": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 8, 11 ], + "to": [ 4, 9, 13 ], + "faces": { + "up": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture" }, + "north": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "south": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "west": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "east": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 0, 13 ], + "to": [ 11, 1, 14 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 1, 12 ], + "to": [ 12, 6, 15 ], + "faces": { + "down": { "uv": [ 1, 11, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 9, 13, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "south": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "west": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "east": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 1, 3 ], + "to": [ 4, 6, 6 ], + "faces": { + "down": { "uv": [ 1, 11, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 9, 13, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "south": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "west": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "east": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 4 ], + "to": [ 3, 1, 5 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 8, 2, 8 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY4", + "from": [ 0, 0.3, 0 ], + "to": [ 16, 0.301, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 12, 1, 4 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 1, 2 ], + "to": [ 13, 6, 5 ], + "faces": { + "down": { "uv": [ 1, 11, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 9, 13, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "south": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "west": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "east": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 0, 8 ], + "to": [ 13, 1, 9 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 13, 6, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 1, 7 ], + "to": [ 14, 6, 10 ], + "faces": { + "down": { "uv": [ 1, 11, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 9, 13, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "south": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "west": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" }, + "east": { "uv": [ 12, 2, 15, 7 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/red_mold_03.json b/src/main/resources/assets/betternether/models/block/red_mold_03.json new file mode 100644 index 0000000..22e7724 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/red_mold_03.json @@ -0,0 +1,131 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/red_mold_top", + "texture": "betternether:block/red_mold_top", + "bottom": "betternether:block/red_mold_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 9, 2, 3 ], + "to": [ 13, 10, 7 ], + "faces": { + "down": { "uv": [ 0, 10, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 8, 12, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" }, + "south": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" }, + "west": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" }, + "east": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 10, 4 ], + "to": [ 12, 11, 6 ], + "faces": { + "up": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture" }, + "north": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "south": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "west": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "east": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 0, 8 ], + "to": [ 6, 2, 10 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" }, + "west": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" }, + "east": { "uv": [ 5, 13, 7, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 2, 7 ], + "to": [ 7, 8, 11 ], + "faces": { + "down": { "uv": [ 0, 10, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 8, 12, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" }, + "south": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" }, + "west": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" }, + "east": { "uv": [ 8, 2, 12, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 8, 8 ], + "to": [ 6, 9, 10 ], + "faces": { + "up": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture" }, + "north": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "south": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "west": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "east": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 0, 4 ], + "to": [ 12, 2, 6 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY4", + "from": [ 0, 0.4, 0 ], + "to": [ 16, 0.401, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 1, 9 ], + "to": [ 13, 6, 13 ], + "faces": { + "down": { "uv": [ 0, 10, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 8, 12, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 8, 2, 12, 7 ], "texture": "#texture" }, + "south": { "uv": [ 8, 2, 12, 7 ], "texture": "#texture" }, + "west": { "uv": [ 8, 2, 12, 7 ], "texture": "#texture" }, + "east": { "uv": [ 8, 2, 12, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 6, 10 ], + "to": [ 12, 7, 12 ], + "faces": { + "up": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture" }, + "north": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "south": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "west": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "east": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 0, 10 ], + "to": [ 12, 1, 12 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 13, 7, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 7, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 13, 7, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 13, 7, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/red_mold_item.json b/src/main/resources/assets/betternether/models/block/red_mold_item.json new file mode 100644 index 0000000..5b43a7b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/red_mold_item.json @@ -0,0 +1,58 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "ambientocclusion": false, + "textures": { + "particle": "betternether:block/red_mold_top", + "texture": "betternether:block/red_mold_top", + "bottom": "betternether:block/red_mold_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 3, 6 ], + "to": [ 10, 11, 10 ], + "faces": { + "down": { "uv": [ 0, 10, 4, 14 ], "texture": "#texture" }, + "up": { "uv": [ 8, 12, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" }, + "south": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" }, + "west": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" }, + "east": { "uv": [ 0, 2, 4, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 11, 7 ], + "to": [ 9, 12, 9 ], + "faces": { + "up": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture" }, + "north": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "south": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "west": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" }, + "east": { "uv": [ 1, 1, 3, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 1, 7 ], + "to": [ 9, 3, 9 ], + "faces": { + "down": { "uv": [ 1, 0, 3, 2 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 14, 7, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY8", + "from": [ 5.5, 2, 5.5 ], + "to": [ 10.5, 2.001, 10.5 ], + "faces": { + "down": { "uv": [ 2, 9, 7, 14 ], "texture": "#bottom" }, + "up": { "uv": [ 2, 9, 7, 14 ], "texture": "#bottom" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/red_mushroom_bottom.json b/src/main/resources/assets/betternether/models/block/red_mushroom_bottom.json new file mode 100644 index 0000000..ff54aa3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/red_mushroom_bottom.json @@ -0,0 +1,43 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/red_mushroom_stem", + "texture": "betternether:block/red_mushroom_stem", + "mycelium": "betternether:block/red_mushroom_mycelium" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 7, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "up": { "uv": [ 7, 11, 11, 15 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 1, 0, 5, 9 ], "texture": "#texture" }, + "south": { "uv": [ 1, 0, 5, 9 ], "texture": "#texture" }, + "west": { "uv": [ 1, 0, 5, 9 ], "texture": "#texture" }, + "east": { "uv": [ 1, 0, 5, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 0, 5 ], + "to": [ 11, 7, 11 ], + "faces": { + "up": { "uv": [ 6, 10, 12, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 9, 6, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 9, 6, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 9, 6, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 9, 6, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY3", + "from": [ 0, 0.5, 0 ], + "to": [ 16, 0.501, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#mycelium" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/red_mushroom_middle.json b/src/main/resources/assets/betternether/models/block/red_mushroom_middle.json new file mode 100644 index 0000000..74a5ccc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/red_mushroom_middle.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/red_mushroom_stem", + "texture": "betternether:block/red_mushroom_stem" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 7, 11, 11, 15 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 12, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 12, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 12, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 12, 0, 16, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/red_mushroom_top.json b/src/main/resources/assets/betternether/models/block/red_mushroom_top.json new file mode 100644 index 0000000..cf84b9c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/red_mushroom_top.json @@ -0,0 +1,135 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/red_mushroom_stem", + "texture": "betternether:block/red_mushroom_stem", + "skin": "betternether:block/red_head", + "inside": "block/mushroom_block_inside" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 9, 10 ], + "faces": { + "down": { "uv": [ 7, 11, 11, 15 ], "texture": "#texture" }, + "up": { "uv": [ 7, 11, 11, 15 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 12, 7, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 12, 7, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 12, 7, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 12, 7, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 3, 13, 3 ], + "to": [ 13, 16, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#inside" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#skin" }, + "north": { "uv": [ 3, 0, 13, 3 ], "texture": "#skin" }, + "south": { "uv": [ 3, 0, 13, 3 ], "texture": "#skin" }, + "west": { "uv": [ 3, 0, 13, 3 ], "texture": "#skin" }, + "east": { "uv": [ 3, 0, 13, 3 ], "texture": "#skin" } + } + }, + { + "__comment": "Box6", + "from": [ 3, 4, 13 ], + "to": [ 13, 13, 16 ], + "faces": { + "down": { "uv": [ 3, 0, 13, 3 ], "texture": "#skin" }, + "up": { "uv": [ 3, 13, 13, 16 ], "texture": "#skin" }, + "north": { "uv": [ 3, 3, 13, 12 ], "texture": "#inside" }, + "south": { "uv": [ 3, 3, 13, 12 ], "texture": "#skin" }, + "west": { "uv": [ 13, 3, 16, 12 ], "texture": "#skin" }, + "east": { "uv": [ 0, 3, 3, 12 ], "texture": "#skin" } + } + }, + { + "__comment": "Box6", + "from": [ 3, 4, 0 ], + "to": [ 13, 13, 3 ], + "faces": { + "down": { "uv": [ 3, 13, 13, 16 ], "texture": "#skin" }, + "up": { "uv": [ 3, 0, 13, 3 ], "texture": "#skin" }, + "north": { "uv": [ 3, 3, 13, 12 ], "texture": "#skin" }, + "south": { "uv": [ 3, 3, 13, 12 ], "texture": "#inside" }, + "west": { "uv": [ 0, 3, 3, 12 ], "texture": "#skin" }, + "east": { "uv": [ 13, 3, 16, 12 ], "texture": "#skin" } + } + }, + { + "__comment": "Box6", + "from": [ 13, 4, 3 ], + "to": [ 16, 13, 13 ], + "faces": { + "down": { "uv": [ 13, 3, 16, 13 ], "texture": "#skin" }, + "up": { "uv": [ 13, 3, 16, 13 ], "texture": "#skin" }, + "north": { "uv": [ 0, 3, 3, 12 ], "texture": "#skin" }, + "south": { "uv": [ 13, 3, 16, 12 ], "texture": "#skin" }, + "west": { "uv": [ 3, 3, 13, 12 ], "texture": "#inside" }, + "east": { "uv": [ 3, 3, 13, 12 ], "texture": "#skin" } + } + }, + { + "__comment": "Box6", + "from": [ 0, 4, 3 ], + "to": [ 3, 13, 13 ], + "faces": { + "down": { "uv": [ 0, 3, 3, 13 ], "texture": "#skin" }, + "up": { "uv": [ 0, 3, 3, 13 ], "texture": "#skin" }, + "north": { "uv": [ 13, 3, 16, 12 ], "texture": "#skin" }, + "south": { "uv": [ 0, 3, 3, 12 ], "texture": "#skin" }, + "west": { "uv": [ 3, 3, 13, 12 ], "texture": "#skin" }, + "east": { "uv": [ 3, 3, 13, 12 ], "texture": "#inside" } + } + }, + { + "__comment": "PlaneY9", + "from": [ 5, 3, 5 ], + "to": [ 11, 3.001, 11 ], + "faces": { + "down": { "uv": [ 5, 0, 11, 6 ], "texture": "#texture" }, + "up": { "uv": [ 5, 0, 11, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX10", + "from": [ 5, 0, 5 ], + "to": [ 5.001, 3, 11 ], + "faces": { + "west": { "uv": [ 5, 6, 11, 9 ], "texture": "#texture" }, + "east": { "uv": [ 5, 6, 11, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX10", + "from": [ 11, 0, 5 ], + "to": [ 11.001, 3, 11 ], + "faces": { + "west": { "uv": [ 5, 6, 11, 9 ], "texture": "#texture" }, + "east": { "uv": [ 5, 6, 11, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ12", + "from": [ 5, 0, 5 ], + "to": [ 11, 3, 5.001 ], + "faces": { + "north": { "uv": [ 5, 6, 11, 9 ], "texture": "#texture" }, + "south": { "uv": [ 5, 6, 11, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ12", + "from": [ 5, 0, 11 ], + "to": [ 11, 3, 11.001 ], + "faces": { + "north": { "uv": [ 5, 6, 11, 9 ], "texture": "#texture" }, + "south": { "uv": [ 5, 6, 11, 9 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/reeds_block.json b/src/main/resources/assets/betternether/models/block/reeds_block.json new file mode 100644 index 0000000..605bfdb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_block.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/reeds_block_side", + "down": "betternether:block/reeds_block_top", + "up": "betternether:block/reeds_block_top", + "north": "betternether:block/reeds_block_side", + "east": "betternether:block/reeds_block_side", + "south": "betternether:block/reeds_block_side", + "west": "betternether:block/reeds_block_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/reeds_button.json b/src/main/resources/assets/betternether/models/block/reeds_button.json new file mode 100644 index 0000000..31f8f29 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_button.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button", + "textures": { + "texture": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_button_inventory.json b/src/main/resources/assets/betternether/models/block/reeds_button_inventory.json new file mode 100644 index 0000000..ccd00de --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_button_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_inventory", + "textures": { + "texture": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_button_pressed.json b/src/main/resources/assets/betternether/models/block/reeds_button_pressed.json new file mode 100644 index 0000000..df19e78 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_button_pressed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_pressed", + "textures": { + "texture": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_door_bottom.json b/src/main/resources/assets/betternether/models/block/reeds_door_bottom.json new file mode 100644 index 0000000..609e39e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_door_bottom.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalagnate_planks_door_bottom", + "textures": { + "texture": "betternether:block/reeds_door_bottom", + "particle": "betternether:block/reeds_door_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_door_bottom_hinge.json b/src/main/resources/assets/betternether/models/block/reeds_door_bottom_hinge.json new file mode 100644 index 0000000..7fa1f96 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_door_bottom_hinge.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalagnate_planks_door_bottom_hinge", + "textures": { + "texture": "betternether:block/reeds_door_bottom", + "particle": "betternether:block/reeds_door_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_door_top.json b/src/main/resources/assets/betternether/models/block/reeds_door_top.json new file mode 100644 index 0000000..28a9377 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_door_top.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalagnate_planks_door_top", + "textures": { + "texture": "betternether:block/reeds_door_top", + "particle": "betternether:block/reeds_door_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_door_top_hinge.json b/src/main/resources/assets/betternether/models/block/reeds_door_top_hinge.json new file mode 100644 index 0000000..22b90d5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_door_top_hinge.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalagnate_planks_door_top_hinge", + "textures": { + "texture": "betternether:block/reeds_door_top", + "particle": "betternether:block/reeds_door_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_fence_gate_closed.json b/src/main/resources/assets/betternether/models/block/reeds_fence_gate_closed.json new file mode 100644 index 0000000..d0b0c80 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_fence_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate", + "textures": { + "texture": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_fence_gate_open.json b/src/main/resources/assets/betternether/models/block/reeds_fence_gate_open.json new file mode 100644 index 0000000..232cd7f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_fence_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_open", + "textures": { + "texture": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_fence_inventory.json b/src/main/resources/assets/betternether/models/block/reeds_fence_inventory.json new file mode 100644 index 0000000..725b43e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_fence_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_inventory", + "textures": { + "texture": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_fence_post.json b/src/main/resources/assets/betternether/models/block/reeds_fence_post.json new file mode 100644 index 0000000..d2010e3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_fence_post.json @@ -0,0 +1,22 @@ +{ + "parent": "block/fence_post", + "textures": { + "particle": "betternether:block/reeds_fence_side", + "texture": "betternether:block/reeds_fence_side", + "top": "betternether:block/reeds_fence_top" + }, + "elements": [ + { "from": [ 6, 0, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#top", "cullface": "down" }, + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "south": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "west": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "east": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" } + }, + "__comment": "Center post" + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_fence_side.json b/src/main/resources/assets/betternether/models/block/reeds_fence_side.json new file mode 100644 index 0000000..4e1dd90 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_fence_side.json @@ -0,0 +1,35 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/fence_side", + "textures": { + "particle": "betternether:block/reeds_fence_side", + "texture": "betternether:block/reeds_fence_side", + "top": "betternether:block/reeds_fence_top" + }, + "elements": [ + { + "__comment": "top bar", + "from": [ 7, 12, 0 ], + "to": [ 9, 15, 9 ], + "faces": { + "down": { "uv": [ 7, 9, 9, 0 ], "texture": "#top" }, + "up": { "uv": [ 7, 0, 9, 9 ], "texture": "#top" }, + "north": { "uv": [ 7, 1, 9, 4 ], "texture": "#texture", "cullface": "north" }, + "west": { "uv": [ 0, 1, 9, 4 ], "texture": "#texture" }, + "east": { "uv": [ 9, 1, 0, 4 ], "texture": "#texture" } + } + }, + { + "__comment": "lower bar", + "from": [ 7, 6, 0 ], + "to": [ 9, 9, 9 ], + "faces": { + "down": { "uv": [ 7, 9, 9, 0 ], "texture": "#top" }, + "up": { "uv": [ 7, 0, 9, 9 ], "texture": "#top" }, + "north": { "uv": [ 7, 7, 9, 10 ], "texture": "#texture", "cullface": "north" }, + "west": { "uv": [ 0, 7, 9, 10 ], "texture": "#texture" }, + "east": { "uv": [ 9, 7, 0, 10 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/reeds_half_slab.json b/src/main/resources/assets/betternether/models/block/reeds_half_slab.json new file mode 100644 index 0000000..20dc412 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/reeds_block_top", + "top": "betternether:block/reeds_block_top", + "side": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_inner_stairs.json b/src/main/resources/assets/betternether/models/block/reeds_inner_stairs.json new file mode 100644 index 0000000..0cb51aa --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_inner_stairs.json @@ -0,0 +1,47 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/reeds_block_side", + "top": "betternether:block/reeds_block_side", + "side": "betternether:block/reeds_block_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 8, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom", "rotation": 180 }, + "north": { "uv": [ 0, 8, 16, 16 ], "texture": "#top", "cullface": "north" }, + "south": { "uv": [ 8, 0, 16, 16 ], "texture": "#bottom", "cullface": "south", "rotation": 90 }, + "west": { "uv": [ 8, 0, 16, 16 ], "texture": "#bottom", "cullface": "west", "rotation": 90 }, + "east": { "uv": [ 8, 0, 16, 16 ], "texture": "#bottom", "cullface": "east", "rotation": 90 } + } + }, + { + "__comment": "Box1", + "from": [ 8, 8, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 8, 16 ], "texture": "#bottom", "cullface": "up", "rotation": 180 }, + "north": { "uv": [ 0, 0, 8, 8 ], "texture": "#top", "cullface": "north" }, + "south": { "uv": [ 0, 0, 8, 8 ], "texture": "#bottom", "cullface": "south", "rotation": 90 }, + "west": { "uv": [ 0, 0, 8, 16 ], "texture": "#bottom", "rotation": 90 }, + "east": { "uv": [ 0, 0, 8, 16 ], "texture": "#bottom", "cullface": "east", "rotation": 90 } + } + }, + { + "__comment": "Box1", + "from": [ 0, 8, 8 ], + "to": [ 8, 16, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 8, 8 ], "texture": "#bottom", "cullface": "up", "rotation": 270 }, + "north": { "uv": [ 0, 0, 8, 8 ], "texture": "#bottom", "rotation": 90 }, + "south": { "uv": [ 0, 8, 8, 16 ], "texture": "#bottom", "cullface": "south", "rotation": 90 }, + "west": { "uv": [ 8, 0, 16, 8 ], "texture": "#top", "cullface": "west" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/reeds_ladder.json b/src/main/resources/assets/betternether/models/block/reeds_ladder.json new file mode 100644 index 0000000..f2bf006 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_ladder.json @@ -0,0 +1,88 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/ladder", + "textures": { + "particle": "betternether:block/reeds_ladder", + "texture": "betternether:block/reeds_ladder" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 12, 0, 15 ], + "to": [ 14, 16, 16 ], + "faces": { + "down": { "uv": [ 2, 15, 4, 16 ], "texture": "#texture", "cullface": "down", "rotation": 180 }, + "up": { "uv": [ 2, 0, 4, 1 ], "texture": "#texture", "cullface": "up", "rotation": 180 }, + "north": { "uv": [ 2, 0, 4, 16 ], "texture": "#texture" }, + "south": { "uv": [ 2, 0, 4, 16 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 3, 0, 4, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 0, 3, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 15 ], + "to": [ 4, 16, 16 ], + "faces": { + "down": { "uv": [ 12, 15, 14, 16 ], "texture": "#texture", "cullface": "down", "rotation": 180 }, + "up": { "uv": [ 12, 0, 14, 1 ], "texture": "#texture", "cullface": "up", "rotation": 180 }, + "north": { "uv": [ 12, 0, 14, 16 ], "texture": "#texture" }, + "south": { "uv": [ 12, 0, 14, 16 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 3, 0, 4, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 0, 3, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box3", + "from": [ 1, 1, 14.5 ], + "to": [ 15, 3, 15.5 ], + "faces": { + "down": { "uv": [ 1, 14, 15, 15 ], "texture": "#texture", "rotation": 180 }, + "up": { "uv": [ 1, 13, 15, 14 ], "texture": "#texture", "rotation": 180 }, + "north": { "uv": [ 1, 13, 15, 15 ], "texture": "#texture" }, + "south": { "uv": [ 1, 13, 15, 15 ], "texture": "#texture" }, + "west": { "uv": [ 14, 13, 15, 15 ], "texture": "#texture" }, + "east": { "uv": [ 1, 13, 2, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box3", + "from": [ 1, 5, 14.5 ], + "to": [ 15, 7, 15.5 ], + "faces": { + "down": { "uv": [ 1, 10, 15, 11 ], "texture": "#texture", "rotation": 180 }, + "up": { "uv": [ 1, 9, 15, 10 ], "texture": "#texture", "rotation": 180 }, + "north": { "uv": [ 1, 9, 15, 11 ], "texture": "#texture" }, + "south": { "uv": [ 1, 9, 15, 11 ], "texture": "#texture" }, + "west": { "uv": [ 14, 9, 15, 11 ], "texture": "#texture" }, + "east": { "uv": [ 1, 9, 2, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box3", + "from": [ 1, 9, 14.5 ], + "to": [ 15, 11, 15.5 ], + "faces": { + "down": { "uv": [ 1, 6, 15, 7 ], "texture": "#texture", "rotation": 180 }, + "up": { "uv": [ 1, 5, 15, 6 ], "texture": "#texture", "rotation": 180 }, + "north": { "uv": [ 1, 5, 15, 7 ], "texture": "#texture" }, + "south": { "uv": [ 1, 5, 15, 7 ], "texture": "#texture" }, + "west": { "uv": [ 14, 5, 15, 7 ], "texture": "#texture" }, + "east": { "uv": [ 1, 5, 2, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box3", + "from": [ 1, 13, 14.5 ], + "to": [ 15, 15, 15.5 ], + "faces": { + "down": { "uv": [ 1, 2, 15, 3 ], "texture": "#texture", "rotation": 180 }, + "up": { "uv": [ 1, 1, 15, 2 ], "texture": "#texture", "rotation": 180 }, + "north": { "uv": [ 1, 1, 15, 3 ], "texture": "#texture" }, + "south": { "uv": [ 1, 1, 15, 3 ], "texture": "#texture" }, + "west": { "uv": [ 14, 1, 15, 3 ], "texture": "#texture" }, + "east": { "uv": [ 1, 1, 2, 3 ], "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_outer_stairs.json b/src/main/resources/assets/betternether/models/block/reeds_outer_stairs.json new file mode 100644 index 0000000..29e9297 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/reeds_block_side", + "top": "betternether:block/reeds_block_side", + "side": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_pressure_plate_down.json b/src/main/resources/assets/betternether/models/block/reeds_pressure_plate_down.json new file mode 100644 index 0000000..138cdda --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_down", + "textures": { + "texture": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_pressure_plate_up.json b/src/main/resources/assets/betternether/models/block/reeds_pressure_plate_up.json new file mode 100644 index 0000000..67032fd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_pressure_plate_up.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_up", + "textures": { + "texture": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_stairs.json b/src/main/resources/assets/betternether/models/block/reeds_stairs.json new file mode 100644 index 0000000..4deb505 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_stairs.json @@ -0,0 +1,36 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/reeds_block_side", + "top": "betternether:block/reeds_block_top", + "side": "betternether:block/reeds_block_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 8, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom", "cullface": "down" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom", "rotation": 180 }, + "north": { "uv": [ 0, 8, 16, 16 ], "texture": "#top", "cullface": "north" }, + "south": { "uv": [ 0, 8, 16, 16 ], "texture": "#top", "cullface": "south" }, + "west": { "uv": [ 8, 0, 16, 16 ], "texture": "#bottom", "cullface": "west", "rotation": 90 }, + "east": { "uv": [ 8, 0, 16, 16 ], "texture": "#bottom", "cullface": "east", "rotation": 90 } + } + }, + { + "__comment": "Box1", + "from": [ 8, 8, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 8, 16 ], "texture": "#bottom", "cullface": "up", "rotation": 180 }, + "north": { "uv": [ 0, 0, 8, 8 ], "texture": "#top", "cullface": "north" }, + "south": { "uv": [ 8, 0, 16, 8 ], "texture": "#top", "cullface": "south" }, + "west": { "uv": [ 0, 0, 8, 16 ], "texture": "#bottom", "rotation": 90 }, + "east": { "uv": [ 0, 0, 8, 16 ], "texture": "#bottom", "cullface": "east", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/reeds_trapdoor.json b/src/main/resources/assets/betternether/models/block/reeds_trapdoor.json new file mode 100644 index 0000000..565ec78 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_trapdoor.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalagnate_planks_trapdoor", + "textures": { + "texture": "betternether:block/reeds_trapdoor", + "particle": "betternether:block/reeds_trapdoor" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_wall_gate_closed.json b/src/main/resources/assets/betternether/models/block/reeds_wall_gate_closed.json new file mode 100644 index 0000000..1c13d2e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_wall_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall", + "textures": { + "texture": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/reeds_wall_gate_open.json b/src/main/resources/assets/betternether/models/block/reeds_wall_gate_open.json new file mode 100644 index 0000000..ba93b08 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/reeds_wall_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall_open", + "textures": { + "texture": "betternether:block/reeds_block_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite.json b/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite.json new file mode 100644 index 0000000..c67252a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/roof_tile_cincinnasite" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite_inner_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite_inner_stairs.json new file mode 100644 index 0000000..ca19f38 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/roof_tile_cincinnasite", + "top": "betternether:block/roof_tile_cincinnasite", + "side": "betternether:block/roof_tile_cincinnasite" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite_outer_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite_outer_stairs.json new file mode 100644 index 0000000..82fd512 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/roof_tile_cincinnasite", + "top": "betternether:block/roof_tile_cincinnasite", + "side": "betternether:block/roof_tile_cincinnasite" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite_slab.json b/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite_slab.json new file mode 100644 index 0000000..6dbf227 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/roof_tile_cincinnasite", + "top": "betternether:block/roof_tile_cincinnasite", + "side": "betternether:block/roof_tile_cincinnasite" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite_stairs.json new file mode 100644 index 0000000..1bef714 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_cincinnasite_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/roof_tile_cincinnasite", + "top": "betternether:block/roof_tile_cincinnasite", + "side": "betternether:block/roof_tile_cincinnasite" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks.json b/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks.json new file mode 100644 index 0000000..f06fb4a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/roof_tile_nether_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks_inner_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks_inner_stairs.json new file mode 100644 index 0000000..26cfe76 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/roof_tile_nether_bricks", + "top": "betternether:block/roof_tile_nether_bricks", + "side": "betternether:block/roof_tile_nether_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks_outer_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks_outer_stairs.json new file mode 100644 index 0000000..e04e78f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/roof_tile_nether_bricks", + "top": "betternether:block/roof_tile_nether_bricks", + "side": "betternether:block/roof_tile_nether_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks_slab.json b/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks_slab.json new file mode 100644 index 0000000..b7dad47 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/roof_tile_nether_bricks", + "top": "betternether:block/roof_tile_nether_bricks", + "side": "betternether:block/roof_tile_nether_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks_stairs.json new file mode 100644 index 0000000..b70e2fb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_nether_bricks_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/roof_tile_nether_bricks", + "top": "betternether:block/roof_tile_nether_bricks", + "side": "betternether:block/roof_tile_nether_bricks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_reeds.json b/src/main/resources/assets/betternether/models/block/roof_tile_reeds.json new file mode 100644 index 0000000..5239e13 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_reeds.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/roof_tile_reeds" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_reeds_inner_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_reeds_inner_stairs.json new file mode 100644 index 0000000..09c31f3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_reeds_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/roof_tile_reeds", + "top": "betternether:block/roof_tile_reeds", + "side": "betternether:block/roof_tile_reeds" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_reeds_outer_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_reeds_outer_stairs.json new file mode 100644 index 0000000..dd3798a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_reeds_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/roof_tile_reeds", + "top": "betternether:block/roof_tile_reeds", + "side": "betternether:block/roof_tile_reeds" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_reeds_slab.json b/src/main/resources/assets/betternether/models/block/roof_tile_reeds_slab.json new file mode 100644 index 0000000..2e5ac43 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_reeds_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/roof_tile_reeds", + "top": "betternether:block/roof_tile_reeds", + "side": "betternether:block/roof_tile_reeds" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_reeds_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_reeds_stairs.json new file mode 100644 index 0000000..d8f097d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_reeds_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/roof_tile_reeds", + "top": "betternether:block/roof_tile_reeds", + "side": "betternether:block/roof_tile_reeds" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate.json b/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate.json new file mode 100644 index 0000000..58d6c1d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/roof_tile_stalagnate" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate_inner_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate_inner_stairs.json new file mode 100644 index 0000000..4148794 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/roof_tile_stalagnate", + "top": "betternether:block/roof_tile_stalagnate", + "side": "betternether:block/roof_tile_stalagnate" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate_outer_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate_outer_stairs.json new file mode 100644 index 0000000..7b1a398 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/roof_tile_stalagnate", + "top": "betternether:block/roof_tile_stalagnate", + "side": "betternether:block/roof_tile_stalagnate" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate_slab.json b/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate_slab.json new file mode 100644 index 0000000..697b3c5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/roof_tile_stalagnate", + "top": "betternether:block/roof_tile_stalagnate", + "side": "betternether:block/roof_tile_stalagnate" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate_stairs.json new file mode 100644 index 0000000..3898cbf --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_stalagnate_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/roof_tile_stalagnate", + "top": "betternether:block/roof_tile_stalagnate", + "side": "betternether:block/roof_tile_stalagnate" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_wart.json b/src/main/resources/assets/betternether/models/block/roof_tile_wart.json new file mode 100644 index 0000000..ef383bd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_wart.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/roof_tile_wart" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_wart_inner_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_wart_inner_stairs.json new file mode 100644 index 0000000..1fa7d21 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_wart_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/roof_tile_wart", + "top": "betternether:block/roof_tile_wart", + "side": "betternether:block/roof_tile_wart" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_wart_outer_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_wart_outer_stairs.json new file mode 100644 index 0000000..964b304 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_wart_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/roof_tile_wart", + "top": "betternether:block/roof_tile_wart", + "side": "betternether:block/roof_tile_wart" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_wart_slab.json b/src/main/resources/assets/betternether/models/block/roof_tile_wart_slab.json new file mode 100644 index 0000000..94e12e0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_wart_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/roof_tile_wart", + "top": "betternether:block/roof_tile_wart", + "side": "betternether:block/roof_tile_wart" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_wart_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_wart_stairs.json new file mode 100644 index 0000000..e80e650 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_wart_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/roof_tile_wart", + "top": "betternether:block/roof_tile_wart", + "side": "betternether:block/roof_tile_wart" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_willow.json b/src/main/resources/assets/betternether/models/block/roof_tile_willow.json new file mode 100644 index 0000000..30174b6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_willow.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/roof_tile_willow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_willow_inner_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_willow_inner_stairs.json new file mode 100644 index 0000000..413600a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_willow_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/roof_tile_willow", + "top": "betternether:block/roof_tile_willow", + "side": "betternether:block/roof_tile_willow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_willow_outer_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_willow_outer_stairs.json new file mode 100644 index 0000000..c772df9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_willow_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/roof_tile_willow", + "top": "betternether:block/roof_tile_willow", + "side": "betternether:block/roof_tile_willow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_willow_slab.json b/src/main/resources/assets/betternether/models/block/roof_tile_willow_slab.json new file mode 100644 index 0000000..4b1fcf6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_willow_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/roof_tile_willow", + "top": "betternether:block/roof_tile_willow", + "side": "betternether:block/roof_tile_willow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/roof_tile_willow_stairs.json b/src/main/resources/assets/betternether/models/block/roof_tile_willow_stairs.json new file mode 100644 index 0000000..22a78b9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/roof_tile_willow_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/roof_tile_willow", + "top": "betternether:block/roof_tile_willow", + "side": "betternether:block/roof_tile_willow" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_bark.json b/src/main/resources/assets/betternether/models/block/rubeus_bark.json new file mode 100644 index 0000000..15ab360 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_bark.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/rubeus_log_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/rubeus_bark_blend.json b/src/main/resources/assets/betternether/models/block/rubeus_bark_blend.json new file mode 100644 index 0000000..e7e226e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_bark_blend.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/rubeus_log_side_blend", + "down": "betternether:block/rubeus_log_side", + "up": "betternether:block/striped_rubeus_log_side", + "north": "betternether:block/rubeus_log_side_blend", + "east": "betternether:block/rubeus_log_side_blend", + "south": "betternether:block/rubeus_log_side_blend", + "west": "betternether:block/rubeus_log_side_blend" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/rubeus_bark_top.json b/src/main/resources/assets/betternether/models/block/rubeus_bark_top.json new file mode 100644 index 0000000..e430589 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_bark_top.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/striped_rubeus_log_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/rubeus_button.json b/src/main/resources/assets/betternether/models/block/rubeus_button.json new file mode 100644 index 0000000..cb0c900 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_button.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button", + "textures": { + "texture": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_button_inventory.json b/src/main/resources/assets/betternether/models/block/rubeus_button_inventory.json new file mode 100644 index 0000000..18c7902 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_button_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_inventory", + "textures": { + "texture": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_button_pressed.json b/src/main/resources/assets/betternether/models/block/rubeus_button_pressed.json new file mode 100644 index 0000000..25ce97b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_button_pressed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_pressed", + "textures": { + "texture": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_cone.json b/src/main/resources/assets/betternether/models/block/rubeus_cone.json new file mode 100644 index 0000000..3f3b89f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_cone.json @@ -0,0 +1,103 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/rubeus_cone_side", + "side": "betternether:block/rubeus_cone_side", + "top": "betternether:block/rubeus_cone_top", + "bottom": "betternether:block/rubeus_cone_bottom" + }, + "elements": [ + { + "__comment": "Box9", + "from": [ 7, 14, 7 ], + "to": [ 9, 16, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#bottom" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#top" }, + "north": { "uv": [ 7, 0, 9, 2 ], "texture": "#side" }, + "south": { "uv": [ 7, 0, 9, 2 ], "texture": "#side" }, + "west": { "uv": [ 7, 0, 9, 2 ], "texture": "#side" }, + "east": { "uv": [ 7, 0, 9, 2 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 5, 4, 5 ], + "to": [ 11, 14, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#bottom" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#top" }, + "north": { "uv": [ 5, 2, 11, 12 ], "texture": "#side" }, + "south": { "uv": [ 5, 2, 11, 12 ], "texture": "#side" }, + "west": { "uv": [ 5, 2, 11, 12 ], "texture": "#side" }, + "east": { "uv": [ 5, 2, 11, 12 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 4, 10, 3 ], + "to": [ 12, 13, 13 ], + "faces": { + "down": { "uv": [ 4, 3, 12, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 3, 12, 13 ], "texture": "#top" }, + "north": { "uv": [ 4, 3, 12, 6 ], "texture": "#side" }, + "south": { "uv": [ 4, 3, 12, 6 ], "texture": "#side" }, + "west": { "uv": [ 3, 3, 13, 6 ], "texture": "#side" }, + "east": { "uv": [ 3, 3, 13, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 3, 10, 4 ], + "to": [ 13, 13, 12 ], + "faces": { + "down": { "uv": [ 3, 4, 13, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 3, 4, 13, 12 ], "texture": "#top" }, + "north": { "uv": [ 3, 3, 13, 6 ], "texture": "#side" }, + "south": { "uv": [ 3, 3, 13, 6 ], "texture": "#side" }, + "west": { "uv": [ 4, 3, 12, 6 ], "texture": "#side" }, + "east": { "uv": [ 4, 3, 12, 6 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 6, 3, 6 ], + "to": [ 10, 4, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#bottom" }, + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#top" }, + "north": { "uv": [ 6, 12, 10, 13 ], "texture": "#side" }, + "south": { "uv": [ 6, 12, 10, 13 ], "texture": "#side" }, + "west": { "uv": [ 6, 12, 10, 13 ], "texture": "#side" }, + "east": { "uv": [ 6, 12, 10, 13 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 5, 5, 4 ], + "to": [ 11, 10, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 11, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 5, 4, 11, 12 ], "texture": "#top" }, + "north": { "uv": [ 5, 6, 11, 11 ], "texture": "#side" }, + "south": { "uv": [ 5, 6, 11, 11 ], "texture": "#side" }, + "west": { "uv": [ 4, 6, 12, 11 ], "texture": "#side" }, + "east": { "uv": [ 4, 6, 12, 11 ], "texture": "#side" } + } + }, + { + "__comment": "Box9", + "from": [ 4, 5, 5 ], + "to": [ 12, 10, 11 ], + "faces": { + "down": { "uv": [ 4, 5, 12, 11 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 5, 12, 11 ], "texture": "#top" }, + "north": { "uv": [ 4, 6, 12, 11 ], "texture": "#side" }, + "south": { "uv": [ 4, 6, 12, 11 ], "texture": "#side" }, + "west": { "uv": [ 5, 6, 11, 11 ], "texture": "#side" }, + "east": { "uv": [ 5, 6, 11, 11 ], "texture": "#side" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/rubeus_door_bottom.json b/src/main/resources/assets/betternether/models/block/rubeus_door_bottom.json new file mode 100644 index 0000000..c0691e5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_door_bottom.json @@ -0,0 +1,7 @@ +{ + "parent": "block/door_bottom", + "textures": { + "bottom": "betternether:block/rubeus_door_bottom", + "top": "betternether:block/rubeus_door_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_door_bottom_hinge.json b/src/main/resources/assets/betternether/models/block/rubeus_door_bottom_hinge.json new file mode 100644 index 0000000..7d17467 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_door_bottom_hinge.json @@ -0,0 +1,7 @@ +{ + "parent": "block/door_bottom_rh", + "textures": { + "bottom": "betternether:block/rubeus_door_bottom", + "top": "betternether:block/rubeus_door_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_door_top.json b/src/main/resources/assets/betternether/models/block/rubeus_door_top.json new file mode 100644 index 0000000..efe13ce --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_door_top.json @@ -0,0 +1,7 @@ +{ + "parent": "block/door_top", + "textures": { + "bottom": "betternether:block/rubeus_door_top", + "top": "betternether:block/rubeus_door_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_door_top_hinge.json b/src/main/resources/assets/betternether/models/block/rubeus_door_top_hinge.json new file mode 100644 index 0000000..d738eb3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_door_top_hinge.json @@ -0,0 +1,7 @@ +{ + "parent": "block/door_top_rh", + "textures": { + "bottom": "betternether:block/rubeus_door_top", + "top": "betternether:block/rubeus_door_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_fence_gate_closed.json b/src/main/resources/assets/betternether/models/block/rubeus_fence_gate_closed.json new file mode 100644 index 0000000..f386d39 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_fence_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate", + "textures": { + "texture": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_fence_gate_open.json b/src/main/resources/assets/betternether/models/block/rubeus_fence_gate_open.json new file mode 100644 index 0000000..4f84ca3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_fence_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_open", + "textures": { + "texture": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_fence_inventory.json b/src/main/resources/assets/betternether/models/block/rubeus_fence_inventory.json new file mode 100644 index 0000000..870503e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_fence_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_inventory", + "textures": { + "texture": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_fence_post.json b/src/main/resources/assets/betternether/models/block/rubeus_fence_post.json new file mode 100644 index 0000000..f2efe3f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_fence_post.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_post", + "textures": { + "texture": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_fence_side.json b/src/main/resources/assets/betternether/models/block/rubeus_fence_side.json new file mode 100644 index 0000000..93a0e01 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_fence_side.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_side", + "textures": { + "texture": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_half_slab.json b/src/main/resources/assets/betternether/models/block/rubeus_half_slab.json new file mode 100644 index 0000000..8d69cfd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/rubeus_planks", + "top": "betternether:block/rubeus_planks", + "side": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_inner_stairs.json b/src/main/resources/assets/betternether/models/block/rubeus_inner_stairs.json new file mode 100644 index 0000000..5e2e439 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/rubeus_planks", + "top": "betternether:block/rubeus_planks", + "side": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_ladder.json b/src/main/resources/assets/betternether/models/block/rubeus_ladder.json new file mode 100644 index 0000000..afac251 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_ladder.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/reeds_ladder", + "textures": { + "particle": "betternether:block/rubeus_ladder", + "texture": "betternether:block/rubeus_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_leaves.json b/src/main/resources/assets/betternether/models/block/rubeus_leaves.json new file mode 100644 index 0000000..4e6844d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/leaves", + "textures": { + "all": "betternether:block/rubeus_leaves" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_log.json b/src/main/resources/assets/betternether/models/block/rubeus_log.json new file mode 100644 index 0000000..ec24122 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_log.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/rubeus_log_side", + "down": "betternether:block/rubeus_log_top", + "up": "betternether:block/rubeus_log_top", + "north": "betternether:block/rubeus_log_side", + "east": "betternether:block/rubeus_log_side", + "south": "betternether:block/rubeus_log_side", + "west": "betternether:block/rubeus_log_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/rubeus_log_blend.json b/src/main/resources/assets/betternether/models/block/rubeus_log_blend.json new file mode 100644 index 0000000..587152d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_log_blend.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/rubeus_log_side_blend", + "down": "betternether:block/rubeus_log_top", + "up": "betternether:block/striped_rubeus_log_top", + "north": "betternether:block/rubeus_log_side_blend", + "east": "betternether:block/rubeus_log_side_blend", + "south": "betternether:block/rubeus_log_side_blend", + "west": "betternether:block/rubeus_log_side_blend" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/rubeus_log_top.json b/src/main/resources/assets/betternether/models/block/rubeus_log_top.json new file mode 100644 index 0000000..3d71015 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_log_top.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/striped_rubeus_log_side", + "down": "betternether:block/striped_rubeus_log_top", + "up": "betternether:block/striped_rubeus_log_top", + "north": "betternether:block/striped_rubeus_log_side", + "east": "betternether:block/striped_rubeus_log_side", + "south": "betternether:block/striped_rubeus_log_side", + "west": "betternether:block/striped_rubeus_log_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/rubeus_outer_stairs.json b/src/main/resources/assets/betternether/models/block/rubeus_outer_stairs.json new file mode 100644 index 0000000..9deb276 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/rubeus_planks", + "top": "betternether:block/rubeus_planks", + "side": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_planks.json b/src/main/resources/assets/betternether/models/block/rubeus_planks.json new file mode 100644 index 0000000..9236169 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_planks.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_pressure_plate_down.json b/src/main/resources/assets/betternether/models/block/rubeus_pressure_plate_down.json new file mode 100644 index 0000000..05ee3b6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_down", + "textures": { + "texture": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_pressure_plate_up.json b/src/main/resources/assets/betternether/models/block/rubeus_pressure_plate_up.json new file mode 100644 index 0000000..1db7227 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_pressure_plate_up.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_up", + "textures": { + "texture": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_sapling.json b/src/main/resources/assets/betternether/models/block/rubeus_sapling.json new file mode 100644 index 0000000..4b83854 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/rubeus_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_stairs.json b/src/main/resources/assets/betternether/models/block/rubeus_stairs.json new file mode 100644 index 0000000..de14a6d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/rubeus_planks", + "top": "betternether:block/rubeus_planks", + "side": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_trapdoor.json b/src/main/resources/assets/betternether/models/block/rubeus_trapdoor.json new file mode 100644 index 0000000..75e8300 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_trapdoor.json @@ -0,0 +1,68 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/rubeus_trapdoor", + "texture": "betternether:block/rubeus_trapdoor", + "side": "betternether:block/rubeus_trapdoor_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 3, 4 ], + "faces": { + "down": { "uv": [ 0, 12, 16, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 16, 4 ], "texture": "#texture" }, + "north": { "uv": [ 0, 13, 16, 16 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 13, 16, 16 ], "texture": "#side" }, + "west": { "uv": [ 0, 13, 4, 16 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 12, 13, 16, 16 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 4 ], + "to": [ 4, 3, 12 ], + "faces": { + "down": { "uv": [ 0, 4, 4, 12 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 4, 4, 12 ], "texture": "#texture" }, + "west": { "uv": [ 4, 13, 12, 16 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 4, 13, 12, 16 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 1, 4 ], + "to": [ 12, 2, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 0, 4 ], + "to": [ 16, 3, 12 ], + "faces": { + "down": { "uv": [ 12, 4, 16, 12 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 12, 4, 16, 12 ], "texture": "#texture" }, + "west": { "uv": [ 4, 13, 12, 16 ], "texture": "#side" }, + "east": { "uv": [ 4, 13, 12, 16 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 12 ], + "to": [ 16, 3, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 4 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 12, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 13, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0, 13, 16, 16 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 12, 13, 16, 16 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 0, 13, 4, 16 ], "texture": "#side", "cullface": "east" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/rubeus_wall_gate_closed.json b/src/main/resources/assets/betternether/models/block/rubeus_wall_gate_closed.json new file mode 100644 index 0000000..db6a7e4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_wall_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall", + "textures": { + "texture": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/rubeus_wall_gate_open.json b/src/main/resources/assets/betternether/models/block/rubeus_wall_gate_open.json new file mode 100644 index 0000000..62f06b8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/rubeus_wall_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall_open", + "textures": { + "texture": "betternether:block/rubeus_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/ruby_half_slab.json b/src/main/resources/assets/betternether/models/block/ruby_half_slab.json new file mode 100644 index 0000000..2876bb2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/ruby_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/nether_ruby_block", + "top": "betternether:block/nether_ruby_block", + "side": "betternether:block/nether_ruby_slab_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/ruby_inner_stairs.json b/src/main/resources/assets/betternether/models/block/ruby_inner_stairs.json new file mode 100644 index 0000000..04832a7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/ruby_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/nether_ruby_block", + "top": "betternether:block/nether_ruby_block", + "side": "betternether:block/nether_ruby_block" + } +} diff --git a/src/main/resources/assets/betternether/models/block/ruby_outer_stairs.json b/src/main/resources/assets/betternether/models/block/ruby_outer_stairs.json new file mode 100644 index 0000000..9ca8878 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/ruby_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/nether_ruby_block", + "top": "betternether:block/nether_ruby_block", + "side": "betternether:block/nether_ruby_block" + } +} diff --git a/src/main/resources/assets/betternether/models/block/ruby_slab_double.json b/src/main/resources/assets/betternether/models/block/ruby_slab_double.json new file mode 100644 index 0000000..cbb5483 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/ruby_slab_double.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/nether_ruby_slab_side", + "down": "betternether:block/nether_ruby_block", + "up": "betternether:block/nether_ruby_block", + "north": "betternether:block/nether_ruby_slab_side", + "east": "betternether:block/nether_ruby_slab_side", + "south": "betternether:block/nether_ruby_slab_side", + "west": "betternether:block/nether_ruby_slab_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/ruby_stairs.json b/src/main/resources/assets/betternether/models/block/ruby_stairs.json new file mode 100644 index 0000000..6d60b6a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/ruby_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/nether_ruby_block", + "top": "betternether:block/nether_ruby_block", + "side": "betternether:block/nether_ruby_block" + } +} diff --git a/src/main/resources/assets/betternether/models/block/sepia_bone_grass_1.json b/src/main/resources/assets/betternether/models/block/sepia_bone_grass_1.json new file mode 100644 index 0000000..e92d8b1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/sepia_bone_grass_1.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/sepia_bone_grass_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/sepia_bone_grass_2.json b/src/main/resources/assets/betternether/models/block/sepia_bone_grass_2.json new file mode 100644 index 0000000..72e610a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/sepia_bone_grass_2.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/sepia_bone_grass_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/sepia_bone_grass_3.json b/src/main/resources/assets/betternether/models/block/sepia_bone_grass_3.json new file mode 100644 index 0000000..054f9c0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/sepia_bone_grass_3.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/sepia_bone_grass_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/sepia_bone_grass_4.json b/src/main/resources/assets/betternether/models/block/sepia_bone_grass_4.json new file mode 100644 index 0000000..d5e23fe --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/sepia_bone_grass_4.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/sepia_bone_grass_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/sepia_bone_grass_5.json b/src/main/resources/assets/betternether/models/block/sepia_bone_grass_5.json new file mode 100644 index 0000000..7061582 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/sepia_bone_grass_5.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/sepia_bone_grass_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/sepia_bone_grass_6.json b/src/main/resources/assets/betternether/models/block/sepia_bone_grass_6.json new file mode 100644 index 0000000..3ce67e4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/sepia_bone_grass_6.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/sepia_bone_grass_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/sepia_mushroom_grass.json b/src/main/resources/assets/betternether/models/block/sepia_mushroom_grass.json new file mode 100644 index 0000000..107ba8c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/sepia_mushroom_grass.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/sepia_mushroom_grass_side", + "down": "block/netherrack", + "up": "betternether:block/sepia_mushroom_grass_top", + "north": "betternether:block/sepia_mushroom_grass_side", + "east": "betternether:block/sepia_mushroom_grass_side", + "south": "betternether:block/sepia_mushroom_grass_side", + "west": "betternether:block/sepia_mushroom_grass_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/smoker_bottom.json b/src/main/resources/assets/betternether/models/block/smoker_bottom.json new file mode 100644 index 0000000..c86597f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/smoker_bottom.json @@ -0,0 +1,179 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/smoker_stem", + "texture": "betternether:block/smoker_stem" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "up": { "uv": [ 10, 0, 16, 6 ], "texture": "#texture" }, + "north": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 6, 0, 3 ], + "to": [ 10, 8, 7 ], + "faces": { + "up": { "uv": [ 12, 8, 16, 12 ], "texture": "#texture" }, + "north": { "uv": [ 12, 8, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 12, 8, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 12, 8, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 9, 0, 6 ], + "to": [ 13, 6, 10 ], + "faces": { + "up": { "uv": [ 10, 8, 14, 12 ], "texture": "#texture" }, + "north": { "uv": [ 8, 10, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 8, 10, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 8, 10, 12, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 6, 0, 9 ], + "to": [ 10, 5, 13 ], + "faces": { + "up": { "uv": [ 8, 8, 12, 12 ], "texture": "#texture" }, + "south": { "uv": [ 10, 11, 14, 16 ], "texture": "#texture" }, + "west": { "uv": [ 10, 11, 14, 16 ], "texture": "#texture" }, + "east": { "uv": [ 10, 11, 14, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 3, 0, 6 ], + "to": [ 6, 7, 9 ], + "faces": { + "up": { "uv": [ 8, 8, 11, 11 ], "texture": "#texture" }, + "north": { "uv": [ 8, 9, 11, 16 ], "texture": "#texture" }, + "south": { "uv": [ 8, 9, 11, 16 ], "texture": "#texture" }, + "west": { "uv": [ 8, 9, 11, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 4, 12, 4 ], + "to": [ 7, 15, 7 ], + "faces": { + "down": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "west": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "east": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 9, 7, 9 ], + "to": [ 12, 10, 12 ], + "faces": { + "down": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "west": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "east": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 6, 12.5, 10 ], + "to": [ 9, 15.5, 13 ], + "faces": { + "down": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "west": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "east": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 4, 3, 9 ], + "to": [ 7, 6, 12 ], + "faces": { + "down": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "west": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "east": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 8, 11, 4 ], + "to": [ 10, 13, 6 ], + "faces": { + "down": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 4, 2.5 ], + "to": [ 7, 6, 4.5 ], + "faces": { + "down": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 10, 12.5, 7 ], + "to": [ 12, 14.5, 9 ], + "faces": { + "down": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 12, 3, 5 ], + "to": [ 14, 5, 7 ], + "faces": { + "down": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 4, 9, 8 ], + "to": [ 6, 11, 10 ], + "faces": { + "down": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/smoker_middle.json b/src/main/resources/assets/betternether/models/block/smoker_middle.json new file mode 100644 index 0000000..b26d113 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/smoker_middle.json @@ -0,0 +1,183 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/smoker_stem", + "texture": "betternether:block/smoker_stem" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "down": { "uv": [ 6, 0, 10, 4 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 6, 0, 10, 4 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 1, 0, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 1, 0, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 1, 0, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 1, 0, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 3, 5 ], + "to": [ 8, 6, 8 ], + "faces": { + "down": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "west": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "east": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 9, 1, 7 ], + "to": [ 11, 3, 9 ], + "faces": { + "down": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 9, 7, 9 ], + "to": [ 11, 9, 11 ], + "faces": { + "down": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 11, 9 ], + "to": [ 7, 13, 11 ], + "faces": { + "down": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 14, 7 ], + "to": [ 6, 15, 8 ], + "faces": { + "down": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 8, 8 ], + "to": [ 6, 9, 9 ], + "faces": { + "down": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 5, 1, 8 ], + "to": [ 6, 2, 9 ], + "faces": { + "down": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 7, 3.5, 10 ], + "to": [ 8, 4.5, 11 ], + "faces": { + "down": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 8, 12, 10 ], + "to": [ 9, 13, 11 ], + "faces": { + "down": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 9, 12, 5 ], + "to": [ 11, 14, 7 ], + "faces": { + "down": { "uv": [ 6, 4, 9, 7 ], "texture": "#texture" }, + "up": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 6, 4, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 10, 14, 8 ], + "to": [ 11, 15, 9 ], + "faces": { + "down": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 10, 5, 6 ], + "to": [ 11, 6, 7 ], + "faces": { + "down": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "south": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box2", + "from": [ 7, 9, 5 ], + "to": [ 8, 10, 6 ], + "faces": { + "down": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "up": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "north": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "west": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 7, 5, 8, 6 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/smoker_top.json b/src/main/resources/assets/betternether/models/block/smoker_top.json new file mode 100644 index 0000000..4313775 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/smoker_top.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/smoker_top", + "texture": "betternether:block/smoker_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 8, 12 ], + "faces": { + "down": { "uv": [ 0, 8, 8, 16 ], "texture": "#texture" }, + "up": { "uv": [ 8, 0, 16, 8 ], "texture": "#texture" }, + "north": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/soul_grass_1.json b/src/main/resources/assets/betternether/models/block/soul_grass_1.json new file mode 100644 index 0000000..1215658 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_grass_1.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/soul_grass_01" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_grass_2.json b/src/main/resources/assets/betternether/models/block/soul_grass_2.json new file mode 100644 index 0000000..449d59b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_grass_2.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/soul_grass_02" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_grass_3.json b/src/main/resources/assets/betternether/models/block/soul_grass_3.json new file mode 100644 index 0000000..e6b38d0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_grass_3.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/soul_grass_01" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_grass_4.json b/src/main/resources/assets/betternether/models/block/soul_grass_4.json new file mode 100644 index 0000000..70b16d5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_grass_4.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/soul_grass_02" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_lily_big_bottom.json b/src/main/resources/assets/betternether/models/block/soul_lily_big_bottom.json new file mode 100644 index 0000000..d69cb7b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_lily_big_bottom.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/soul_lily_big_bottom", + "texture": "betternether:block/soul_lily_big_bottom", + "cut": "betternether:block/soul_lily_big_middle" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 9, 12 ], + "faces": { + "up": { "uv": [ 4, 5, 12, 13 ], "texture": "#texture" }, + "north": { "uv": [ 4, 7, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 4, 7, 12, 16 ], "texture": "#texture" }, + "west": { "uv": [ 4, 7, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 4, 7, 12, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 9, 5 ], + "to": [ 11, 13, 11 ], + "faces": { + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture" }, + "north": { "uv": [ 5, 3, 11, 7 ], "texture": "#texture" }, + "south": { "uv": [ 5, 3, 11, 7 ], "texture": "#texture" }, + "west": { "uv": [ 5, 3, 11, 7 ], "texture": "#texture" }, + "east": { "uv": [ 5, 3, 11, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 0, 3 ], + "to": [ 11, 7, 13 ], + "faces": { + "up": { "uv": [ 5, 4, 11, 14 ], "texture": "#texture" }, + "north": { "uv": [ 5, 9, 11, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 9, 11, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 9, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 9, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 5 ], + "to": [ 13, 7, 11 ], + "faces": { + "up": { "uv": [ 3, 9, 13, 15 ], "texture": "#texture" }, + "north": { "uv": [ 3, 9, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 9, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 9, 11, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 9, 11, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 13, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "up": { "uv": [ 11, 0, 15, 4 ], "texture": "#cut", "cullface": "up" }, + "north": { "uv": [ 6, 0, 10, 3 ], "texture": "#texture" }, + "south": { "uv": [ 6, 0, 10, 3 ], "texture": "#texture" }, + "west": { "uv": [ 6, 0, 10, 3 ], "texture": "#texture" }, + "east": { "uv": [ 6, 0, 10, 3 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 9, 6 ], + "to": [ 12, 11, 10 ], + "faces": { + "up": { "uv": [ 4, 6, 12, 10 ], "texture": "#texture" }, + "north": { "uv": [ 4, 5, 12, 7 ], "texture": "#texture" }, + "south": { "uv": [ 4, 5, 12, 7 ], "texture": "#texture" }, + "west": { "uv": [ 6, 5, 10, 7 ], "texture": "#texture" }, + "east": { "uv": [ 6, 5, 10, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 9, 4 ], + "to": [ 10, 11, 12 ], + "faces": { + "up": { "uv": [ 6, 4, 10, 12 ], "texture": "#texture" }, + "north": { "uv": [ 6, 5, 10, 7 ], "texture": "#texture" }, + "south": { "uv": [ 6, 5, 10, 7 ], "texture": "#texture" }, + "west": { "uv": [ 4, 5, 12, 7 ], "texture": "#texture" }, + "east": { "uv": [ 4, 5, 12, 7 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/soul_lily_big_middle.json b/src/main/resources/assets/betternether/models/block/soul_lily_big_middle.json new file mode 100644 index 0000000..8a6d6e5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_lily_big_middle.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/soul_lily_big_middle", + "texture": "betternether:block/soul_lily_big_middle" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "down": { "uv": [ 11, 0, 15, 4 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 11, 0, 15, 4 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "south": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "west": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "east": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/soul_lily_big_top_center.json b/src/main/resources/assets/betternether/models/block/soul_lily_big_top_center.json new file mode 100644 index 0000000..1559b15 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_lily_big_top_center.json @@ -0,0 +1,123 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/soul_lily_leaf_top_medium", + "texture": "betternether:block/soul_lily_leaf_top_medium", + "bottom": "betternether:block/soul_lily_leaf_bottom_medium", + "middle": "betternether:block/soul_lily_big_middle", + "corner": "betternether:block/soul_lily_big_top_corner" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 2, 0 ], + "to": [ 16, 4, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 12, 16, 14 ], "texture": "#bottom", "cullface": "north" }, + "south": { "uv": [ 0, 12, 16, 14 ], "texture": "#bottom", "cullface": "south" }, + "west": { "uv": [ 0, 12, 16, 14 ], "texture": "#bottom", "cullface": "west" }, + "east": { "uv": [ 0, 12, 16, 14 ], "texture": "#bottom", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 1, 3 ], + "to": [ 12, 2, 13 ], + "faces": { + "down": { "uv": [ 5, 3, 12, 13 ], "texture": "#bottom" }, + "north": { "uv": [ 4, 14, 11, 15 ], "texture": "#bottom" }, + "south": { "uv": [ 5, 14, 12, 15 ], "texture": "#bottom" }, + "west": { "uv": [ 3, 14, 13, 15 ], "texture": "#bottom" }, + "east": { "uv": [ 3, 14, 13, 15 ], "texture": "#bottom" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 1, 4 ], + "to": [ 13, 2, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 13, 12 ], "texture": "#bottom" }, + "north": { "uv": [ 3, 14, 12, 15 ], "texture": "#bottom" }, + "south": { "uv": [ 4, 14, 13, 15 ], "texture": "#bottom" }, + "west": { "uv": [ 4, 14, 12, 15 ], "texture": "#bottom" }, + "east": { "uv": [ 4, 14, 12, 15 ], "texture": "#bottom" } + } + }, + { + "__comment": "Box6", + "from": [ 5, -7, 5 ], + "to": [ 11, 1, 11 ], + "faces": { + "north": { "uv": [ 0, 0, 6, 8 ], "texture": "#middle" }, + "south": { "uv": [ 0, 0, 6, 8 ], "texture": "#middle" }, + "west": { "uv": [ 0, 0, 6, 8 ], "texture": "#middle" }, + "east": { "uv": [ 0, 0, 6, 8 ], "texture": "#middle" } + } + }, + { + "__comment": "Box7", + "from": [ 13, 3, -3 ], + "to": [ 19, 5, 3 ], + "faces": { + "down": { "uv": [ 8, 2, 14, 8 ], "texture": "#corner", "rotation": 90 }, + "up": { "uv": [ 8, 2, 14, 8 ], "texture": "#corner" }, + "north": { "uv": [ 0, 14, 6, 16 ], "texture": "#corner" }, + "south": { "uv": [ 5, 7, 11, 9 ], "texture": "#corner" }, + "west": { "uv": [ 5, 7, 11, 9 ], "texture": "#corner" }, + "east": { "uv": [ 0, 14, 6, 16 ], "texture": "#corner" } + } + }, + { + "__comment": "Box7", + "from": [ 13, 3, 13 ], + "to": [ 19, 5, 19 ], + "faces": { + "down": { "uv": [ 2, 8, 8, 14 ], "texture": "#corner", "rotation": 180 }, + "up": { "uv": [ 8, 8, 14, 14 ], "texture": "#corner" }, + "north": { "uv": [ 5, 7, 11, 9 ], "texture": "#corner" }, + "south": { "uv": [ 0, 14, 6, 16 ], "texture": "#corner" }, + "west": { "uv": [ 5, 7, 11, 9 ], "texture": "#corner" }, + "east": { "uv": [ 0, 14, 6, 16 ], "texture": "#corner" } + } + }, + { + "__comment": "Box7", + "from": [ -3, 3, 13 ], + "to": [ 3, 5, 19 ], + "faces": { + "down": { "uv": [ 2, 8, 8, 14 ], "texture": "#corner", "rotation": 90 }, + "up": { "uv": [ 2, 8, 8, 14 ], "texture": "#corner" }, + "north": { "uv": [ 5, 7, 11, 9 ], "texture": "#corner" }, + "south": { "uv": [ 0, 14, 6, 16 ], "texture": "#corner" }, + "west": { "uv": [ 0, 14, 6, 16 ], "texture": "#corner" }, + "east": { "uv": [ 5, 7, 11, 9 ], "texture": "#corner" } + } + }, + { + "__comment": "Box7", + "from": [ -3, 3, -3 ], + "to": [ 3, 5, 3 ], + "faces": { + "down": { "uv": [ 2, 2, 8, 8 ], "texture": "#corner", "rotation": 270 }, + "up": { "uv": [ 2, 2, 8, 8 ], "texture": "#corner" }, + "north": { "uv": [ 0, 14, 6, 16 ], "texture": "#corner" }, + "south": { "uv": [ 5, 7, 11, 9 ], "texture": "#corner" }, + "west": { "uv": [ 0, 14, 6, 16 ], "texture": "#corner" }, + "east": { "uv": [ 5, 7, 11, 9 ], "texture": "#corner" } + } + }, + { + "__comment": "Box6", + "from": [ 11, 1, 11 ], + "to": [ 5, -7, 5 ], + "faces": { + "north": { "uv": [ 0, 8, 6, 0 ], "texture": "#middle" }, + "south": { "uv": [ 0, 8, 6, 0 ], "texture": "#middle" }, + "west": { "uv": [ 0, 8, 6, 0 ], "texture": "#middle" }, + "east": { "uv": [ 0, 8, 6, 0 ], "texture": "#middle" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/soul_lily_medium.json b/src/main/resources/assets/betternether/models/block/soul_lily_medium.json new file mode 100644 index 0000000..a1af985 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_lily_medium.json @@ -0,0 +1,264 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/soul_lily_leaf_top_medium", + "stem": "betternether:block/soul_lily_stem_bottom_medium", + "leaf_top": "betternether:block/soul_lily_leaf_top_medium", + "leaf_bottom": "betternether:block/soul_lily_leaf_bottom_medium" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 6, 10 ], + "faces": { + "up": { "uv": [ 6, 11, 10, 15 ], "texture": "#stem" }, + "north": { "uv": [ 6, 10, 10, 16 ], "texture": "#stem" }, + "south": { "uv": [ 6, 10, 10, 16 ], "texture": "#stem" }, + "west": { "uv": [ 6, 10, 10, 16 ], "texture": "#stem" }, + "east": { "uv": [ 6, 10, 10, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 0, 7 ], + "to": [ 11, 4, 9 ], + "faces": { + "up": { "uv": [ 10, 12, 11, 14 ], "texture": "#stem" }, + "north": { "uv": [ 5, 12, 6, 16 ], "texture": "#stem" }, + "south": { "uv": [ 10, 12, 11, 16 ], "texture": "#stem" }, + "east": { "uv": [ 7, 12, 9, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 0, 7 ], + "to": [ 6, 4, 9 ], + "faces": { + "up": { "uv": [ 5, 12, 6, 14 ], "texture": "#stem" }, + "north": { "uv": [ 10, 12, 11, 16 ], "texture": "#stem" }, + "south": { "uv": [ 5, 12, 6, 16 ], "texture": "#stem" }, + "west": { "uv": [ 7, 12, 9, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 0, 5 ], + "to": [ 9, 4, 6 ], + "faces": { + "up": { "uv": [ 7, 12, 9, 13 ], "texture": "#stem" }, + "north": { "uv": [ 7, 12, 9, 16 ], "texture": "#stem" }, + "west": { "uv": [ 5, 12, 6, 16 ], "texture": "#stem" }, + "east": { "uv": [ 10, 12, 11, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 0, 10 ], + "to": [ 9, 4, 11 ], + "faces": { + "up": { "uv": [ 7, 12, 9, 13 ], "texture": "#stem" }, + "south": { "uv": [ 7, 12, 9, 16 ], "texture": "#stem" }, + "west": { "uv": [ 10, 12, 11, 16 ], "texture": "#stem" }, + "east": { "uv": [ 5, 12, 6, 16 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 6, 7 ], + "to": [ 9, 16, 9 ], + "faces": { + "north": { "uv": [ 7, 0, 9, 10 ], "texture": "#stem" }, + "south": { "uv": [ 7, 0, 9, 10 ], "texture": "#stem" }, + "west": { "uv": [ 7, 0, 9, 10 ], "texture": "#stem" }, + "east": { "uv": [ 7, 0, 9, 10 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 7.5, 6, 6 ], + "to": [ 8.5, 8, 10 ], + "faces": { + "up": { "uv": [ 8, 8, 9, 12 ], "texture": "#stem" }, + "north": { "uv": [ 7, 8, 8, 10 ], "texture": "#stem" }, + "south": { "uv": [ 8, 8, 9, 10 ], "texture": "#stem" }, + "west": { "uv": [ 6, 8, 10, 10 ], "texture": "#stem" }, + "east": { "uv": [ 6, 8, 10, 10 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 6, 7.5 ], + "to": [ 10, 8, 8.5 ], + "faces": { + "up": { "uv": [ 6, 9, 10, 10 ], "texture": "#stem" }, + "north": { "uv": [ 6, 8, 10, 10 ], "texture": "#stem" }, + "south": { "uv": [ 6, 8, 10, 10 ], "texture": "#stem" }, + "west": { "uv": [ 7, 8, 8, 10 ], "texture": "#stem" }, + "east": { "uv": [ 8, 8, 9, 10 ], "texture": "#stem" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 16, 6 ], + "to": [ 9, 17, 10 ], + "faces": { + "down": { "uv": [ 7, 6, 9, 10 ], "texture": "#leaf_bottom", "cullface": "up" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#leaf_bottom", "cullface": "up" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#leaf_bottom", "cullface": "up" }, + "west": { "uv": [ 6, 15, 10, 16 ], "texture": "#leaf_bottom", "cullface": "up" }, + "east": { "uv": [ 6, 15, 10, 16 ], "texture": "#leaf_bottom", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 16, 7 ], + "to": [ 10, 17, 9 ], + "faces": { + "down": { "uv": [ 9, 7, 10, 9 ], "texture": "#leaf_bottom", "cullface": "up" }, + "north": { "uv": [ 6, 15, 7, 16 ], "texture": "#leaf_bottom", "cullface": "up" }, + "south": { "uv": [ 9, 15, 10, 16 ], "texture": "#leaf_bottom", "cullface": "up" }, + "east": { "uv": [ 7, 15, 9, 16 ], "texture": "#leaf_bottom", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 16, 7 ], + "to": [ 7, 17, 9 ], + "faces": { + "down": { "uv": [ 6, 7, 7, 9 ], "texture": "#leaf_bottom", "cullface": "up" }, + "north": { "uv": [ 9, 15, 10, 16 ], "texture": "#leaf_bottom", "cullface": "up" }, + "south": { "uv": [ 6, 15, 7, 16 ], "texture": "#leaf_bottom", "cullface": "up" }, + "west": { "uv": [ 7, 15, 9, 16 ], "texture": "#leaf_bottom", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 17, 3 ], + "to": [ 13, 18, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#leaf_bottom", "cullface": "up" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#leaf_top", "cullface": "up" }, + "north": { "uv": [ 3, 14, 13, 15 ], "texture": "#leaf_bottom", "cullface": "up" }, + "south": { "uv": [ 3, 14, 13, 15 ], "texture": "#leaf_bottom", "cullface": "up" }, + "west": { "uv": [ 3, 14, 13, 15 ], "texture": "#leaf_bottom", "cullface": "up" }, + "east": { "uv": [ 3, 14, 13, 15 ], "texture": "#leaf_bottom", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 18, 13 ], + "to": [ 13, 19, 16 ], + "faces": { + "down": { "uv": [ 3, 0, 13, 3 ], "texture": "#leaf_bottom", "cullface": "up" }, + "up": { "uv": [ 3, 13, 13, 16 ], "texture": "#leaf_top", "cullface": "up" }, + "north": { "uv": [ 3, 13, 13, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "south": { "uv": [ 3, 13, 13, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "west": { "uv": [ 13, 13, 16, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "east": { "uv": [ 0, 13, 3, 14 ], "texture": "#leaf_top", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 18, 0 ], + "to": [ 13, 19, 3 ], + "faces": { + "down": { "uv": [ 3, 13, 13, 16 ], "texture": "#leaf_bottom", "cullface": "up" }, + "up": { "uv": [ 3, 0, 13, 3 ], "texture": "#leaf_top", "cullface": "up" }, + "north": { "uv": [ 3, 13, 13, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "south": { "uv": [ 3, 13, 13, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "west": { "uv": [ 0, 13, 3, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "east": { "uv": [ 13, 13, 16, 14 ], "texture": "#leaf_top", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 13, 18, 3 ], + "to": [ 16, 19, 13 ], + "faces": { + "down": { "uv": [ 13, 3, 16, 13 ], "texture": "#leaf_bottom", "cullface": "up" }, + "up": { "uv": [ 13, 3, 16, 13 ], "texture": "#leaf_top", "cullface": "up" }, + "north": { "uv": [ 0, 13, 3, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "south": { "uv": [ 13, 13, 16, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "west": { "uv": [ 3, 13, 13, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "east": { "uv": [ 3, 13, 13, 14 ], "texture": "#leaf_top", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 18, 3 ], + "to": [ 3, 19, 13 ], + "faces": { + "down": { "uv": [ 0, 3, 3, 13 ], "texture": "#leaf_bottom", "cullface": "up" }, + "up": { "uv": [ 0, 3, 3, 13 ], "texture": "#leaf_top", "cullface": "up" }, + "north": { "uv": [ 13, 13, 16, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "south": { "uv": [ 0, 13, 3, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "west": { "uv": [ 3, 13, 13, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "east": { "uv": [ 3, 13, 13, 14 ], "texture": "#leaf_top", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 18, 1 ], + "to": [ 15, 19, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 15, 15 ], "texture": "#leaf_bottom", "cullface": "up" }, + "up": { "uv": [ 11, 1, 15, 5 ], "texture": "#leaf_top", "cullface": "up" }, + "north": { "uv": [ 1, 13, 5, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "south": { "uv": [ 11, 13, 15, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "west": { "uv": [ 1, 13, 5, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "east": { "uv": [ 11, 13, 15, 14 ], "texture": "#leaf_top", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 18, 11 ], + "to": [ 15, 19, 15 ], + "faces": { + "down": { "uv": [ 11, 1, 15, 5 ], "texture": "#leaf_bottom", "cullface": "up" }, + "up": { "uv": [ 11, 11, 15, 15 ], "texture": "#leaf_top", "cullface": "up" }, + "north": { "uv": [ 1, 13, 5, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "south": { "uv": [ 11, 13, 15, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "west": { "uv": [ 11, 13, 15, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "east": { "uv": [ 1, 13, 5, 14 ], "texture": "#leaf_top", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 18, 11 ], + "to": [ 5, 19, 15 ], + "faces": { + "down": { "uv": [ 1, 1, 5, 5 ], "texture": "#leaf_bottom", "cullface": "up" }, + "up": { "uv": [ 1, 11, 5, 15 ], "texture": "#leaf_top", "cullface": "up" }, + "north": { "uv": [ 11, 13, 15, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "south": { "uv": [ 1, 13, 5, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "west": { "uv": [ 11, 13, 15, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "east": { "uv": [ 1, 13, 5, 14 ], "texture": "#leaf_top", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 18, 1 ], + "to": [ 5, 19, 5 ], + "faces": { + "down": { "uv": [ 1, 11, 5, 15 ], "texture": "#leaf_bottom", "cullface": "up" }, + "up": { "uv": [ 1, 1, 5, 5 ], "texture": "#leaf_top", "cullface": "up" }, + "north": { "uv": [ 11, 13, 15, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "south": { "uv": [ 1, 13, 5, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "west": { "uv": [ 1, 13, 5, 14 ], "texture": "#leaf_top", "cullface": "up" }, + "east": { "uv": [ 11, 13, 15, 14 ], "texture": "#leaf_top", "cullface": "up" } + } + }, + { + "__comment": "Box21", + "from": [ 6.5, 11, 6.5 ], + "to": [ 9.5, 17, 9.5 ], + "faces": { + "north": { "uv": [ 13, 0, 16, 6 ], "texture": "#stem" }, + "south": { "uv": [ 13, 0, 16, 6 ], "texture": "#stem" }, + "west": { "uv": [ 13, 0, 16, 6 ], "texture": "#stem" }, + "east": { "uv": [ 13, 0, 16, 6 ], "texture": "#stem" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/soul_lily_medium_top.json b/src/main/resources/assets/betternether/models/block/soul_lily_medium_top.json new file mode 100644 index 0000000..f067a09 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_lily_medium_top.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "betternether:block/soul_lily_leaf_top_medium" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_lily_sapling.json b/src/main/resources/assets/betternether/models/block/soul_lily_sapling.json new file mode 100644 index 0000000..86f1b60 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_lily_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/soul_lily_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_lily_small.json b/src/main/resources/assets/betternether/models/block/soul_lily_small.json new file mode 100644 index 0000000..68d2825 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_lily_small.json @@ -0,0 +1,114 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/soul_lily_small", + "texture": "betternether:block/soul_lily_small" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 3, 7 ], + "to": [ 9, 8, 9 ], + "faces": { + "north": { "uv": [ 7, 4, 9, 9 ], "texture": "#texture" }, + "south": { "uv": [ 7, 4, 9, 9 ], "texture": "#texture" }, + "west": { "uv": [ 7, 4, 9, 9 ], "texture": "#texture" }, + "east": { "uv": [ 7, 4, 9, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 3, 6 ], + "to": [ 9, 5, 10 ], + "faces": { + "up": { "uv": [ 6, 10, 10, 12 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 7, 11, 9, 13 ], "texture": "#texture" }, + "south": { "uv": [ 7, 11, 9, 13 ], "texture": "#texture" }, + "west": { "uv": [ 6, 11, 10, 13 ], "texture": "#texture" }, + "east": { "uv": [ 6, 11, 10, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 3, 7 ], + "to": [ 10, 5, 9 ], + "faces": { + "up": { "uv": [ 6, 10, 10, 12 ], "texture": "#texture" }, + "north": { "uv": [ 6, 11, 10, 13 ], "texture": "#texture" }, + "south": { "uv": [ 6, 11, 10, 13 ], "texture": "#texture" }, + "west": { "uv": [ 7, 11, 9, 13 ], "texture": "#texture" }, + "east": { "uv": [ 7, 11, 9, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 8, 6 ], + "to": [ 9, 9, 10 ], + "faces": { + "down": { "uv": [ 0, 5, 4, 7 ], "texture": "#texture", "cullface": "up", "rotation": 90 }, + "north": { "uv": [ 1, 5, 3, 6 ], "texture": "#texture", "cullface": "up" }, + "south": { "uv": [ 1, 5, 3, 6 ], "texture": "#texture", "cullface": "up" }, + "west": { "uv": [ 0, 5, 4, 6 ], "texture": "#texture", "cullface": "up" }, + "east": { "uv": [ 0, 5, 4, 6 ], "texture": "#texture", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 8, 7 ], + "to": [ 10, 9, 9 ], + "faces": { + "down": { "uv": [ 1, 5, 2, 7 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 1, 5, 2, 6 ], "texture": "#texture", "cullface": "up" }, + "south": { "uv": [ 1, 5, 2, 6 ], "texture": "#texture", "cullface": "up" }, + "east": { "uv": [ 1, 5, 3, 6 ], "texture": "#texture", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 8, 7 ], + "to": [ 7, 9, 9 ], + "faces": { + "down": { "uv": [ 2, 5, 3, 7 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 2, 5, 3, 6 ], "texture": "#texture", "cullface": "up" }, + "south": { "uv": [ 1, 5, 2, 6 ], "texture": "#texture", "cullface": "up" }, + "west": { "uv": [ 1, 5, 3, 6 ], "texture": "#texture", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 9, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "down": { "uv": [ 0, 5, 4, 9 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 0, 0, 4, 7 ], "texture": "#texture", "cullface": "up" }, + "south": { "uv": [ 0, 0, 4, 7 ], "texture": "#texture", "cullface": "up" }, + "west": { "uv": [ 0, 0, 4, 7 ], "texture": "#texture", "cullface": "up" }, + "east": { "uv": [ 0, 0, 4, 7 ], "texture": "#texture", "cullface": "up" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 3, 10 ], + "faces": { + "up": { "uv": [ 6, 10, 10, 14 ], "texture": "#texture" }, + "north": { "uv": [ 6, 13, 10, 16 ], "texture": "#texture" }, + "south": { "uv": [ 6, 13, 10, 16 ], "texture": "#texture" }, + "west": { "uv": [ 6, 13, 10, 16 ], "texture": "#texture" }, + "east": { "uv": [ 6, 13, 10, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 16, 10 ], + "to": [ 6, 9, 6 ], + "faces": { + "up": { "uv": [ 0, 5, 4, 9 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 0, 7, 4, 0 ], "texture": "#texture", "cullface": "up" }, + "south": { "uv": [ 0, 7, 4, 0 ], "texture": "#texture", "cullface": "up" }, + "west": { "uv": [ 0, 7, 4, 0 ], "texture": "#texture", "cullface": "up" }, + "east": { "uv": [ 0, 7, 4, 0 ], "texture": "#texture", "cullface": "up" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/soul_lily_top_side.json b/src/main/resources/assets/betternether/models/block/soul_lily_top_side.json new file mode 100644 index 0000000..ad78a2e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_lily_top_side.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/soul_lily_big_top_side", + "texture": "betternether:block/soul_lily_big_top_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 4, 0 ], + "to": [ 16, 6, 8 ], + "faces": { + "down": { "uv": [ 0, 8, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 8 ], "texture": "#texture", "rotation": 180 }, + "north": { "uv": [ 0, 6, 16, 8 ], "texture": "#texture" }, + "south": { "uv": [ 0, 8, 16, 10 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 2, 8 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 0, 0, 2, 8 ], "texture": "#texture", "rotation": 270 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone.json b/src/main/resources/assets/betternether/models/block/soul_sandstone.json new file mode 100644 index 0000000..340c440 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/soul_sandstone", + "down": "betternether:block/soul_sandstone_bottom", + "up": "betternether:block/soul_sandstone_top", + "north": "betternether:block/soul_sandstone", + "east": "betternether:block/soul_sandstone", + "south": "betternether:block/soul_sandstone", + "west": "betternether:block/soul_sandstone" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_bottom.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_bottom.json new file mode 100644 index 0000000..05ef877 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_bottom.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/soul_sandstone_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_chiseled.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_chiseled.json new file mode 100644 index 0000000..c8cd041 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_chiseled.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/soul_sandstone_chiseled", + "down": "betternether:block/soul_sandstone_top", + "up": "betternether:block/soul_sandstone_top", + "north": "betternether:block/soul_sandstone_chiseled", + "east": "betternether:block/soul_sandstone_chiseled", + "south": "betternether:block/soul_sandstone_chiseled", + "west": "betternether:block/soul_sandstone_chiseled" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_cut.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_cut.json new file mode 100644 index 0000000..23c941b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_cut.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/soul_sandstone_cut", + "down": "betternether:block/soul_sandstone_top", + "up": "betternether:block/soul_sandstone_top", + "north": "betternether:block/soul_sandstone_cut", + "east": "betternether:block/soul_sandstone_cut", + "south": "betternether:block/soul_sandstone_cut", + "west": "betternether:block/soul_sandstone_cut" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_cut_inner_stairs.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_cut_inner_stairs.json new file mode 100644 index 0000000..75f0496 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_cut_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/soul_sandstone_top", + "top": "betternether:block/soul_sandstone_top", + "side": "betternether:block/soul_sandstone_cut_slabs" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_cut_outer_stairs.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_cut_outer_stairs.json new file mode 100644 index 0000000..4d255a2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_cut_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/soul_sandstone_top", + "top": "betternether:block/soul_sandstone_top", + "side": "betternether:block/soul_sandstone_cut_slabs" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_cut_slab.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_cut_slab.json new file mode 100644 index 0000000..62ee6c9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_cut_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/soul_sandstone_top", + "top": "betternether:block/soul_sandstone_top", + "side": "betternether:block/soul_sandstone_cut_slabs" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_cut_stairs.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_cut_stairs.json new file mode 100644 index 0000000..17eb51f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_cut_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/soul_sandstone_top", + "top": "betternether:block/soul_sandstone_top", + "side": "betternether:block/soul_sandstone_cut_slabs" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_inner_stairs.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_inner_stairs.json new file mode 100644 index 0000000..a31b879 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/soul_sandstone_bottom", + "top": "betternether:block/soul_sandstone_top", + "side": "betternether:block/soul_sandstone_slabs" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_outer_stairs.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_outer_stairs.json new file mode 100644 index 0000000..c248f67 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/soul_sandstone_bottom", + "top": "betternether:block/soul_sandstone_top", + "side": "betternether:block/soul_sandstone_slabs" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_post.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_post.json new file mode 100644 index 0000000..43760e0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_post.json @@ -0,0 +1,48 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/soul_sandstone_wall", + "texture": "betternether:block/soul_sandstone_wall", + "top": "betternether:block/soul_sandstone_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 2, 5 ], + "to": [ 11, 14, 11 ], + "faces": { + "north": { "uv": [ 5, 2, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 2, 11, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 2, 11, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 2, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 14, 4 ], + "to": [ 12, 16, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 4, 0, 12, 2 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 12, 2 ], "texture": "#texture" }, + "west": { "uv": [ 4, 0, 12, 2 ], "texture": "#texture" }, + "east": { "uv": [ 4, 0, 12, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 2, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#top", "cullface": "down" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 14, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 4, 14, 12, 16 ], "texture": "#texture" }, + "west": { "uv": [ 4, 14, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 4, 14, 12, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_slab.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_slab.json new file mode 100644 index 0000000..78274c8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/soul_sandstone_bottom", + "top": "betternether:block/soul_sandstone_top", + "side": "betternether:block/soul_sandstone_slabs" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_slab_top.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_slab_top.json new file mode 100644 index 0000000..dc8a19d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_slab_top.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/soul_sandstone_top", + "top": "betternether:block/soul_sandstone_bottom", + "side": "betternether:block/soul_sandstone_slabs" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth.json new file mode 100644 index 0000000..beefdc4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/soul_sandstone_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth_inner_stairs.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth_inner_stairs.json new file mode 100644 index 0000000..f653820 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/soul_sandstone_top", + "top": "betternether:block/soul_sandstone_top", + "side": "betternether:block/soul_sandstone_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth_outer_stairs.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth_outer_stairs.json new file mode 100644 index 0000000..8820fb4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/soul_sandstone_top", + "top": "betternether:block/soul_sandstone_top", + "side": "betternether:block/soul_sandstone_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth_slab.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth_slab.json new file mode 100644 index 0000000..a259608 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/soul_sandstone_top", + "top": "betternether:block/soul_sandstone_top", + "side": "betternether:block/soul_sandstone_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth_stairs.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth_stairs.json new file mode 100644 index 0000000..ad64257 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_smooth_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/soul_sandstone_top", + "top": "betternether:block/soul_sandstone_top", + "side": "betternether:block/soul_sandstone_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_stairs.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_stairs.json new file mode 100644 index 0000000..9110869 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/soul_sandstone_bottom", + "top": "betternether:block/soul_sandstone_top", + "side": "betternether:block/soul_sandstone_slabs" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_sandstone_wall_side.json b/src/main/resources/assets/betternether/models/block/soul_sandstone_wall_side.json new file mode 100644 index 0000000..43fbcee --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_sandstone_wall_side.json @@ -0,0 +1,45 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/soul_sandstone_wall", + "wall": "betternether:block/soul_sandstone_wall", + "top": "betternether:block/soul_sandstone_top" + }, + "elements": [ + { + "__comment": "Box2", + "from": [ 6, 0, 0 ], + "to": [ 10, 2, 8 ], + "faces": { + "down": { "uv": [ 6, 8, 10, 16 ], "texture": "#top", "cullface": "down" }, + "up": { "uv": [ 6, 0, 10, 8 ], "texture": "#top" }, + "north": { "uv": [ 6, 14, 10, 16 ], "texture": "#wall" }, + "west": { "uv": [ 0, 14, 8, 16 ], "texture": "#wall" }, + "east": { "uv": [ 8, 14, 16, 16 ], "texture": "#wall" } + } + }, + { + "__comment": "Box2", + "from": [ 6, 14, 0 ], + "to": [ 10, 16, 8 ], + "faces": { + "down": { "uv": [ 6, 8, 10, 16 ], "texture": "#top" }, + "up": { "uv": [ 6, 0, 10, 8 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 6, 0, 10, 2 ], "texture": "#wall" }, + "west": { "uv": [ 0, 0, 8, 2 ], "texture": "#wall" }, + "east": { "uv": [ 8, 0, 16, 2 ], "texture": "#wall" } + } + }, + { + "__comment": "Box2", + "from": [ 7, 2, 0 ], + "to": [ 9, 14, 8 ], + "faces": { + "north": { "uv": [ 7, 2, 9, 14 ], "texture": "#wall" }, + "west": { "uv": [ 0, 2, 8, 14 ], "texture": "#wall" }, + "east": { "uv": [ 8, 2, 16, 14 ], "texture": "#wall" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/soul_vein_1.json b/src/main/resources/assets/betternether/models/block/soul_vein_1.json new file mode 100644 index 0000000..abf5c04 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_vein_1.json @@ -0,0 +1,22 @@ +{ + "parent": "block/thin_block", + "ambientocclusion": false, + "textures": { + "texture": "betternether:block/soul_vein_1", + "particle": "betternether:block/soul_vein_1" + }, + "elements": [ + { + "from": [ 0, 0, 0 ], + "to": [ 16, 1, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 15, 16, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 15, 16, 16 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 15, 16, 16 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 15, 16, 16 ], "texture": "#texture", "cullface": "east" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/soul_vein_2.json b/src/main/resources/assets/betternether/models/block/soul_vein_2.json new file mode 100644 index 0000000..0f25597 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_vein_2.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/soul_vein_1", + "textures": { + "texture": "betternether:block/soul_vein_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_vein_3.json b/src/main/resources/assets/betternether/models/block/soul_vein_3.json new file mode 100644 index 0000000..4942abe --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_vein_3.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/soul_vein_1", + "textures": { + "texture": "betternether:block/soul_vein_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/soul_vein_4.json b/src/main/resources/assets/betternether/models/block/soul_vein_4.json new file mode 100644 index 0000000..caafb01 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/soul_vein_4.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/soul_vein_1", + "textures": { + "texture": "betternether:block/soul_vein_4" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalactite_0.json b/src/main/resources/assets/betternether/models/block/stalactite_0.json new file mode 100644 index 0000000..b2873c9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalactite_0.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/netherrack", + "texture": "block/netherrack" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 16, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalactite_1.json b/src/main/resources/assets/betternether/models/block/stalactite_1.json new file mode 100644 index 0000000..771ded3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalactite_1.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/netherrack", + "texture": "block/netherrack" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "south": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "west": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "east": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalactite_2.json b/src/main/resources/assets/betternether/models/block/stalactite_2.json new file mode 100644 index 0000000..8a30d6c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalactite_2.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/netherrack", + "texture": "block/netherrack" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalactite_3.json b/src/main/resources/assets/betternether/models/block/stalactite_3.json new file mode 100644 index 0000000..b4e51fd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalactite_3.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/netherrack", + "texture": "block/netherrack" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 16, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "west": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalactite_4.json b/src/main/resources/assets/betternether/models/block/stalactite_4.json new file mode 100644 index 0000000..1d9db49 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalactite_4.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/netherrack", + "texture": "block/netherrack" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 13, 16, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 3, 0, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 0, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 0, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 0, 13, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalactite_5.json b/src/main/resources/assets/betternether/models/block/stalactite_5.json new file mode 100644 index 0000000..863d2f7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalactite_5.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/netherrack", + "texture": "block/netherrack" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 0, 2 ], + "to": [ 14, 16, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 2, 0, 14, 16 ], "texture": "#texture" }, + "south": { "uv": [ 2, 0, 14, 16 ], "texture": "#texture" }, + "west": { "uv": [ 2, 0, 14, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 0, 14, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalactite_6.json b/src/main/resources/assets/betternether/models/block/stalactite_6.json new file mode 100644 index 0000000..c68ea36 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalactite_6.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/netherrack", + "texture": "block/netherrack" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 1, 0, 1 ], + "to": [ 15, 16, 15 ], + "faces": { + "down": { "uv": [ 1, 1, 15, 15 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 1, 1, 15, 15 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 1, 0, 15, 16 ], "texture": "#texture" }, + "south": { "uv": [ 1, 0, 15, 16 ], "texture": "#texture" }, + "west": { "uv": [ 1, 0, 15, 16 ], "texture": "#texture" }, + "east": { "uv": [ 1, 0, 15, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalactite_7.json b/src/main/resources/assets/betternether/models/block/stalactite_7.json new file mode 100644 index 0000000..b1ce130 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalactite_7.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/netherrack", + "texture": "block/netherrack" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "cullface": "east" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalagnate.json b/src/main/resources/assets/betternether/models/block/stalagnate.json new file mode 100644 index 0000000..1de9b89 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate.json @@ -0,0 +1,20 @@ +{ + "parent": "block/block", + "textures": + { + "particle": "#side" + }, + "elements": [ + { "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "texture": "#top" }, + "up": { "texture": "#top" }, + "north": { "texture": "#side" }, + "south": { "texture": "#side" }, + "west": { "texture": "#side" }, + "east": { "texture": "#side" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_bark.json b/src/main/resources/assets/betternether/models/block/stalagnate_bark.json new file mode 100644 index 0000000..3433ca5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_bark.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/stalagnate_bark_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_bottom.json b/src/main/resources/assets/betternether/models/block/stalagnate_bottom.json new file mode 100644 index 0000000..d3e025c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_bottom.json @@ -0,0 +1,73 @@ +{ + "parent": "block/block", + "textures": + { + "particle": "#side", + "side": "betternether:block/stalagnate_trunk_bottom", + "top": "betternether:block/stalagnate_top", + "roots": "betternether:block/stalagnate_roots" + }, + "elements": [ + { "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "texture": "#top" }, + "up": { "texture": "#top" }, + "north": { "texture": "#side" }, + "south": { "texture": "#side" }, + "west": { "texture": "#side" }, + "east": { "texture": "#side" } + } + }, + { "from": [ 0.8, 0, 8 ], + "to": [ 15.2, 16, 8 ], + "rotation": { "origin": [ 8, 8, 8 ], "axis": "y", "angle": 45, "rescale": true }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { "from": [ 8, 0, 0.8 ], + "to": [ 8, 16, 15.2 ], + "rotation": { "origin": [ 8, 8, 8 ], "axis": "y", "angle": 45, "rescale": true }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { "from": [ 4, -1, 0 ], + "to": [ 4, 15, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { "from": [ 12, -1, 0 ], + "to": [ 12, 15, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { "from": [ 0, -1, 4 ], + "to": [ 16, 15, 4 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { "from": [ 0, -1, 12 ], + "to": [ 16, 15, 12 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_bowl_apple.json b/src/main/resources/assets/betternether/models/block/stalagnate_bowl_apple.json new file mode 100644 index 0000000..163e067 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_bowl_apple.json @@ -0,0 +1,109 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/stalagnate_trunk_middle", + "side": "betternether:block/stalagnate_trunk_middle", + "top": "betternether:block/stalagnate_top", + "apple": "betternether:block/black_apple" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 3, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#top", "cullface": "down" }, + "north": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" }, + "south": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" }, + "west": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" }, + "east": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 5, 3, 5 ], + "to": [ 11, 3.001, 6 ], + "faces": { + "up": { "uv": [ 5, 5, 11, 6 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 5, 3, 10 ], + "to": [ 11, 3.001, 11 ], + "faces": { + "up": { "uv": [ 5, 10, 11, 11 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 5, 3, 6 ], + "to": [ 6, 3.001, 10 ], + "faces": { + "up": { "uv": [ 5, 6, 6, 10 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 10, 3, 6 ], + "to": [ 11, 3.001, 10 ], + "faces": { + "up": { "uv": [ 10, 6, 11, 10 ], "texture": "#top" } + } + }, + { + "__comment": "Box11", + "from": [ 6, 1, 6 ], + "to": [ 8, 5, 10 ], + "faces": { + "up": { "uv": [ 10, 6, 12, 10 ], "texture": "#apple" }, + "north": { "uv": [ 10, 6, 12, 10 ], "texture": "#apple" }, + "south": { "uv": [ 10, 6, 12, 10 ], "texture": "#apple" }, + "west": { "uv": [ 10, 6, 14, 10 ], "texture": "#apple" }, + "east": { "uv": [ 10, 6, 14, 10 ], "texture": "#apple" } + } + }, + { + "__comment": "Box11", + "from": [ 8, 1, 6 ], + "to": [ 10, 5, 8 ], + "faces": { + "up": { "uv": [ 12, 6, 14, 8 ], "texture": "#apple" }, + "north": { "uv": [ 12, 6, 14, 10 ], "texture": "#apple" }, + "south": { "uv": [ 12, 6, 14, 10 ], "texture": "#apple" }, + "east": { "uv": [ 12, 6, 14, 10 ], "texture": "#apple" } + } + }, + { + "__comment": "Box11", + "from": [ 8, 1, 8 ], + "to": [ 10, 3, 10 ], + "faces": { + "up": { "uv": [ 12, 8, 14, 10 ], "texture": "#apple" } + } + }, + { + "__comment": "Box14", + "from": [ 7, 5, 7 ], + "to": [ 9, 6, 8 ], + "faces": { + "up": { "uv": [ 11, 13, 13, 14 ], "texture": "#apple" }, + "north": { "uv": [ 11, 11, 13, 12 ], "texture": "#apple" }, + "south": { "uv": [ 11, 11, 13, 12 ], "texture": "#apple" }, + "west": { "uv": [ 11, 11, 12, 12 ], "texture": "#apple" }, + "east": { "uv": [ 12, 11, 13, 12 ], "texture": "#apple" } + } + }, + { + "__comment": "Box14", + "from": [ 7, 5, 8 ], + "to": [ 8, 6, 9 ], + "faces": { + "up": { "uv": [ 12, 11, 13, 12 ], "texture": "#apple" }, + "south": { "uv": [ 12, 11, 13, 12 ], "texture": "#apple" }, + "west": { "uv": [ 12, 11, 13, 12 ], "texture": "#apple" }, + "east": { "uv": [ 12, 11, 13, 12 ], "texture": "#apple" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_bowl_empty.json b/src/main/resources/assets/betternether/models/block/stalagnate_bowl_empty.json new file mode 100644 index 0000000..4a72390 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_bowl_empty.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/stalagnate_trunk_middle", + "side": "betternether:block/stalagnate_trunk_middle", + "top": "betternether:block/stalagnate_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 3, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#top", "cullface": "down" }, + "north": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" }, + "south": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" }, + "west": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" }, + "east": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 5, 3, 5 ], + "to": [ 11, 3.001, 6 ], + "faces": { + "up": { "uv": [ 5, 5, 11, 6 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 5, 3, 10 ], + "to": [ 11, 3.001, 11 ], + "faces": { + "up": { "uv": [ 5, 10, 11, 11 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 5, 3, 6 ], + "to": [ 6, 3.001, 10 ], + "faces": { + "up": { "uv": [ 5, 6, 6, 10 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 10, 3, 6 ], + "to": [ 11, 3.001, 10 ], + "faces": { + "up": { "uv": [ 10, 6, 11, 10 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 10, 1, 6 ], + "to": [ 10.001, 3, 10 ], + "faces": { + "west": { "uv": [ 6, 13, 10, 15 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 6, 1, 6 ], + "to": [ 6.001, 3, 10 ], + "faces": { + "east": { "uv": [ 6, 13, 10, 15 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ8", + "from": [ 6, 1, 6 ], + "to": [ 10, 3, 6.001 ], + "faces": { + "south": { "uv": [ 6, 13, 10, 15 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ8", + "from": [ 6, 1, 10 ], + "to": [ 10, 3, 10.001 ], + "faces": { + "north": { "uv": [ 6, 13, 10, 15 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneY10", + "from": [ 6, 1, 6 ], + "to": [ 10, 1.001, 10 ], + "faces": { + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#top" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_bowl_mushroom.json b/src/main/resources/assets/betternether/models/block/stalagnate_bowl_mushroom.json new file mode 100644 index 0000000..cbe1741 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_bowl_mushroom.json @@ -0,0 +1,95 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/stalagnate_trunk_middle", + "side": "betternether:block/stalagnate_trunk_middle", + "top": "betternether:block/stalagnate_top", + "texture": "betternether:block/soup" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 3, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#top", "cullface": "down" }, + "north": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" }, + "south": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" }, + "west": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" }, + "east": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 5, 3, 5 ], + "to": [ 11, 3.001, 6 ], + "faces": { + "up": { "uv": [ 5, 5, 11, 6 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 5, 3, 10 ], + "to": [ 11, 3.001, 11 ], + "faces": { + "up": { "uv": [ 5, 10, 11, 11 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 5, 3, 6 ], + "to": [ 6, 3.001, 10 ], + "faces": { + "up": { "uv": [ 5, 6, 6, 10 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 10, 3, 6 ], + "to": [ 11, 3.001, 10 ], + "faces": { + "up": { "uv": [ 10, 6, 11, 10 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 10, 1, 6 ], + "to": [ 10.001, 3, 10 ], + "faces": { + "west": { "uv": [ 6, 13, 10, 15 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneX6", + "from": [ 6, 1, 6 ], + "to": [ 6.001, 3, 10 ], + "faces": { + "east": { "uv": [ 6, 13, 10, 15 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ8", + "from": [ 6, 1, 6 ], + "to": [ 10, 3, 6.001 ], + "faces": { + "south": { "uv": [ 6, 13, 10, 15 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneZ8", + "from": [ 6, 1, 10 ], + "to": [ 10, 3, 10.001 ], + "faces": { + "north": { "uv": [ 6, 13, 10, 15 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneY10", + "from": [ 6, 2.5, 6 ], + "to": [ 10, 2.501, 10 ], + "faces": { + "up": { "uv": [ 1, 1, 5, 5 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_bowl_wart.json b/src/main/resources/assets/betternether/models/block/stalagnate_bowl_wart.json new file mode 100644 index 0000000..295b5c2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_bowl_wart.json @@ -0,0 +1,73 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/stalagnate_trunk_middle", + "side": "betternether:block/stalagnate_trunk_middle", + "top": "betternether:block/stalagnate_top", + "wart": "item/nether_wart", + "wart_block": "block/nether_wart_block" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 3, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#top", "cullface": "down" }, + "north": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" }, + "south": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" }, + "west": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" }, + "east": { "uv": [ 5, 13, 11, 16 ], "texture": "#side" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 5, 3, 5 ], + "to": [ 11, 3.001, 6 ], + "faces": { + "up": { "uv": [ 5, 5, 11, 6 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 5, 3, 10 ], + "to": [ 11, 3.001, 11 ], + "faces": { + "up": { "uv": [ 5, 10, 11, 11 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 5, 3, 6 ], + "to": [ 6, 3.001, 10 ], + "faces": { + "up": { "uv": [ 5, 6, 6, 10 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY2", + "from": [ 10, 3, 6 ], + "to": [ 11, 3.001, 10 ], + "faces": { + "up": { "uv": [ 10, 6, 11, 10 ], "texture": "#top" } + } + }, + { + "__comment": "PlaneY10", + "from": [ 6, 3, 6 ], + "to": [ 10, 3.001, 10 ], + "faces": { + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#wart_block" } + } + }, + { + "__comment": "PlaneY13", + "from": [ 5, 3.125, 5 ], + "to": [ 11, 3.126, 11 ], + "faces": { + "down": { "uv": [ 4, 4, 10, 10 ], "texture": "#wart" }, + "up": { "uv": [ 4, 4, 10, 10 ], "texture": "#wart" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_button.json b/src/main/resources/assets/betternether/models/block/stalagnate_button.json new file mode 100644 index 0000000..7e28ec3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_button.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button", + "textures": { + "texture": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_button_inventory.json b/src/main/resources/assets/betternether/models/block/stalagnate_button_inventory.json new file mode 100644 index 0000000..cab0018 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_button_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_inventory", + "textures": { + "texture": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_button_pressed.json b/src/main/resources/assets/betternether/models/block/stalagnate_button_pressed.json new file mode 100644 index 0000000..20dcb4d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_button_pressed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_pressed", + "textures": { + "texture": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_fence_gate_closed.json b/src/main/resources/assets/betternether/models/block/stalagnate_fence_gate_closed.json new file mode 100644 index 0000000..18b514c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_fence_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate", + "textures": { + "texture": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_fence_gate_open.json b/src/main/resources/assets/betternether/models/block/stalagnate_fence_gate_open.json new file mode 100644 index 0000000..472f6f8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_fence_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_open", + "textures": { + "texture": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_fence_inventory.json b/src/main/resources/assets/betternether/models/block/stalagnate_fence_inventory.json new file mode 100644 index 0000000..8451517 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_fence_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_inventory", + "textures": { + "texture": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_fence_post.json b/src/main/resources/assets/betternether/models/block/stalagnate_fence_post.json new file mode 100644 index 0000000..9f132a5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_fence_post.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_post", + "textures": { + "texture": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_fence_side.json b/src/main/resources/assets/betternether/models/block/stalagnate_fence_side.json new file mode 100644 index 0000000..998b88a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_fence_side.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_side", + "textures": { + "texture": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_half_slab.json b/src/main/resources/assets/betternether/models/block/stalagnate_half_slab.json new file mode 100644 index 0000000..899233e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/stalagnate_planks", + "top": "betternether:block/stalagnate_planks", + "side": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_inner_stairs.json b/src/main/resources/assets/betternether/models/block/stalagnate_inner_stairs.json new file mode 100644 index 0000000..12e16fd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/stalagnate_planks", + "top": "betternether:block/stalagnate_planks", + "side": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_ladder.json b/src/main/resources/assets/betternether/models/block/stalagnate_ladder.json new file mode 100644 index 0000000..d196f00 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_ladder.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/reeds_ladder", + "textures": { + "particle": "betternether:block/stalagnate_ladder", + "texture": "betternether:block/stalagnate_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_log.json b/src/main/resources/assets/betternether/models/block/stalagnate_log.json new file mode 100644 index 0000000..9dadb8a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_log.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/stalagnate_bark_side", + "down": "betternether:block/stalagnate_bark_top", + "up": "betternether:block/stalagnate_bark_top", + "north": "betternether:block/stalagnate_bark_side", + "east": "betternether:block/stalagnate_bark_side", + "south": "betternether:block/stalagnate_bark_side", + "west": "betternether:block/stalagnate_bark_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle.json new file mode 100644 index 0000000..5e14286 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle.json @@ -0,0 +1,52 @@ +{ + "parent": "block/block", + "textures": + { + "particle": "#side" + }, + "elements": [ + { "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "texture": "#top" }, + "up": { "texture": "#top" }, + "north": { "texture": "#side" }, + "south": { "texture": "#side" }, + "west": { "texture": "#side" }, + "east": { "texture": "#side" } + } + }, + { "from": [ 4, -1, 0 ], + "to": [ 4, 15, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" } + } + }, + { "from": [ 12, -1, 0 ], + "to": [ 12, 15, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" } + } + }, + { "from": [ 0, -1, 4 ], + "to": [ 16, 15, 4 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" } + } + }, + { "from": [ 0, -1, 12 ], + "to": [ 16, 15, 12 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle_1.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle_1.json new file mode 100644 index 0000000..0814654 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle_1.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/stalagnate", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle", + "top": "betternether:block/stalagnate_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle_10.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle_10.json new file mode 100644 index 0000000..5cafcf7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle_10.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/stalagnate_middle_small", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle", + "top": "betternether:block/stalagnate_top", + "leaves": "betternether:block/stalagnate_trunk_leaves_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle_11.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle_11.json new file mode 100644 index 0000000..83fc96b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle_11.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/stalagnate_middle", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle_2", + "top": "betternether:block/stalagnate_top", + "leaves": "betternether:block/stalagnate_trunk_leaves_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle_12.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle_12.json new file mode 100644 index 0000000..7d07bb1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle_12.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/stalagnate_middle_small", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle_2", + "top": "betternether:block/stalagnate_top", + "leaves": "betternether:block/stalagnate_trunk_leaves_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle_2.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle_2.json new file mode 100644 index 0000000..6ad383f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle_2.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/stalagnate_small", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle", + "top": "betternether:block/stalagnate_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle_3.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle_3.json new file mode 100644 index 0000000..5e9fa48 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle_3.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/stalagnate", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle_2", + "top": "betternether:block/stalagnate_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle_4.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle_4.json new file mode 100644 index 0000000..0e1a748 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle_4.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/stalagnate_small", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle_2", + "top": "betternether:block/stalagnate_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle_5.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle_5.json new file mode 100644 index 0000000..e67ba1b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle_5.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/stalagnate_middle", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle", + "top": "betternether:block/stalagnate_top", + "leaves": "betternether:block/stalagnate_trunk_leaves" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle_6.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle_6.json new file mode 100644 index 0000000..4c202f4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle_6.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/stalagnate_middle_small", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle", + "top": "betternether:block/stalagnate_top", + "leaves": "betternether:block/stalagnate_trunk_leaves" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle_7.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle_7.json new file mode 100644 index 0000000..7f802a5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle_7.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/stalagnate_middle", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle_2", + "top": "betternether:block/stalagnate_top", + "leaves": "betternether:block/stalagnate_trunk_leaves" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle_8.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle_8.json new file mode 100644 index 0000000..bab9962 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle_8.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/stalagnate_middle_small", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle_2", + "top": "betternether:block/stalagnate_top", + "leaves": "betternether:block/stalagnate_trunk_leaves" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle_9.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle_9.json new file mode 100644 index 0000000..457c689 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle_9.json @@ -0,0 +1,9 @@ +{ + "parent": "betternether:block/stalagnate_middle", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle", + "top": "betternether:block/stalagnate_top", + "leaves": "betternether:block/stalagnate_trunk_leaves_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_middle_small.json b/src/main/resources/assets/betternether/models/block/stalagnate_middle_small.json new file mode 100644 index 0000000..ddb6720 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_middle_small.json @@ -0,0 +1,52 @@ +{ + "parent": "block/block", + "textures": + { + "particle": "#side" + }, + "elements": [ + { "from": [ 6, 0, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "down": { "texture": "#top" }, + "up": { "texture": "#top" }, + "north": { "texture": "#side" }, + "south": { "texture": "#side" }, + "west": { "texture": "#side" }, + "east": { "texture": "#side" } + } + }, + { "from": [ 4, -1, 0 ], + "to": [ 4, 15, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" } + } + }, + { "from": [ 12, -1, 0 ], + "to": [ 12, 15, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" } + } + }, + { "from": [ 0, -1, 4 ], + "to": [ 16, 15, 4 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" } + } + }, + { "from": [ 0, -1, 12 ], + "to": [ 16, 15, 12 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_outer_stairs.json b/src/main/resources/assets/betternether/models/block/stalagnate_outer_stairs.json new file mode 100644 index 0000000..0af20c5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/stalagnate_planks", + "top": "betternether:block/stalagnate_planks", + "side": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_planks.json b/src/main/resources/assets/betternether/models/block/stalagnate_planks.json new file mode 100644 index 0000000..b7ee82b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_planks.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_planks_door_bottom.json b/src/main/resources/assets/betternether/models/block/stalagnate_planks_door_bottom.json new file mode 100644 index 0000000..5c7b557 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_planks_door_bottom.json @@ -0,0 +1,65 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/stalagnate_planks_door_bottom", + "texture": "betternether:block/stalagnate_planks_door_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 3, 3, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture" }, + "north": { "uv": [ 13, 13, 16, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 13, 3, 16 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 15, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 0, 3, 1 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 1 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 1 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 16, 0, 0, 1 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 3, 0 ], + "to": [ 3, 15, 3 ], + "faces": { + "north": { "uv": [ 13, 1, 16, 13 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 1, 3, 13 ], "texture": "#texture" }, + "west": { "uv": [ 0, 1, 3, 13 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 13, 1, 16, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 3, 13 ], + "to": [ 3, 15, 16 ], + "faces": { + "north": { "uv": [ 13, 1, 16, 13 ], "texture": "#texture" }, + "south": { "uv": [ 0, 1, 3, 13 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 13, 1, 16, 13 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 1, 3, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 3, 3 ], + "to": [ 2, 15, 13 ], + "faces": { + "west": { "uv": [ 3, 1, 13, 13 ], "texture": "#texture" }, + "east": { "uv": [ 3, 1, 13, 13 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_planks_door_bottom_hinge.json b/src/main/resources/assets/betternether/models/block/stalagnate_planks_door_bottom_hinge.json new file mode 100644 index 0000000..6042f4c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_planks_door_bottom_hinge.json @@ -0,0 +1,65 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/stalagnate_planks_door_bottom", + "texture": "betternether:block/stalagnate_planks_door_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 3, 3, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture" }, + "north": { "uv": [ 13, 13, 16, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 13, 3, 16 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 15, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 0, 3, 1 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 1 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 16, 0, 0, 1 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 1 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 3, 0 ], + "to": [ 3, 15, 3 ], + "faces": { + "north": { "uv": [ 13, 1, 16, 13 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 1, 3, 13 ], "texture": "#texture" }, + "west": { "uv": [ 0, 1, 3, 13 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 13, 1, 16, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 3, 13 ], + "to": [ 3, 15, 16 ], + "faces": { + "north": { "uv": [ 13, 1, 16, 13 ], "texture": "#texture" }, + "south": { "uv": [ 0, 1, 3, 13 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 13, 1, 16, 13 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 1, 3, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 3, 3 ], + "to": [ 2, 15, 13 ], + "faces": { + "west": { "uv": [ 13, 1, 3, 13 ], "texture": "#texture" }, + "east": { "uv": [ 13, 1, 3, 13 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_planks_door_top.json b/src/main/resources/assets/betternether/models/block/stalagnate_planks_door_top.json new file mode 100644 index 0000000..4859484 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_planks_door_top.json @@ -0,0 +1,65 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/stalagnate_planks_door_top", + "texture": "betternether:block/stalagnate_planks_door_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 3, 2, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 14, 3, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 14, 3, 16 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 14, 16, 16 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 16, 14, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 13, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 13, 0, 16, 3 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 3 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 3 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 3 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 2, 0 ], + "to": [ 3, 13, 3 ], + "faces": { + "north": { "uv": [ 13, 3, 16, 14 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 3, 3, 14 ], "texture": "#texture" }, + "west": { "uv": [ 0, 3, 3, 14 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 13, 3, 16, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 2, 13 ], + "to": [ 3, 13, 16 ], + "faces": { + "north": { "uv": [ 13, 3, 16, 14 ], "texture": "#texture" }, + "south": { "uv": [ 0, 3, 3, 14 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 13, 3, 16, 14 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 3, 3, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 2, 3 ], + "to": [ 2, 13, 13 ], + "faces": { + "west": { "uv": [ 3, 3, 13, 14 ], "texture": "#texture" }, + "east": { "uv": [ 3, 3, 13, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_planks_door_top_hinge.json b/src/main/resources/assets/betternether/models/block/stalagnate_planks_door_top_hinge.json new file mode 100644 index 0000000..4cd1478 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_planks_door_top_hinge.json @@ -0,0 +1,65 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/stalagnate_planks_door_top", + "texture": "betternether:block/stalagnate_planks_door_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 3, 2, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 14, 3, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 14, 3, 16 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 16, 14, 0, 16 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 14, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 13, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 13, 0, 16, 3 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 3 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 3 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 3 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 2, 0 ], + "to": [ 3, 13, 3 ], + "faces": { + "north": { "uv": [ 13, 3, 16, 14 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 3, 3, 14 ], "texture": "#texture" }, + "west": { "uv": [ 0, 3, 3, 14 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 13, 3, 16, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 2, 13 ], + "to": [ 3, 13, 16 ], + "faces": { + "north": { "uv": [ 13, 3, 16, 14 ], "texture": "#texture" }, + "south": { "uv": [ 0, 3, 3, 14 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 13, 3, 16, 14 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 3, 3, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 2, 3 ], + "to": [ 2, 13, 13 ], + "faces": { + "west": { "uv": [ 13, 3, 3, 14 ], "texture": "#texture" }, + "east": { "uv": [ 13, 3, 3, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_planks_trapdoor.json b/src/main/resources/assets/betternether/models/block/stalagnate_planks_trapdoor.json new file mode 100644 index 0000000..568db0a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_planks_trapdoor.json @@ -0,0 +1,67 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/stalagnate_planks_trapdoor", + "texture": "betternether:block/stalagnate_planks_trapdoor" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 3, 3, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture" }, + "north": { "uv": [ 13, 13, 16, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 13, 3, 16 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 13, 0, 0 ], + "to": [ 16, 3, 16 ], + "faces": { + "down": { "uv": [ 13, 0, 16, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 13, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 13, 3, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 13, 13, 16, 16 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 0 ], + "to": [ 13, 3, 3 ], + "faces": { + "down": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 3, 0, 13, 3 ], "texture": "#texture" }, + "north": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 13 ], + "to": [ 13, 3, 16 ], + "faces": { + "down": { "uv": [ 3, 0, 13, 3 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture" }, + "north": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture", "cullface": "south" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 1, 3 ], + "to": [ 13, 2, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_pressure_plate_down.json b/src/main/resources/assets/betternether/models/block/stalagnate_pressure_plate_down.json new file mode 100644 index 0000000..e1ad4a0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_down", + "textures": { + "texture": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_pressure_plate_up.json b/src/main/resources/assets/betternether/models/block/stalagnate_pressure_plate_up.json new file mode 100644 index 0000000..8a56421 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_pressure_plate_up.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_up", + "textures": { + "texture": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_roots.json b/src/main/resources/assets/betternether/models/block/stalagnate_roots.json new file mode 100644 index 0000000..96ddbfd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_roots.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/stalagnate_roots" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_roots_2.json b/src/main/resources/assets/betternether/models/block/stalagnate_roots_2.json new file mode 100644 index 0000000..34e6ce9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_roots_2.json @@ -0,0 +1,6 @@ +{ + "parent": "block/wheat_stage7", + "textures": { + "crop": "betternether:block/stalagnate_roots" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_seed.json b/src/main/resources/assets/betternether/models/block/stalagnate_seed.json new file mode 100644 index 0000000..65da135 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_seed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/stalagnate_seed" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_small.json b/src/main/resources/assets/betternether/models/block/stalagnate_small.json new file mode 100644 index 0000000..a01cced --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_small.json @@ -0,0 +1,20 @@ +{ + "parent": "block/block", + "textures": + { + "particle": "#side" + }, + "elements": [ + { "from": [ 6, 0, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "down": { "texture": "#top", "cullface": "down" }, + "up": { "texture": "#top", "cullface": "up" }, + "north": { "texture": "#side" }, + "south": { "texture": "#side" }, + "west": { "texture": "#side" }, + "east": { "texture": "#side" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_stairs.json b/src/main/resources/assets/betternether/models/block/stalagnate_stairs.json new file mode 100644 index 0000000..c8b28be --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/stalagnate_planks", + "top": "betternether:block/stalagnate_planks", + "side": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_stem_1.json b/src/main/resources/assets/betternether/models/block/stalagnate_stem_1.json new file mode 100644 index 0000000..0814654 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_stem_1.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/stalagnate", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle", + "top": "betternether:block/stalagnate_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_stem_2.json b/src/main/resources/assets/betternether/models/block/stalagnate_stem_2.json new file mode 100644 index 0000000..6ad383f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_stem_2.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/stalagnate_small", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle", + "top": "betternether:block/stalagnate_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_stem_3.json b/src/main/resources/assets/betternether/models/block/stalagnate_stem_3.json new file mode 100644 index 0000000..d005cad --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_stem_3.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalagnate_stem_1", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_stem_4.json b/src/main/resources/assets/betternether/models/block/stalagnate_stem_4.json new file mode 100644 index 0000000..27b9392 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_stem_4.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/stalagnate_stem_2", + "textures": + { + "side": "betternether:block/stalagnate_trunk_middle_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_top.json b/src/main/resources/assets/betternether/models/block/stalagnate_top.json new file mode 100644 index 0000000..4c9d8a6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_top.json @@ -0,0 +1,73 @@ +{ + "parent": "block/block", + "textures": + { + "particle": "#side", + "side": "betternether:block/stalagnate_trunk_top", + "top": "betternether:block/stalagnate_top", + "roots": "betternether:block/stalagnate_roots" + }, + "elements": [ + { "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "texture": "#top" }, + "up": { "texture": "#top" }, + "north": { "texture": "#side" }, + "south": { "texture": "#side" }, + "west": { "texture": "#side" }, + "east": { "texture": "#side" } + } + }, + { "from": [ 0.8, 0, 8 ], + "to": [ 15.2, 16, 8 ], + "rotation": { "origin": [ 8, 8, 8 ], "axis": "y", "angle": 45, "rescale": true }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#roots" }, + "south": { "uv": [ 0, 16, 16, 0 ], "texture": "#roots" } + } + }, + { "from": [ 8, 0, 0.8 ], + "to": [ 8, 16, 15.2 ], + "rotation": { "origin": [ 8, 8, 8 ], "axis": "y", "angle": 45, "rescale": true }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 16, 16, 0 ], "texture": "#roots" }, + "east": { "uv": [ 0, 16, 16, 0 ], "texture": "#roots" } + } + }, + { "from": [ 4, -1, 0 ], + "to": [ 4, 15, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 0, 16, 16, 0 ], "texture": "#roots" }, + "east": { "uv": [ 0, 16, 16, 0 ], "texture": "#roots" } + } + }, + { "from": [ 12, -1, 0 ], + "to": [ 12, 15, 16 ], + "shade": false, + "faces": { + "west": { "uv": [ 0, 16, 16, 0 ], "texture": "#roots" }, + "east": { "uv": [ 0, 16, 16, 0 ], "texture": "#roots" } + } + }, + { "from": [ 0, -1, 4 ], + "to": [ 16, 15, 4 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#roots" }, + "south": { "uv": [ 0, 16, 16, 0 ], "texture": "#roots" } + } + }, + { "from": [ 0, -1, 12 ], + "to": [ 16, 15, 12 ], + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#roots" }, + "south": { "uv": [ 0, 16, 16, 0 ], "texture": "#roots" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_wall_gate_closed.json b/src/main/resources/assets/betternether/models/block/stalagnate_wall_gate_closed.json new file mode 100644 index 0000000..2c1252f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_wall_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall", + "textures": { + "texture": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/stalagnate_wall_gate_open.json b/src/main/resources/assets/betternether/models/block/stalagnate_wall_gate_open.json new file mode 100644 index 0000000..087b856 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/stalagnate_wall_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall_open", + "textures": { + "texture": "betternether:block/stalagnate_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/striped_bark_anchor_tree_1.json b/src/main/resources/assets/betternether/models/block/striped_bark_anchor_tree_1.json new file mode 100644 index 0000000..63d221b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_bark_anchor_tree_1.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/striped_log_anchor_tree_side_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/striped_bark_anchor_tree_2.json b/src/main/resources/assets/betternether/models/block/striped_bark_anchor_tree_2.json new file mode 100644 index 0000000..e34d30b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_bark_anchor_tree_2.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/striped_log_anchor_tree_side_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/striped_bark_anchor_tree_3.json b/src/main/resources/assets/betternether/models/block/striped_bark_anchor_tree_3.json new file mode 100644 index 0000000..e944d2c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_bark_anchor_tree_3.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/striped_log_anchor_tree_side_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/striped_bark_nether_sakura.json b/src/main/resources/assets/betternether/models/block/striped_bark_nether_sakura.json new file mode 100644 index 0000000..f15d0d6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_bark_nether_sakura.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/striped_log_nether_sakura_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/striped_bark_rubeus.json b/src/main/resources/assets/betternether/models/block/striped_bark_rubeus.json new file mode 100644 index 0000000..e430589 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_bark_rubeus.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/striped_rubeus_log_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/striped_bark_stalagnate.json b/src/main/resources/assets/betternether/models/block/striped_bark_stalagnate.json new file mode 100644 index 0000000..29e6a7b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_bark_stalagnate.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/striped_log_stalagnate_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/striped_bark_wart.json b/src/main/resources/assets/betternether/models/block/striped_bark_wart.json new file mode 100644 index 0000000..0ef207c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_bark_wart.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/striped_log_wart_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/striped_bark_willow.json b/src/main/resources/assets/betternether/models/block/striped_bark_willow.json new file mode 100644 index 0000000..fa023cc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_bark_willow.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/striped_log_willow_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/striped_log_anchor_tree_1.json b/src/main/resources/assets/betternether/models/block/striped_log_anchor_tree_1.json new file mode 100644 index 0000000..2a78b1f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_log_anchor_tree_1.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/striped_log_anchor_tree_side_1", + "down": "betternether:block/striped_log_anchor_tree_top", + "up": "betternether:block/striped_log_anchor_tree_top", + "north": "betternether:block/striped_log_anchor_tree_side_1", + "east": "betternether:block/striped_log_anchor_tree_side_1", + "south": "betternether:block/striped_log_anchor_tree_side_1", + "west": "betternether:block/striped_log_anchor_tree_side_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/striped_log_anchor_tree_2.json b/src/main/resources/assets/betternether/models/block/striped_log_anchor_tree_2.json new file mode 100644 index 0000000..82ea73b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_log_anchor_tree_2.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/striped_log_anchor_tree_side_2", + "down": "betternether:block/striped_log_anchor_tree_top", + "up": "betternether:block/striped_log_anchor_tree_top", + "north": "betternether:block/striped_log_anchor_tree_side_2", + "east": "betternether:block/striped_log_anchor_tree_side_2", + "south": "betternether:block/striped_log_anchor_tree_side_2", + "west": "betternether:block/striped_log_anchor_tree_side_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/striped_log_anchor_tree_3.json b/src/main/resources/assets/betternether/models/block/striped_log_anchor_tree_3.json new file mode 100644 index 0000000..93874f5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_log_anchor_tree_3.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/striped_log_anchor_tree_side_3", + "down": "betternether:block/striped_log_anchor_tree_top", + "up": "betternether:block/striped_log_anchor_tree_top", + "north": "betternether:block/striped_log_anchor_tree_side_3", + "east": "betternether:block/striped_log_anchor_tree_side_3", + "south": "betternether:block/striped_log_anchor_tree_side_3", + "west": "betternether:block/striped_log_anchor_tree_side_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/striped_log_mushroom_fir.json b/src/main/resources/assets/betternether/models/block/striped_log_mushroom_fir.json new file mode 100644 index 0000000..439b756 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_log_mushroom_fir.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/striped_log_mushroom_fir_side", + "down": "betternether:block/striped_log_mushroom_fir_top", + "up": "betternether:block/striped_log_mushroom_fir_top", + "north": "betternether:block/striped_log_mushroom_fir_side", + "east": "betternether:block/striped_log_mushroom_fir_side", + "south": "betternether:block/striped_log_mushroom_fir_side", + "west": "betternether:block/striped_log_mushroom_fir_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/striped_log_nether_sakura.json b/src/main/resources/assets/betternether/models/block/striped_log_nether_sakura.json new file mode 100644 index 0000000..c53fa27 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_log_nether_sakura.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/striped_log_nether_sakura_side", + "down": "betternether:block/striped_log_nether_sakura_top", + "up": "betternether:block/striped_log_nether_sakura_top", + "north": "betternether:block/striped_log_nether_sakura_side", + "east": "betternether:block/striped_log_nether_sakura_side", + "south": "betternether:block/striped_log_nether_sakura_side", + "west": "betternether:block/striped_log_nether_sakura_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/striped_log_rubeus.json b/src/main/resources/assets/betternether/models/block/striped_log_rubeus.json new file mode 100644 index 0000000..3d71015 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_log_rubeus.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/striped_rubeus_log_side", + "down": "betternether:block/striped_rubeus_log_top", + "up": "betternether:block/striped_rubeus_log_top", + "north": "betternether:block/striped_rubeus_log_side", + "east": "betternether:block/striped_rubeus_log_side", + "south": "betternether:block/striped_rubeus_log_side", + "west": "betternether:block/striped_rubeus_log_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/striped_log_stalagnate.json b/src/main/resources/assets/betternether/models/block/striped_log_stalagnate.json new file mode 100644 index 0000000..f919a50 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_log_stalagnate.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/striped_log_stalagnate_side", + "down": "betternether:block/striped_log_stalagnate_top", + "up": "betternether:block/striped_log_stalagnate_top", + "north": "betternether:block/striped_log_stalagnate_side", + "east": "betternether:block/striped_log_stalagnate_side", + "south": "betternether:block/striped_log_stalagnate_side", + "west": "betternether:block/striped_log_stalagnate_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/striped_log_wart.json b/src/main/resources/assets/betternether/models/block/striped_log_wart.json new file mode 100644 index 0000000..3d01a37 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_log_wart.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/striped_log_wart_side", + "down": "betternether:block/striped_log_wart_top", + "up": "betternether:block/striped_log_wart_top", + "north": "betternether:block/striped_log_wart_side", + "east": "betternether:block/striped_log_wart_side", + "south": "betternether:block/striped_log_wart_side", + "west": "betternether:block/striped_log_wart_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/striped_log_willow.json b/src/main/resources/assets/betternether/models/block/striped_log_willow.json new file mode 100644 index 0000000..74bfd84 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_log_willow.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/striped_log_willow_side", + "down": "betternether:block/striped_log_willow_top", + "up": "betternether:block/striped_log_willow_top", + "north": "betternether:block/striped_log_willow_side", + "east": "betternether:block/striped_log_willow_side", + "south": "betternether:block/striped_log_willow_side", + "west": "betternether:block/striped_log_willow_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/striped_wood_mushroom_fir.json b/src/main/resources/assets/betternether/models/block/striped_wood_mushroom_fir.json new file mode 100644 index 0000000..2a2d412 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/striped_wood_mushroom_fir.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/striped_log_mushroom_fir_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/swamp_grass_1.json b/src/main/resources/assets/betternether/models/block/swamp_grass_1.json new file mode 100644 index 0000000..849c049 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/swamp_grass_1.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/swamp_grass_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/swamp_grass_2.json b/src/main/resources/assets/betternether/models/block/swamp_grass_2.json new file mode 100644 index 0000000..cdf42c5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/swamp_grass_2.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/swamp_grass_1" + } +} diff --git a/src/main/resources/assets/betternether/models/block/swamp_grass_3.json b/src/main/resources/assets/betternether/models/block/swamp_grass_3.json new file mode 100644 index 0000000..69cd895 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/swamp_grass_3.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/swamp_grass_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/swamp_grass_4.json b/src/main/resources/assets/betternether/models/block/swamp_grass_4.json new file mode 100644 index 0000000..fc21c83 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/swamp_grass_4.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/swamp_grass_2" + } +} diff --git a/src/main/resources/assets/betternether/models/block/swamp_grass_5.json b/src/main/resources/assets/betternether/models/block/swamp_grass_5.json new file mode 100644 index 0000000..f0b3fc8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/swamp_grass_5.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/swamp_grass_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/swamp_grass_6.json b/src/main/resources/assets/betternether/models/block/swamp_grass_6.json new file mode 100644 index 0000000..891a6ef --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/swamp_grass_6.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/crop_block", + "textures": { + "texture": "betternether:block/swamp_grass_3" + } +} diff --git a/src/main/resources/assets/betternether/models/block/swampland_grass.json b/src/main/resources/assets/betternether/models/block/swampland_grass.json new file mode 100644 index 0000000..2523967 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/swampland_grass.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/swampland_grass_side", + "down": "block/netherrack", + "up": "betternether:block/swampland_grass", + "north": "betternether:block/swampland_grass_side", + "east": "betternether:block/swampland_grass_side", + "south": "betternether:block/swampland_grass_side", + "west": "betternether:block/swampland_grass_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_acacia.json b/src/main/resources/assets/betternether/models/block/taburet_acacia.json new file mode 100644 index 0000000..2ba7e60 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_acacia.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/acacia_planks", + "texture": "block/acacia_planks", + "top": "block/acacia_planks" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 11, 5, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 13, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 11, 3, 13, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 5, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_anchor_tree.json b/src/main/resources/assets/betternether/models/block/taburet_anchor_tree.json new file mode 100644 index 0000000..95a7c04 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_anchor_tree.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/taburet_oak", + "textures": { + "particle": "betternether:block/anchor_tree_planks", + "texture": "betternether:block/anchor_tree_planks", + "top": "betternether:block/anchor_tree_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/taburet_birch.json b/src/main/resources/assets/betternether/models/block/taburet_birch.json new file mode 100644 index 0000000..63e90aa --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_birch.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/birch_planks", + "texture": "block/birch_planks", + "top": "block/birch_planks" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 11, 5, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 13, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 11, 3, 13, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 5, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_cincinnasite.json b/src/main/resources/assets/betternether/models/block/taburet_cincinnasite.json new file mode 100644 index 0000000..e7b0cf6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_cincinnasite.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/cincinnasite_forged", + "texture": "betternether:block/taburet_cincinnasite_side", + "top": "betternether:block/cincinnasite_pedestal_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 14, 5, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 5, 7, 11, 8 ], "texture": "#texture" }, + "up": { "uv": [ 5, 7, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 7, 11, 8 ], "texture": "#texture" }, + "south": { "uv": [ 5, 7, 11, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 7, 11, 8 ], "texture": "#texture" }, + "up": { "uv": [ 5, 7, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 7, 11, 8 ], "texture": "#texture" }, + "south": { "uv": [ 5, 7, 11, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 14, 5, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 14, 5, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 14, 5, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_crimson.json b/src/main/resources/assets/betternether/models/block/taburet_crimson.json new file mode 100644 index 0000000..cfed471 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_crimson.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/crimson_planks", + "texture": "block/crimson_planks", + "top": "block/crimson_planks" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 11, 5, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 13, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 11, 3, 13, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 5, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_dark_oak.json b/src/main/resources/assets/betternether/models/block/taburet_dark_oak.json new file mode 100644 index 0000000..01e89b7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_dark_oak.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/dark_oak_planks", + "texture": "block/dark_oak_planks", + "top": "block/dark_oak_planks" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 11, 5, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 13, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 11, 3, 13, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 5, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_jungle.json b/src/main/resources/assets/betternether/models/block/taburet_jungle.json new file mode 100644 index 0000000..b89394e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_jungle.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/jungle_planks", + "texture": "block/jungle_planks", + "top": "block/jungle_planks" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 11, 5, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 13, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 11, 3, 13, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 5, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_mushroom.json b/src/main/resources/assets/betternether/models/block/taburet_mushroom.json new file mode 100644 index 0000000..2b77258 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_mushroom.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/mushroom_planks", + "texture": "betternether:block/mushroom_planks", + "top": "betternether:block/mushroom_planks" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 11, 5, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 13, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 11, 3, 13, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 5, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_mushroom_fir.json b/src/main/resources/assets/betternether/models/block/taburet_mushroom_fir.json new file mode 100644 index 0000000..52cc278 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_mushroom_fir.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/mushroom_fir_planks", + "texture": "betternether:block/mushroom_fir_planks", + "top": "betternether:block/mushroom_fir_trapdoor" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 8, 8, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 5, 11, 11, 12 ], "texture": "#texture" }, + "up": { "uv": [ 5, 4, 11, 5 ], "texture": "#texture" }, + "north": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 11, 5 ], "texture": "#texture" }, + "up": { "uv": [ 5, 9, 11, 10 ], "texture": "#texture" }, + "north": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 12, 8, 14 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 8, 8, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 12, 8, 14 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_nether_sakura.json b/src/main/resources/assets/betternether/models/block/taburet_nether_sakura.json new file mode 100644 index 0000000..14b4ed4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_nether_sakura.json @@ -0,0 +1,8 @@ +{ + "parent": "betternether:block/taburet_oak", + "textures": { + "particle": "betternether:block/nether_sakura_planks", + "texture": "betternether:block/nether_sakura_planks", + "top": "betternether:block/nether_sakura_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/taburet_oak.json b/src/main/resources/assets/betternether/models/block/taburet_oak.json new file mode 100644 index 0000000..78ba394 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_oak.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/oak_planks", + "texture": "block/oak_planks", + "top": "block/oak_planks" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 11, 5, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 13, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 11, 3, 13, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 5, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_reeds.json b/src/main/resources/assets/betternether/models/block/taburet_reeds.json new file mode 100644 index 0000000..92cecdd --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_reeds.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/reeds_block_side", + "texture": "betternether:block/reeds_block_side", + "top": "betternether:block/reeds_trapdoor" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 11, 5, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 13, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 11, 3, 13, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 5, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_rubeus.json b/src/main/resources/assets/betternether/models/block/taburet_rubeus.json new file mode 100644 index 0000000..b1b813c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_rubeus.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/rubeus_planks", + "texture": "betternether:block/rubeus_planks", + "top": "betternether:block/rubeus_planks" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 8, 8, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 5, 11, 11, 12 ], "texture": "#texture" }, + "up": { "uv": [ 5, 4, 11, 5 ], "texture": "#texture" }, + "north": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 11, 5 ], "texture": "#texture" }, + "up": { "uv": [ 5, 9, 11, 10 ], "texture": "#texture" }, + "north": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 12, 8, 14 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 8, 8, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 12, 8, 14 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_spruce.json b/src/main/resources/assets/betternether/models/block/taburet_spruce.json new file mode 100644 index 0000000..99bea54 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_spruce.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/spruce_planks", + "texture": "block/spruce_planks", + "top": "block/spruce_planks" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 11, 5, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 13, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 11, 3, 13, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 5, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_stalagnate.json b/src/main/resources/assets/betternether/models/block/taburet_stalagnate.json new file mode 100644 index 0000000..baaa919 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_stalagnate.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/stalagnate_planks", + "texture": "betternether:block/stalagnate_planks", + "top": "betternether:block/stalagnate_planks_trapdoor" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 8, 8, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 5, 11, 11, 12 ], "texture": "#texture" }, + "up": { "uv": [ 5, 4, 11, 5 ], "texture": "#texture" }, + "north": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 11, 5 ], "texture": "#texture" }, + "up": { "uv": [ 5, 9, 11, 10 ], "texture": "#texture" }, + "north": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 12, 8, 14 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 8, 8, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 12, 8, 14 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_warped.json b/src/main/resources/assets/betternether/models/block/taburet_warped.json new file mode 100644 index 0000000..b9af409 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_warped.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "block/warped_planks", + "texture": "block/warped_planks", + "top": "block/warped_planks" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 11, 5, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 11, 11, 13, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 11, 3, 13, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 5, 5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 8, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 2, 4, 3, 10 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "north": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 5, 4, 6, 10 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_wart.json b/src/main/resources/assets/betternether/models/block/taburet_wart.json new file mode 100644 index 0000000..162c6a2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_wart.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/wart_planks", + "texture": "betternether:block/wart_planks", + "top": "betternether:block/wart_trapdoor" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 8, 8, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 5, 11, 11, 12 ], "texture": "#texture" }, + "up": { "uv": [ 5, 4, 11, 5 ], "texture": "#texture" }, + "north": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 11, 5 ], "texture": "#texture" }, + "up": { "uv": [ 5, 9, 11, 10 ], "texture": "#texture" }, + "north": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 12, 8, 14 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 8, 8, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 12, 8, 14 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/taburet_willow.json b/src/main/resources/assets/betternether/models/block/taburet_willow.json new file mode 100644 index 0000000..caaad01 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/taburet_willow.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/willow_planks", + "texture": "betternether:block/willow_planks", + "top": "betternether:block/willow_trapdoor" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 8, 2 ], + "to": [ 14, 10, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#top" }, + "north": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "south": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "west": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 6, 14, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 3 ], + "to": [ 5, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 8, 8, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 4 ], + "to": [ 11, 3, 5 ], + "faces": { + "down": { "uv": [ 5, 11, 11, 12 ], "texture": "#texture" }, + "up": { "uv": [ 5, 4, 11, 5 ], "texture": "#texture" }, + "north": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 5, 2, 11 ], + "to": [ 11, 3, 12 ], + "faces": { + "down": { "uv": [ 5, 4, 11, 5 ], "texture": "#texture" }, + "up": { "uv": [ 5, 9, 11, 10 ], "texture": "#texture" }, + "north": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 3 ], + "to": [ 13, 8, 5 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 12, 8, 14 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 11 ], + "to": [ 5, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 8, 8, 10 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 8, 13 ], + "faces": { + "down": { "uv": [ 3, 9, 5, 11 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 12, 8, 14 ], "texture": "#texture", "rotation": 90 }, + "south": { "uv": [ 8, 4, 16, 6 ], "texture": "#texture", "rotation": 90 }, + "west": { "uv": [ 8, 8, 16, 10 ], "texture": "#texture", "rotation": 90 }, + "east": { "uv": [ 0, 4, 8, 6 ], "texture": "#texture", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/veined_sand.json b/src/main/resources/assets/betternether/models/block/veined_sand.json new file mode 100644 index 0000000..26ac2d9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/veined_sand.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/veined_sand_side", + "down": "block/soul_sand", + "up": "betternether:block/veined_sand_top", + "north": "betternether:block/veined_sand_side", + "east": "betternether:block/veined_sand_side", + "south": "betternether:block/veined_sand_side", + "west": "betternether:block/veined_sand_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/wall_moss_1.json b/src/main/resources/assets/betternether/models/block/wall_moss_1.json new file mode 100644 index 0000000..2296d1a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wall_moss_1.json @@ -0,0 +1,89 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/ngrass_1", + "texture": "betternether:block/ngrass_1" + }, + "elements": [ + { + "__comment": "PlaneY1", + "from": [ 3, 15, 0 ], + "to": [ 19, 15.001, 16 ], + "rotation": { "origin": [ 3, 15, 0 ], "axis": "x", "angle": 45 }, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 1, 11, 0 ], + "to": [ 17, 11.001, 16 ], + "rotation": { "origin": [ 1, 11, 0 ], "axis": "x", "angle": 45 }, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 1, -10, 0 ], + "to": [ 17, 6, 0.001 ], + "rotation": { "origin": [ 1, 6, 0 ], "axis": "x", "angle": -45 }, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ -3, 13.5, 0 ], + "to": [ 13, 13.501, 16 ], + "rotation": { "origin": [ -3, 13.5, 0 ], "axis": "x", "angle": 45 }, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 1, 1, 0 ], + "to": [ 17, 1.001, 16 ], + "rotation": { "origin": [ 1, 1, 0 ], "axis": "x", "angle": 22.5 }, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ -1, -9, 0 ], + "to": [ 15, 7, 0.001 ], + "rotation": { "origin": [ -1, 7, 0 ], "axis": "x", "angle": -45 }, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ -1.5, 16, 0 ], + "to": [ 14.5, 16.001, 16 ], + "rotation": { "origin": [ -1.5, 16, 0 ], "axis": "x", "angle": 45 }, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ -2, 0.5, 0 ], + "to": [ 14, 0.501, 16 ], + "rotation": { "origin": [ -2, 0.5, 0 ], "axis": "x", "angle": 22.5 }, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/wall_moss_2.json b/src/main/resources/assets/betternether/models/block/wall_moss_2.json new file mode 100644 index 0000000..333da86 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wall_moss_2.json @@ -0,0 +1,59 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/ngrass_1", + "texture": "betternether:block/ngrass_1" + }, + "elements": [ + { + "__comment": "PlaneY1", + "from": [ 3, 15, 0 ], + "to": [ 19, 15.001, 16 ], + "rotation": { "origin": [ 3, 15, 0 ], "axis": "x", "angle": 45 }, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, -15, 0 ], + "to": [ 16, 1, 0.001 ], + "rotation": { "origin": [ 0, 1, 0 ], "axis": "x", "angle": -22.5 }, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ -2, -12, 0 ], + "to": [ 14, 4, 0.001 ], + "rotation": { "origin": [ -2, 4, 0 ], "axis": "x", "angle": -45 }, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, -9, 0 ], + "to": [ 16, 7, 0.001 ], + "rotation": { "origin": [ 0, 7, 0 ], "axis": "x", "angle": -45 }, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, -3, 0 ], + "to": [ 16, 13, 0.001 ], + "rotation": { "origin": [ 0, 13, 0 ], "axis": "x", "angle": -22.5 }, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/wall_moss_3.json b/src/main/resources/assets/betternether/models/block/wall_moss_3.json new file mode 100644 index 0000000..53a03fb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wall_moss_3.json @@ -0,0 +1,59 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/ngrass_1", + "texture": "betternether:block/ngrass_1" + }, + "elements": [ + { + "__comment": "PlaneY1", + "from": [ -1, 0, 0 ], + "to": [ 15, 16, 0.001 ], + "rotation": { "origin": [ -1, 16, 0 ], "axis": "x", "angle": -22.5 }, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 2, -3, 0 ], + "to": [ 18, 13, 0.001 ], + "rotation": { "origin": [ 2, 13, 0 ], "axis": "x", "angle": -22.5 }, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, -8, 0 ], + "to": [ 16, 8, 0.001 ], + "rotation": { "origin": [ 0, 8, 0 ], "axis": "x", "angle": -22.5 }, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ -3, -12, 0 ], + "to": [ 13, 4, 0.001 ], + "rotation": { "origin": [ -3, 4, 0 ], "axis": "x", "angle": -22.5 }, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 3, -15, 0 ], + "to": [ 19, 1, 0.001 ], + "rotation": { "origin": [ 3, 1, 0 ], "axis": "x", "angle": -22.5 }, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/wall_mushrooms_brown_1.json b/src/main/resources/assets/betternether/models/block/wall_mushrooms_brown_1.json new file mode 100644 index 0000000..703d474 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wall_mushrooms_brown_1.json @@ -0,0 +1,94 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "block/brown_mushroom_block", + "texture": "block/brown_mushroom_block", + "inside": "block/mushroom_block_inside" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 1, 4, 0 ], + "to": [ 8, 6, 5 ], + "faces": { + "down": { "uv": [ 1, 11, 8, 16 ], "texture": "#inside" }, + "up": { "uv": [ 1, 0, 8, 5 ], "texture": "#texture" }, + "south": { "uv": [ 1, 10, 8, 12 ], "texture": "#texture" }, + "west": { "uv": [ 0, 10, 5, 12 ], "texture": "#texture" }, + "east": { "uv": [ 11, 10, 16, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 10, 0 ], + "to": [ 14, 11, 3 ], + "faces": { + "down": { "uv": [ 10, 13, 14, 16 ], "texture": "#inside" }, + "up": { "uv": [ 10, 0, 14, 3 ], "texture": "#texture" }, + "south": { "uv": [ 10, 5, 14, 6 ], "texture": "#texture" }, + "west": { "uv": [ 0, 5, 3, 6 ], "texture": "#texture" }, + "east": { "uv": [ 13, 5, 16, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 15, 0 ], + "to": [ 11, 16, 3 ], + "faces": { + "down": { "uv": [ 7, 13, 11, 16 ], "texture": "#inside" }, + "up": { "uv": [ 7, 0, 11, 3 ], "texture": "#texture", "cullface": "up" }, + "south": { "uv": [ 7, 0, 11, 1 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 3, 1 ], "texture": "#texture" }, + "east": { "uv": [ 13, 0, 16, 1 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 2, 0 ], + "to": [ 15, 3, 3 ], + "faces": { + "down": { "uv": [ 11, 13, 15, 16 ], "texture": "#inside" }, + "up": { "uv": [ 11, 0, 15, 3 ], "texture": "#texture" }, + "south": { "uv": [ 11, 13, 15, 14 ], "texture": "#texture" }, + "west": { "uv": [ 0, 13, 3, 14 ], "texture": "#texture" }, + "east": { "uv": [ 13, 13, 16, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 7, 0 ], + "to": [ 15, 9, 6 ], + "faces": { + "down": { "uv": [ 6, 10, 15, 16 ], "texture": "#inside" }, + "up": { "uv": [ 6, 0, 15, 6 ], "texture": "#texture" }, + "south": { "uv": [ 6, 7, 15, 9 ], "texture": "#texture" }, + "west": { "uv": [ 0, 7, 6, 9 ], "texture": "#texture" }, + "east": { "uv": [ 10, 7, 16, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 12, 0 ], + "to": [ 9, 14, 5 ], + "faces": { + "down": { "uv": [ 2, 11, 9, 16 ], "texture": "#inside" }, + "up": { "uv": [ 2, 0, 9, 5 ], "texture": "#texture" }, + "south": { "uv": [ 2, 2, 9, 4 ], "texture": "#texture" }, + "west": { "uv": [ 0, 2, 5, 4 ], "texture": "#texture" }, + "east": { "uv": [ 11, 2, 16, 4 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 1, 0 ], + "to": [ 8, 2, 4 ], + "faces": { + "down": { "uv": [ 3, 12, 8, 16 ], "texture": "#inside" }, + "up": { "uv": [ 3, 0, 8, 4 ], "texture": "#texture" }, + "south": { "uv": [ 3, 14, 8, 15 ], "texture": "#texture" }, + "west": { "uv": [ 0, 14, 4, 15 ], "texture": "#texture" }, + "east": { "uv": [ 12, 14, 16, 15 ], "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/wall_mushrooms_brown_2.json b/src/main/resources/assets/betternether/models/block/wall_mushrooms_brown_2.json new file mode 100644 index 0000000..d6213a1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wall_mushrooms_brown_2.json @@ -0,0 +1,70 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "block/brown_mushroom_block", + "texture": "block/brown_mushroom_block", + "inside": "block/mushroom_block_inside" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 10, 14, 0 ], + "to": [ 14, 15, 3 ], + "faces": { + "down": { "uv": [ 10, 13, 14, 16 ], "texture": "#inside" }, + "up": { "uv": [ 10, 0, 14, 3 ], "texture": "#texture" }, + "south": { "uv": [ 10, 1, 14, 2 ], "texture": "#texture" }, + "west": { "uv": [ 0, 1, 3, 2 ], "texture": "#texture" }, + "east": { "uv": [ 13, 1, 16, 2 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 2, 0 ], + "to": [ 11, 3, 3 ], + "faces": { + "down": { "uv": [ 7, 13, 11, 16 ], "texture": "#inside" }, + "up": { "uv": [ 7, 0, 11, 3 ], "texture": "#texture" }, + "south": { "uv": [ 7, 13, 11, 14 ], "texture": "#texture" }, + "west": { "uv": [ 0, 13, 3, 14 ], "texture": "#texture" }, + "east": { "uv": [ 13, 13, 16, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 10, 0 ], + "to": [ 10, 12, 6 ], + "faces": { + "down": { "uv": [ 1, 10, 10, 16 ], "texture": "#inside" }, + "up": { "uv": [ 1, 0, 10, 6 ], "texture": "#texture" }, + "south": { "uv": [ 1, 4, 10, 6 ], "texture": "#texture" }, + "west": { "uv": [ 0, 4, 6, 6 ], "texture": "#texture" }, + "east": { "uv": [ 10, 4, 16, 6 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 6, 0 ], + "to": [ 14, 8, 5 ], + "faces": { + "down": { "uv": [ 7, 11, 14, 16 ], "texture": "#inside" }, + "up": { "uv": [ 7, 0, 14, 5 ], "texture": "#texture" }, + "south": { "uv": [ 7, 8, 14, 10 ], "texture": "#texture" }, + "west": { "uv": [ 0, 8, 5, 10 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 16, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 4, 0 ], + "to": [ 6, 5, 4 ], + "faces": { + "down": { "uv": [ 1, 12, 6, 16 ], "texture": "#inside" }, + "up": { "uv": [ 1, 0, 6, 4 ], "texture": "#texture" }, + "south": { "uv": [ 1, 11, 6, 12 ], "texture": "#texture" }, + "west": { "uv": [ 0, 11, 4, 12 ], "texture": "#texture" }, + "east": { "uv": [ 12, 11, 16, 12 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/wall_mushrooms_brown_3.json b/src/main/resources/assets/betternether/models/block/wall_mushrooms_brown_3.json new file mode 100644 index 0000000..7b42b46 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wall_mushrooms_brown_3.json @@ -0,0 +1,82 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "block/brown_mushroom_block", + "texture": "block/brown_mushroom_block", + "inside": "block/mushroom_block_inside" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 11, 13, 0 ], + "to": [ 15, 14, 3 ], + "faces": { + "down": { "uv": [ 11, 13, 15, 16 ], "texture": "#inside" }, + "up": { "uv": [ 11, 0, 15, 3 ], "texture": "#texture" }, + "south": { "uv": [ 11, 2, 15, 3 ], "texture": "#texture" }, + "west": { "uv": [ 0, 2, 3, 3 ], "texture": "#texture" }, + "east": { "uv": [ 13, 2, 16, 3 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 1, 0 ], + "to": [ 10, 2, 3 ], + "faces": { + "down": { "uv": [ 6, 13, 10, 16 ], "texture": "#inside" }, + "up": { "uv": [ 6, 0, 10, 3 ], "texture": "#texture" }, + "south": { "uv": [ 6, 14, 10, 15 ], "texture": "#texture" }, + "west": { "uv": [ 0, 14, 3, 15 ], "texture": "#texture" }, + "east": { "uv": [ 13, 14, 16, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 8, 5, 0 ], + "to": [ 15, 7, 5 ], + "faces": { + "down": { "uv": [ 8, 11, 15, 16 ], "texture": "#inside" }, + "up": { "uv": [ 8, 0, 15, 5 ], "texture": "#texture" }, + "south": { "uv": [ 8, 9, 15, 11 ], "texture": "#texture" }, + "west": { "uv": [ 0, 9, 5, 11 ], "texture": "#texture" }, + "east": { "uv": [ 11, 9, 16, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 9, 0 ], + "to": [ 10, 10, 4 ], + "faces": { + "down": { "uv": [ 5, 12, 10, 16 ], "texture": "#inside" }, + "up": { "uv": [ 5, 0, 10, 4 ], "texture": "#texture" }, + "south": { "uv": [ 5, 6, 10, 7 ], "texture": "#texture" }, + "west": { "uv": [ 0, 6, 4, 7 ], "texture": "#texture" }, + "east": { "uv": [ 12, 6, 16, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 12, 0 ], + "to": [ 8, 14, 5 ], + "faces": { + "down": { "uv": [ 1, 11, 8, 16 ], "texture": "#inside" }, + "up": { "uv": [ 1, 0, 8, 5 ], "texture": "#texture" }, + "south": { "uv": [ 1, 2, 8, 4 ], "texture": "#texture" }, + "west": { "uv": [ 0, 2, 5, 4 ], "texture": "#texture" }, + "east": { "uv": [ 11, 2, 16, 4 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 4, 0 ], + "to": [ 5, 5, 3 ], + "faces": { + "down": { "uv": [ 1, 13, 5, 16 ], "texture": "#inside" }, + "up": { "uv": [ 1, 0, 5, 3 ], "texture": "#texture" }, + "south": { "uv": [ 1, 11, 5, 12 ], "texture": "#texture" }, + "west": { "uv": [ 0, 11, 3, 12 ], "texture": "#texture" }, + "east": { "uv": [ 13, 11, 16, 12 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/wall_mushrooms_red_1.json b/src/main/resources/assets/betternether/models/block/wall_mushrooms_red_1.json new file mode 100644 index 0000000..f800158 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wall_mushrooms_red_1.json @@ -0,0 +1,157 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "blocks/mushroom_red_new", + "texture": "blocks/mushroom_red_new", + "inside": "block/mushroom_block_inside" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 5, 0 ], + "to": [ 3, 7, 2 ], + "faces": { + "down": { "uv": [ 6, 4, 7, 6 ], "texture": "#texture" }, + "up": { "uv": [ 4, 5, 5, 7 ], "texture": "#texture" }, + "south": { "uv": [ 4, 7, 5, 9 ], "texture": "#texture" }, + "west": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture" }, + "east": { "uv": [ 7, 7, 9, 9 ], "texture": "#inside" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 7, 0 ], + "to": [ 5, 8, 2 ], + "faces": { + "down": { "uv": [ 7, 4, 9, 6 ], "texture": "#inside" }, + "up": { "uv": [ 7, 6, 9, 8 ], "texture": "#texture" }, + "south": { "uv": [ 7, 7, 9, 8 ], "texture": "#texture" }, + "west": { "uv": [ 7, 7, 9, 8 ], "texture": "#texture" }, + "east": { "uv": [ 7, 8, 9, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 8, 10, 0 ], + "to": [ 9, 13, 3 ], + "faces": { + "down": { "uv": [ 8, 5, 9, 8 ], "texture": "#texture" }, + "up": { "uv": [ 4, 3, 5, 6 ], "texture": "#texture" }, + "south": { "uv": [ 8, 3, 9, 6 ], "texture": "#texture" }, + "west": { "uv": [ 5, 3, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 13, 3, 16, 6 ], "texture": "#inside" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 13, 0 ], + "to": [ 12, 14, 3 ], + "faces": { + "down": { "uv": [ 9, 13, 12, 16 ], "texture": "#inside" }, + "up": { "uv": [ 6, 3, 9, 6 ], "texture": "#texture" }, + "south": { "uv": [ 9, 2, 12, 3 ], "texture": "#texture" }, + "west": { "uv": [ 7, 2, 10, 3 ], "texture": "#texture" }, + "east": { "uv": [ 8, 3, 11, 4 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 10, 3 ], + "to": [ 12, 13, 4 ], + "faces": { + "down": { "uv": [ 7, 8, 10, 9 ], "texture": "#texture" }, + "up": { "uv": [ 9, 3, 12, 4 ], "texture": "#texture" }, + "north": { "uv": [ 3, 3, 6, 6 ], "texture": "#inside" }, + "south": { "uv": [ 8, 5, 11, 8 ], "texture": "#texture" }, + "west": { "uv": [ 5, 3, 6, 6 ], "texture": "#texture" }, + "east": { "uv": [ 11, 5, 12, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 5, 2 ], + "to": [ 5, 7, 3 ], + "faces": { + "down": { "uv": [ 8, 6, 10, 7 ], "texture": "#texture" }, + "up": { "uv": [ 8, 6, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 7, 7, 9, 9 ], "texture": "#inside" }, + "south": { "uv": [ 8, 7, 10, 9 ], "texture": "#texture" }, + "west": { "uv": [ 4, 7, 5, 9 ], "texture": "#texture" }, + "east": { "uv": [ 10, 7, 11, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 5, 0 ], + "to": [ 6, 7, 2 ], + "faces": { + "down": { "uv": [ 9, 4, 10, 6 ], "texture": "#texture" }, + "up": { "uv": [ 9, 4, 10, 6 ], "texture": "#texture" }, + "south": { "uv": [ 6, 6, 7, 8 ], "texture": "#texture" }, + "west": { "uv": [ 7, 6, 9, 8 ], "texture": "#inside" }, + "east": { "uv": [ 7, 6, 9, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 10, 0 ], + "to": [ 13, 13, 3 ], + "faces": { + "down": { "uv": [ 10, 6, 11, 9 ], "texture": "#texture" }, + "up": { "uv": [ 11, 2, 12, 5 ], "texture": "#texture" }, + "south": { "uv": [ 11, 2, 12, 5 ], "texture": "#texture" }, + "west": { "uv": [ 5, 3, 8, 6 ], "texture": "#inside" }, + "east": { "uv": [ 9, 6, 12, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 2, 2 ], + "to": [ 12, 4, 3 ], + "faces": { + "down": { "uv": [ 7, 8, 9, 9 ], "texture": "#texture" }, + "up": { "uv": [ 7, 7, 9, 8 ], "texture": "#texture" }, + "north": { "uv": [ 7, 7, 9, 9 ], "texture": "#inside" }, + "south": { "uv": [ 9, 7, 11, 9 ], "texture": "#texture" }, + "west": { "uv": [ 4, 7, 5, 9 ], "texture": "#texture" }, + "east": { "uv": [ 10, 7, 11, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 2, 0 ], + "to": [ 10, 4, 2 ], + "faces": { + "down": { "uv": [ 6, 4, 7, 6 ], "texture": "#texture" }, + "up": { "uv": [ 5, 4, 6, 6 ], "texture": "#texture" }, + "south": { "uv": [ 5, 6, 6, 8 ], "texture": "#texture" }, + "west": { "uv": [ 5, 7, 7, 9 ], "texture": "#texture" }, + "east": { "uv": [ 7, 7, 9, 9 ], "texture": "#inside" } + } + }, + { + "__comment": "Box1", + "from": [ 10, 4, 0 ], + "to": [ 12, 5, 2 ], + "faces": { + "down": { "uv": [ 7, 4, 9, 6 ], "texture": "#inside" }, + "up": { "uv": [ 7, 5, 9, 7 ], "texture": "#texture" }, + "south": { "uv": [ 7, 6, 9, 7 ], "texture": "#texture" }, + "west": { "uv": [ 7, 7, 9, 8 ], "texture": "#texture" }, + "east": { "uv": [ 7, 8, 9, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 2, 0 ], + "to": [ 13, 4, 2 ], + "faces": { + "down": { "uv": [ 9, 4, 10, 6 ], "texture": "#texture" }, + "up": { "uv": [ 9, 3, 10, 5 ], "texture": "#texture" }, + "south": { "uv": [ 6, 6, 7, 8 ], "texture": "#texture" }, + "west": { "uv": [ 7, 6, 9, 8 ], "texture": "#inside" }, + "east": { "uv": [ 6, 6, 8, 8 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/wall_mushrooms_red_2.json b/src/main/resources/assets/betternether/models/block/wall_mushrooms_red_2.json new file mode 100644 index 0000000..816e090 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wall_mushrooms_red_2.json @@ -0,0 +1,255 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "blocks/mushroom_red_new", + "texture": "blocks/mushroom_red_new", + "inside": "block/mushroom_block_inside" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 2, 2, 0 ], + "to": [ 3, 4, 2 ], + "faces": { + "down": { "uv": [ 6, 4, 7, 6 ], "texture": "#texture" }, + "up": { "uv": [ 4, 5, 5, 7 ], "texture": "#texture" }, + "south": { "uv": [ 4, 7, 5, 9 ], "texture": "#texture" }, + "west": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture" }, + "east": { "uv": [ 7, 7, 9, 9 ], "texture": "#inside" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 4, 0 ], + "to": [ 5, 5, 2 ], + "faces": { + "down": { "uv": [ 7, 4, 9, 6 ], "texture": "#inside" }, + "up": { "uv": [ 7, 6, 9, 8 ], "texture": "#texture" }, + "south": { "uv": [ 7, 7, 9, 8 ], "texture": "#texture" }, + "west": { "uv": [ 7, 7, 9, 8 ], "texture": "#texture" }, + "east": { "uv": [ 7, 8, 9, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 8, 0 ], + "to": [ 6, 11, 3 ], + "faces": { + "down": { "uv": [ 8, 5, 9, 8 ], "texture": "#texture" }, + "up": { "uv": [ 4, 3, 5, 6 ], "texture": "#texture" }, + "south": { "uv": [ 8, 3, 9, 6 ], "texture": "#texture" }, + "west": { "uv": [ 5, 3, 8, 6 ], "texture": "#texture" }, + "east": { "uv": [ 13, 3, 16, 6 ], "texture": "#inside" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 11, 0 ], + "to": [ 9, 12, 3 ], + "faces": { + "down": { "uv": [ 9, 13, 12, 16 ], "texture": "#inside" }, + "up": { "uv": [ 6, 3, 9, 6 ], "texture": "#texture" }, + "south": { "uv": [ 9, 2, 12, 3 ], "texture": "#texture" }, + "west": { "uv": [ 7, 2, 10, 3 ], "texture": "#texture" }, + "east": { "uv": [ 8, 3, 11, 4 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 8, 3 ], + "to": [ 9, 11, 4 ], + "faces": { + "down": { "uv": [ 7, 8, 10, 9 ], "texture": "#texture" }, + "up": { "uv": [ 9, 3, 12, 4 ], "texture": "#texture" }, + "north": { "uv": [ 3, 3, 6, 6 ], "texture": "#inside" }, + "south": { "uv": [ 8, 5, 11, 8 ], "texture": "#texture" }, + "west": { "uv": [ 5, 3, 6, 6 ], "texture": "#texture" }, + "east": { "uv": [ 11, 5, 12, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 2, 2 ], + "to": [ 5, 4, 3 ], + "faces": { + "down": { "uv": [ 8, 6, 10, 7 ], "texture": "#texture" }, + "up": { "uv": [ 8, 6, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 7, 7, 9, 9 ], "texture": "#inside" }, + "south": { "uv": [ 8, 7, 10, 9 ], "texture": "#texture" }, + "west": { "uv": [ 4, 7, 5, 9 ], "texture": "#texture" }, + "east": { "uv": [ 10, 7, 11, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 2, 0 ], + "to": [ 6, 4, 2 ], + "faces": { + "down": { "uv": [ 9, 4, 10, 6 ], "texture": "#texture" }, + "up": { "uv": [ 9, 4, 10, 6 ], "texture": "#texture" }, + "south": { "uv": [ 6, 6, 7, 8 ], "texture": "#texture" }, + "west": { "uv": [ 7, 6, 9, 8 ], "texture": "#inside" }, + "east": { "uv": [ 7, 6, 9, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 8, 0 ], + "to": [ 10, 11, 3 ], + "faces": { + "down": { "uv": [ 10, 6, 11, 9 ], "texture": "#texture" }, + "up": { "uv": [ 11, 2, 12, 5 ], "texture": "#texture" }, + "south": { "uv": [ 11, 2, 12, 5 ], "texture": "#texture" }, + "west": { "uv": [ 5, 3, 8, 6 ], "texture": "#inside" }, + "east": { "uv": [ 9, 6, 12, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 5, 2 ], + "to": [ 14, 7, 3 ], + "faces": { + "down": { "uv": [ 7, 8, 9, 9 ], "texture": "#texture" }, + "up": { "uv": [ 7, 7, 9, 8 ], "texture": "#texture" }, + "north": { "uv": [ 7, 7, 9, 9 ], "texture": "#inside" }, + "south": { "uv": [ 9, 7, 11, 9 ], "texture": "#texture" }, + "west": { "uv": [ 4, 7, 5, 9 ], "texture": "#texture" }, + "east": { "uv": [ 10, 7, 11, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 5, 0 ], + "to": [ 12, 7, 2 ], + "faces": { + "down": { "uv": [ 6, 4, 7, 6 ], "texture": "#texture" }, + "up": { "uv": [ 5, 4, 6, 6 ], "texture": "#texture" }, + "south": { "uv": [ 5, 6, 6, 8 ], "texture": "#texture" }, + "west": { "uv": [ 5, 7, 7, 9 ], "texture": "#texture" }, + "east": { "uv": [ 7, 7, 9, 9 ], "texture": "#inside" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 7, 0 ], + "to": [ 14, 8, 2 ], + "faces": { + "down": { "uv": [ 7, 4, 9, 6 ], "texture": "#inside" }, + "up": { "uv": [ 7, 5, 9, 7 ], "texture": "#texture" }, + "south": { "uv": [ 7, 6, 9, 7 ], "texture": "#texture" }, + "west": { "uv": [ 7, 7, 9, 8 ], "texture": "#texture" }, + "east": { "uv": [ 7, 8, 9, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 5, 0 ], + "to": [ 15, 7, 2 ], + "faces": { + "down": { "uv": [ 9, 4, 10, 6 ], "texture": "#texture" }, + "up": { "uv": [ 9, 3, 10, 5 ], "texture": "#texture" }, + "south": { "uv": [ 6, 6, 7, 8 ], "texture": "#texture" }, + "west": { "uv": [ 7, 6, 9, 8 ], "texture": "#inside" }, + "east": { "uv": [ 6, 6, 8, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 14, 0 ], + "to": [ 4, 15, 2 ], + "faces": { + "down": { "uv": [ 7, 4, 9, 6 ], "texture": "#inside" }, + "up": { "uv": [ 7, 5, 9, 7 ], "texture": "#texture" }, + "south": { "uv": [ 7, 6, 9, 7 ], "texture": "#texture" }, + "west": { "uv": [ 7, 7, 9, 8 ], "texture": "#texture" }, + "east": { "uv": [ 7, 8, 9, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 12, 0 ], + "to": [ 2, 14, 2 ], + "faces": { + "down": { "uv": [ 6, 4, 7, 6 ], "texture": "#texture" }, + "up": { "uv": [ 5, 4, 6, 6 ], "texture": "#texture" }, + "south": { "uv": [ 5, 6, 6, 8 ], "texture": "#texture" }, + "west": { "uv": [ 5, 7, 7, 9 ], "texture": "#texture" }, + "east": { "uv": [ 7, 7, 9, 9 ], "texture": "#inside" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 12, 2 ], + "to": [ 4, 14, 3 ], + "faces": { + "down": { "uv": [ 7, 8, 9, 9 ], "texture": "#texture" }, + "up": { "uv": [ 7, 7, 9, 8 ], "texture": "#texture" }, + "north": { "uv": [ 7, 7, 9, 9 ], "texture": "#inside" }, + "south": { "uv": [ 8, 6, 10, 8 ], "texture": "#texture" }, + "west": { "uv": [ 4, 7, 5, 9 ], "texture": "#texture" }, + "east": { "uv": [ 10, 7, 11, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 12, 0 ], + "to": [ 5, 14, 2 ], + "faces": { + "down": { "uv": [ 9, 4, 10, 6 ], "texture": "#texture" }, + "up": { "uv": [ 9, 3, 10, 5 ], "texture": "#texture" }, + "south": { "uv": [ 6, 6, 7, 8 ], "texture": "#texture" }, + "west": { "uv": [ 7, 6, 9, 8 ], "texture": "#inside" }, + "east": { "uv": [ 6, 6, 8, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 14, 0 ], + "to": [ 14, 15, 2 ], + "faces": { + "down": { "uv": [ 7, 4, 9, 6 ], "texture": "#inside" }, + "up": { "uv": [ 7, 6, 9, 8 ], "texture": "#texture" }, + "south": { "uv": [ 7, 7, 9, 8 ], "texture": "#texture" }, + "west": { "uv": [ 7, 7, 9, 8 ], "texture": "#texture" }, + "east": { "uv": [ 7, 8, 9, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 12, 0 ], + "to": [ 12, 14, 2 ], + "faces": { + "down": { "uv": [ 6, 4, 7, 6 ], "texture": "#texture" }, + "up": { "uv": [ 4, 5, 5, 7 ], "texture": "#texture" }, + "south": { "uv": [ 4, 7, 5, 9 ], "texture": "#texture" }, + "west": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture" }, + "east": { "uv": [ 7, 7, 9, 9 ], "texture": "#inside" } + } + }, + { + "__comment": "Box1", + "from": [ 12, 12, 2 ], + "to": [ 14, 14, 3 ], + "faces": { + "down": { "uv": [ 8, 6, 10, 7 ], "texture": "#texture" }, + "up": { "uv": [ 8, 6, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 7, 7, 9, 9 ], "texture": "#inside" }, + "south": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture" }, + "west": { "uv": [ 4, 7, 5, 9 ], "texture": "#texture" }, + "east": { "uv": [ 10, 7, 11, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 12, 0 ], + "to": [ 15, 14, 2 ], + "faces": { + "down": { "uv": [ 9, 4, 10, 6 ], "texture": "#texture" }, + "up": { "uv": [ 9, 4, 10, 6 ], "texture": "#texture" }, + "south": { "uv": [ 6, 6, 7, 8 ], "texture": "#texture" }, + "west": { "uv": [ 7, 6, 9, 8 ], "texture": "#inside" }, + "east": { "uv": [ 7, 6, 9, 8 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/warped_ladder.json b/src/main/resources/assets/betternether/models/block/warped_ladder.json new file mode 100644 index 0000000..2b51ba0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/warped_ladder.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/reeds_ladder", + "textures": { + "particle": "betternether:block/warped_ladder", + "texture": "betternether:block/warped_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_bark.json b/src/main/resources/assets/betternether/models/block/wart_bark.json new file mode 100644 index 0000000..d886bc5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_bark.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/wart_bark" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/wart_button.json b/src/main/resources/assets/betternether/models/block/wart_button.json new file mode 100644 index 0000000..1b0738c --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_button.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button", + "textures": { + "texture": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_button_inventory.json b/src/main/resources/assets/betternether/models/block/wart_button_inventory.json new file mode 100644 index 0000000..6a891c8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_button_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_inventory", + "textures": { + "texture": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_button_pressed.json b/src/main/resources/assets/betternether/models/block/wart_button_pressed.json new file mode 100644 index 0000000..d7df831 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_button_pressed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_pressed", + "textures": { + "texture": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_door_bottom.json b/src/main/resources/assets/betternether/models/block/wart_door_bottom.json new file mode 100644 index 0000000..196330a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_door_bottom.json @@ -0,0 +1,62 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/wart_door_bottom", + "texture": "betternether:block/wart_door_bottom", + "side": "betternether:block/wart_door_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 14 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 0.000004292, 0, 3.000004, 2 ], "texture": "#side" }, + "up": { "uv": [ 0.000004292, 14, 3.000004, 16 ], "texture": "#side" }, + "north": { "uv": [ 13, 0, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0.000004292, 0, 3.000004, 16 ], "texture": "#side" }, + "west": { "uv": [ 14, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 2, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 2 ], + "to": [ 3, 2, 14 ], + "faces": { + "down": { "uv": [ 0.000001431, 1.999998, 3.000001, 14 ], "texture": "#side" }, + "up": { "uv": [ 0.000001431, 2.000002, 3.000001, 14 ], "texture": "#side" }, + "north": { "uv": [ 13, 14, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0.000001431, 14, 3.000001, 16 ], "texture": "#side" }, + "west": { "uv": [ 2.000001, 14, 14, 16 ], "texture": "#texture" }, + "east": { "uv": [ 1.999999, 14, 14, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 3, 16, 2 ], + "faces": { + "down": { "uv": [ 0.000001907, 14, 3.000002, 16 ], "texture": "#side" }, + "up": { "uv": [ 0.000001907, 0.000001907, 3.000002, 2.000002 ], "texture": "#side" }, + "north": { "uv": [ 13, 0, 16, 16 ], "texture": "#side" }, + "south": { "uv": [ 0.000001907, 0, 3.000002, 16 ], "texture": "#side" }, + "west": { "uv": [ 0.000002384, 0, 2.000002, 16 ], "texture": "#texture" }, + "east": { "uv": [ 14, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 2, 2 ], + "to": [ 2, 16, 14 ], + "faces": { + "down": { "uv": [ 1.000003, 1.999998, 2.000003, 14 ], "texture": "#texture" }, + "up": { "uv": [ 1.000003, 2.000002, 2.000003, 14 ], "texture": "#texture" }, + "north": { "uv": [ 14, 0, 15, 14 ], "texture": "#texture" }, + "south": { "uv": [ 1.000003, 0, 2.000003, 14 ], "texture": "#texture" }, + "west": { "uv": [ 2.000001, 0, 14, 14 ], "texture": "#texture" }, + "east": { "uv": [ 1.999999, 0, 14, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/wart_door_top.json b/src/main/resources/assets/betternether/models/block/wart_door_top.json new file mode 100644 index 0000000..8133d1b --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_door_top.json @@ -0,0 +1,62 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/wart_door_top", + "texture": "betternether:block/wart_door_top", + "side": "betternether:block/wart_door_side" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 3, 16, 2 ], + "faces": { + "down": { "uv": [ 0.000008583, 14, 3.000009, 16 ], "texture": "#side" }, + "up": { "uv": [ 0.000008583, 0.000003815, 3.000009, 2.000004 ], "texture": "#side" }, + "north": { "uv": [ 12.99999, 0.000001907, 15.99999, 16 ], "texture": "#side" }, + "south": { "uv": [ 0.000008583, 0.000001907, 3.000009, 16 ], "texture": "#side" }, + "west": { "uv": [ 0.000003338, 0.000001907, 2.000003, 16 ], "texture": "#texture" }, + "east": { "uv": [ 14, 0.000001907, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 14, 2 ], + "to": [ 3, 16, 14 ], + "faces": { + "down": { "uv": [ 0.000003338, 2.000002, 3.000003, 14 ], "texture": "#side" }, + "up": { "uv": [ 0.000003338, 1.999998, 3.000003, 14 ], "texture": "#side" }, + "north": { "uv": [ 13, 0.000005722, 16, 2.000006 ], "texture": "#side" }, + "south": { "uv": [ 0.000003338, 0.000005722, 3.000003, 2.000006 ], "texture": "#side" }, + "west": { "uv": [ 1.999998, 0.000005722, 14, 2.000006 ], "texture": "#texture" }, + "east": { "uv": [ 2.000002, 0.000005722, 14, 2.000006 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 14 ], + "to": [ 3, 16, 16 ], + "faces": { + "down": { "uv": [ 0.000005245, 0.000008583, 3.000005, 2.000009 ], "texture": "#side" }, + "up": { "uv": [ 0.000005245, 13.99999, 3.000005, 15.99999 ], "texture": "#side" }, + "north": { "uv": [ 12.99999, 0, 15.99999, 16 ], "texture": "#side" }, + "south": { "uv": [ 0.000005245, 0, 3.000005, 16 ], "texture": "#side" }, + "west": { "uv": [ 13.99999, 0, 15.99999, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0.000008583, 0, 2.000009, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 0, 2 ], + "to": [ 2, 14, 14 ], + "faces": { + "down": { "uv": [ 1.000007, 2, 2.000007, 14 ], "texture": "#texture" }, + "up": { "uv": [ 1.000007, 2, 2.000007, 14 ], "texture": "#texture" }, + "north": { "uv": [ 13.99999, 2.000002, 14.99999, 16 ], "texture": "#texture" }, + "south": { "uv": [ 1.000007, 2.000002, 2.000007, 16 ], "texture": "#texture" }, + "west": { "uv": [ 2, 2.000002, 14, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 2.000002, 14, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/wart_fence_gate_closed.json b/src/main/resources/assets/betternether/models/block/wart_fence_gate_closed.json new file mode 100644 index 0000000..d0c8962 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_fence_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate", + "textures": { + "texture": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_fence_gate_open.json b/src/main/resources/assets/betternether/models/block/wart_fence_gate_open.json new file mode 100644 index 0000000..2a57032 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_fence_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_open", + "textures": { + "texture": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_fence_inventory.json b/src/main/resources/assets/betternether/models/block/wart_fence_inventory.json new file mode 100644 index 0000000..4bf71a9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_fence_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_inventory", + "textures": { + "texture": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_fence_post.json b/src/main/resources/assets/betternether/models/block/wart_fence_post.json new file mode 100644 index 0000000..f3f6df9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_fence_post.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_post", + "textures": { + "texture": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_fence_side.json b/src/main/resources/assets/betternether/models/block/wart_fence_side.json new file mode 100644 index 0000000..8f33648 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_fence_side.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_side", + "textures": { + "texture": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_half_slab.json b/src/main/resources/assets/betternether/models/block/wart_half_slab.json new file mode 100644 index 0000000..bf4b651 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/wart_planks", + "top": "betternether:block/wart_planks", + "side": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_inner_stairs.json b/src/main/resources/assets/betternether/models/block/wart_inner_stairs.json new file mode 100644 index 0000000..bf4b2b0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/wart_planks", + "top": "betternether:block/wart_planks", + "side": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_ladder.json b/src/main/resources/assets/betternether/models/block/wart_ladder.json new file mode 100644 index 0000000..31478f3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_ladder.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/reeds_ladder", + "textures": { + "particle": "betternether:block/wart_ladder", + "texture": "betternether:block/wart_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_log.json b/src/main/resources/assets/betternether/models/block/wart_log.json new file mode 100644 index 0000000..90d57f3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_log.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/wart_bark", + "down": "betternether:block/wart_log_top", + "up": "betternether:block/wart_log_top", + "north": "betternether:block/wart_bark", + "east": "betternether:block/wart_bark", + "south": "betternether:block/wart_bark", + "west": "betternether:block/wart_bark" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/wart_outer_stairs.json b/src/main/resources/assets/betternether/models/block/wart_outer_stairs.json new file mode 100644 index 0000000..ed562ca --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/wart_planks", + "top": "betternether:block/wart_planks", + "side": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_planks.json b/src/main/resources/assets/betternether/models/block/wart_planks.json new file mode 100644 index 0000000..143bb39 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_planks.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_pressure_plate_down.json b/src/main/resources/assets/betternether/models/block/wart_pressure_plate_down.json new file mode 100644 index 0000000..9b95dbb --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_down", + "textures": { + "texture": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_pressure_plate_up.json b/src/main/resources/assets/betternether/models/block/wart_pressure_plate_up.json new file mode 100644 index 0000000..d1bc7fc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_pressure_plate_up.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_up", + "textures": { + "texture": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_roots.json b/src/main/resources/assets/betternether/models/block/wart_roots.json new file mode 100644 index 0000000..0034b1e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_roots.json @@ -0,0 +1,75 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/wart_bark", + "texture": "betternether:block/wart_bark", + "top": "betternether:block/wart_log_top" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top", "cullface": "up" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "cullface": "north" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 3, -8, 3 ], + "to": [ 13, 0, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 13, 13 ], "texture": "#texture" }, + "north": { "uv": [ 3, 0, 13, 8 ], "texture": "#texture" }, + "south": { "uv": [ 3, 0, 13, 8 ], "texture": "#texture" }, + "west": { "uv": [ 3, 0, 13, 8 ], "texture": "#texture" }, + "east": { "uv": [ 3, 0, 13, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box11", + "from": [ -3, -3, -2 ], + "to": [ 7, 7, 8 ], + "faces": { + "down": { "uv": [ 5, 5, 15, 15 ], "texture": "#texture" }, + "up": { "uv": [ 5, 5, 15, 15 ], "texture": "#texture" }, + "north": { "uv": [ 5, 5, 15, 15 ], "texture": "#texture" }, + "south": { "uv": [ 5, 5, 15, 15 ], "texture": "#texture" }, + "west": { "uv": [ 5, 5, 15, 15 ], "texture": "#texture" }, + "east": { "uv": [ 5, 5, 15, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box11", + "from": [ 11, -5, -5 ], + "to": [ 21, 5, 5 ], + "faces": { + "down": { "uv": [ 2, 3, 12, 13 ], "texture": "#texture" }, + "up": { "uv": [ 2, 3, 12, 13 ], "texture": "#texture" }, + "north": { "uv": [ 2, 3, 12, 13 ], "texture": "#texture" }, + "south": { "uv": [ 2, 3, 12, 13 ], "texture": "#texture" }, + "west": { "uv": [ 2, 3, 12, 13 ], "texture": "#texture" }, + "east": { "uv": [ 2, 3, 12, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box11", + "from": [ 7, -4, 10 ], + "to": [ 17, 6, 20 ], + "faces": { + "down": { "uv": [ 2, 3, 12, 13 ], "texture": "#texture" }, + "up": { "uv": [ 2, 3, 12, 13 ], "texture": "#texture" }, + "north": { "uv": [ 2, 3, 12, 13 ], "texture": "#texture" }, + "south": { "uv": [ 2, 3, 12, 13 ], "texture": "#texture" }, + "west": { "uv": [ 2, 3, 12, 13 ], "texture": "#texture" }, + "east": { "uv": [ 2, 3, 12, 13 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/wart_seed_01.json b/src/main/resources/assets/betternether/models/block/wart_seed_01.json new file mode 100644 index 0000000..ad92314 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_seed_01.json @@ -0,0 +1,21 @@ +{ + "parent": "block/block", + "textures": + { + "particle": "block/nether_wart_block", + "texture": "block/nether_wart_block" + }, + "elements": [ + { "from": [ 6, 0, 6 ], + "to": [ 10, 4, 10 ], + "faces": { + "down": { "texture": "#texture" }, + "up": { "texture": "#texture" }, + "north": { "texture": "#texture" }, + "south": { "texture": "#texture" }, + "west": { "texture": "#texture" }, + "east": { "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/wart_seed_02.json b/src/main/resources/assets/betternether/models/block/wart_seed_02.json new file mode 100644 index 0000000..82b96d8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_seed_02.json @@ -0,0 +1,21 @@ +{ + "parent": "block/block", + "textures": + { + "particle": "block/nether_wart_block", + "texture": "block/nether_wart_block" + }, + "elements": [ + { "from": [ 5, 0, 5 ], + "to": [ 11, 6, 11 ], + "faces": { + "down": { "texture": "#texture" }, + "up": { "texture": "#texture" }, + "north": { "texture": "#texture" }, + "south": { "texture": "#texture" }, + "west": { "texture": "#texture" }, + "east": { "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/wart_seed_03.json b/src/main/resources/assets/betternether/models/block/wart_seed_03.json new file mode 100644 index 0000000..2a9a38a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_seed_03.json @@ -0,0 +1,21 @@ +{ + "parent": "block/block", + "textures": + { + "particle": "block/nether_wart_block", + "texture": "block/nether_wart_block" + }, + "elements": [ + { "from": [ 4, 0, 4 ], + "to": [ 12, 8, 12 ], + "faces": { + "down": { "texture": "#texture" }, + "up": { "texture": "#texture" }, + "north": { "texture": "#texture" }, + "south": { "texture": "#texture" }, + "west": { "texture": "#texture" }, + "east": { "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/betternether/models/block/wart_stairs.json b/src/main/resources/assets/betternether/models/block/wart_stairs.json new file mode 100644 index 0000000..2afac08 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/wart_planks", + "top": "betternether:block/wart_planks", + "side": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_trapdoor.json b/src/main/resources/assets/betternether/models/block/wart_trapdoor.json new file mode 100644 index 0000000..c5ff5ff --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_trapdoor.json @@ -0,0 +1,68 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/wart_trapdoor", + "texture": "betternether:block/wart_trapdoor", + "side": "betternether:block/wart_planks" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 2, 3, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 2, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 2, 16 ], "texture": "#texture" }, + "north": { "uv": [ 14, 12, 16, 15 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 12, 2, 15 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 12, 16, 15 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 0, 12, 16, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 0, 0 ], + "to": [ 16, 3, 16 ], + "faces": { + "down": { "uv": [ 14, 0, 16, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 14, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 12, 2, 15 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 14, 12, 16, 15 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 12, 16, 15 ], "texture": "#side" }, + "east": { "uv": [ 0, 12, 16, 15 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 0 ], + "to": [ 14, 3, 2 ], + "faces": { + "down": { "uv": [ 2, 14, 14, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 2, 0, 14, 2 ], "texture": "#texture" }, + "north": { "uv": [ 2, 12, 14, 15 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 2, 12, 14, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 14 ], + "to": [ 14, 3, 16 ], + "faces": { + "down": { "uv": [ 2, 0, 14, 2 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 2, 14, 14, 16 ], "texture": "#texture" }, + "north": { "uv": [ 2, 12, 14, 15 ], "texture": "#side" }, + "south": { "uv": [ 2, 12, 14, 15 ], "texture": "#side", "cullface": "south" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 1, 2 ], + "to": [ 14, 2, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/wart_wall_gate_closed.json b/src/main/resources/assets/betternether/models/block/wart_wall_gate_closed.json new file mode 100644 index 0000000..2f81028 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_wall_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall", + "textures": { + "texture": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/wart_wall_gate_open.json b/src/main/resources/assets/betternether/models/block/wart_wall_gate_open.json new file mode 100644 index 0000000..0d66229 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/wart_wall_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall_open", + "textures": { + "texture": "betternether:block/wart_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/whispering_gourd.json b/src/main/resources/assets/betternether/models/block/whispering_gourd.json new file mode 100644 index 0000000..dddd22e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/whispering_gourd.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/whispering_gourd_side", + "down": "betternether:block/whispering_gourd_bottom", + "up": "betternether:block/whispering_gourd_top", + "north": "betternether:block/whispering_gourd_side", + "east": "betternether:block/whispering_gourd_side", + "south": "betternether:block/whispering_gourd_side", + "west": "betternether:block/whispering_gourd_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/whispering_gourd_lantern.json b/src/main/resources/assets/betternether/models/block/whispering_gourd_lantern.json new file mode 100644 index 0000000..aaefcc9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/whispering_gourd_lantern.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/whispering_gourd_side", + "down": "betternether:block/whispering_gourd_bottom", + "up": "betternether:block/whispering_gourd_top", + "north": "betternether:block/whispering_gourd_lantern", + "east": "betternether:block/whispering_gourd_side", + "south": "betternether:block/whispering_gourd_side", + "west": "betternether:block/whispering_gourd_side" + } +} diff --git a/src/main/resources/assets/betternether/models/block/whispering_gourd_vine.json b/src/main/resources/assets/betternether/models/block/whispering_gourd_vine.json new file mode 100644 index 0000000..3c2ca16 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/whispering_gourd_vine.json @@ -0,0 +1,72 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/whispering_gourd_vine", + "texture": "betternether:block/whispering_gourd_vine", + "leaf": "betternether:block/whispering_gourd_leaf" + }, + "elements": [ + { + "__comment": "PlaneX1", + "from": [ 2.5, 0, 2.5 ], + "to": [ 2.501, 16, 18.5 ], + "shade": false, + "rotation": { "origin": [ 2.5, 0, 2.5 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX1", + "from": [ 14, 0, 2 ], + "to": [ 14.001, 16, 18 ], + "shade": false, + "rotation": { "origin": [ 14, 0, 2 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY3", + "from": [ 8, 13, 0 ], + "to": [ 16, 13.001, 16 ], + "rotation": { "origin": [ 8, 13, 0 ], "axis": "z", "angle": -45 }, + "faces": { + "down": { "uv": [ 0, 0, 16, 8 ], "texture": "#leaf", "rotation": 270 }, + "up": { "uv": [ 0, 0, 16, 8 ], "texture": "#leaf", "rotation": 270 } + } + }, + { + "__comment": "PlaneY3", + "from": [ 2.5, 3, 0 ], + "to": [ 10.5, 3.001, 16 ], + "rotation": { "origin": [ 2.5, 3, 0 ], "axis": "z", "angle": 45 }, + "faces": { + "down": { "uv": [ 0, 0, 16, 8 ], "texture": "#leaf", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 8 ], "texture": "#leaf", "rotation": 90 } + } + }, + { + "__comment": "PlaneY3", + "from": [ 13.625, -0.625, 0 ], + "to": [ 13.626, 7.375, 16 ], + "rotation": { "origin": [ 13.625, 7.375, 0 ], "axis": "z", "angle": 22.5 }, + "faces": { + "west": { "uv": [ 0, 8, 16, 16 ], "texture": "#leaf" }, + "east": { "uv": [ 0, 8, 16, 16 ], "texture": "#leaf" } + } + }, + { + "__comment": "PlaneY3", + "from": [ -0.501, -4.375, 0 ], + "to": [ -0.5, 3.625, 16 ], + "rotation": { "origin": [ -0.5, -4.375, 0 ], "axis": "z", "angle": -22.5 }, + "faces": { + "west": { "uv": [ 16, 16, 0, 8 ], "texture": "#leaf", "rotation": 180 }, + "east": { "uv": [ 0, 8, 16, 16 ], "texture": "#leaf" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/whispering_gourd_vine_end.json b/src/main/resources/assets/betternether/models/block/whispering_gourd_vine_end.json new file mode 100644 index 0000000..6453ab1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/whispering_gourd_vine_end.json @@ -0,0 +1,31 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/whispering_gourd_vine_end", + "texture": "betternether:block/whispering_gourd_vine_end" + }, + "elements": [ + { + "__comment": "PlaneX1", + "from": [ 2.5, 0, 2.5 ], + "to": [ 2.501, 16, 18.5 ], + "shade": false, + "rotation": { "origin": [ 2.5, 0, 2.5 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX1", + "from": [ 14, 0, 2 ], + "to": [ 14.001, 16, 18 ], + "shade": false, + "rotation": { "origin": [ 14, 0, 2 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/whispering_gourd_vine_fruits.json b/src/main/resources/assets/betternether/models/block/whispering_gourd_vine_fruits.json new file mode 100644 index 0000000..341b7f9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/whispering_gourd_vine_fruits.json @@ -0,0 +1,101 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/whispering_gourd_vine", + "texture": "betternether:block/whispering_gourd_vine", + "leaf": "betternether:block/whispering_gourd_leaf", + "fruit": "betternether:block/whispering_gourd_fruit" + }, + "elements": [ + { + "__comment": "PlaneX1", + "from": [ 2.5, 0, 2.5 ], + "to": [ 2.501, 16, 18.5 ], + "shade": false, + "rotation": { "origin": [ 2.5, 0, 2.5 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX1", + "from": [ 14, 0, 2 ], + "to": [ 14.001, 16, 18 ], + "shade": false, + "rotation": { "origin": [ 14, 0, 2 ], "axis": "y", "angle": -45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY3", + "from": [ 8, 13, 0 ], + "to": [ 16, 13.001, 16 ], + "rotation": { "origin": [ 8, 13, 0 ], "axis": "z", "angle": -45 }, + "faces": { + "down": { "uv": [ 0, 0, 16, 8 ], "texture": "#leaf", "rotation": 270 }, + "up": { "uv": [ 0, 0, 16, 8 ], "texture": "#leaf", "rotation": 270 } + } + }, + { + "__comment": "PlaneY3", + "from": [ 2.5, 3, 0 ], + "to": [ 10.5, 3.001, 16 ], + "rotation": { "origin": [ 2.5, 3, 0 ], "axis": "z", "angle": 45 }, + "faces": { + "down": { "uv": [ 0, 0, 16, 8 ], "texture": "#leaf", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 8 ], "texture": "#leaf", "rotation": 90 } + } + }, + { + "__comment": "PlaneY3", + "from": [ 13.625, -0.625, 0 ], + "to": [ 13.626, 7.375, 16 ], + "rotation": { "origin": [ 13.625, 7.375, 0 ], "axis": "z", "angle": 22.5 }, + "faces": { + "west": { "uv": [ 0, 8, 16, 16 ], "texture": "#leaf" }, + "east": { "uv": [ 0, 8, 16, 16 ], "texture": "#leaf" } + } + }, + { + "__comment": "PlaneY3", + "from": [ -0.501, -4.375, 0 ], + "to": [ -0.5, 3.625, 16 ], + "rotation": { "origin": [ -0.5, -4.375, 0 ], "axis": "z", "angle": -22.5 }, + "faces": { + "west": { "uv": [ 16, 16, 0, 8 ], "texture": "#leaf", "rotation": 180 }, + "east": { "uv": [ 0, 8, 16, 16 ], "texture": "#leaf" } + } + }, + { + "__comment": "Box8", + "from": [ 5, -3.5, 12.5 ], + "to": [ 13, 4.5, 20.5 ], + "rotation": { "origin": [ 5, -3.5, 12.5 ], "axis": "x", "angle": -22.5 }, + "faces": { + "down": { "uv": [ 0, 8, 8, 16 ], "texture": "#fruit" }, + "up": { "uv": [ 8, 0, 16, 8 ], "texture": "#fruit" }, + "north": { "uv": [ 0, 0, 8, 8 ], "texture": "#fruit" }, + "south": { "uv": [ 0, 0, 8, 8 ], "texture": "#fruit" }, + "west": { "uv": [ 0, 0, 8, 8 ], "texture": "#fruit" }, + "east": { "uv": [ 0, 0, 8, 8 ], "texture": "#fruit" } + } + }, + { + "__comment": "Box8", + "from": [ 6, 3.5, 0 ], + "to": [ 12, 9.5, 6 ], + "rotation": { "origin": [ 6, 3.5, 0 ], "axis": "x", "angle": 22.5 }, + "faces": { + "down": { "uv": [ 0, 8, 8, 16 ], "texture": "#fruit" }, + "up": { "uv": [ 8, 0, 16, 8 ], "texture": "#fruit" }, + "north": { "uv": [ 0, 0, 8, 8 ], "texture": "#fruit" }, + "south": { "uv": [ 0, 0, 8, 8 ], "texture": "#fruit" }, + "west": { "uv": [ 0, 0, 8, 8 ], "texture": "#fruit" }, + "east": { "uv": [ 0, 0, 8, 8 ], "texture": "#fruit" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_bark.json b/src/main/resources/assets/betternether/models/block/willow_bark.json new file mode 100644 index 0000000..291be0a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_bark.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/willow_bark" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_bark_2.json b/src/main/resources/assets/betternether/models/block/willow_bark_2.json new file mode 100644 index 0000000..600735a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_bark_2.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/willow_bark_mossy" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_branch_end.json b/src/main/resources/assets/betternether/models/block/willow_branch_end.json new file mode 100644 index 0000000..b68fd36 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_branch_end.json @@ -0,0 +1,81 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/willow_bark", + "texture": "betternether:block/willow_bark_end", + "leaves": "betternether:block/willow_leaves_end" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 1, 6 ], + "to": [ 9, 7, 10 ], + "faces": { + "down": { "uv": [ 7, 6, 9, 10 ], "texture": "#texture" }, + "up": { "uv": [ 7, 6, 9, 10 ], "texture": "#texture" }, + "north": { "uv": [ 7, 9, 9, 15 ], "texture": "#texture" }, + "south": { "uv": [ 7, 9, 9, 15 ], "texture": "#texture" }, + "west": { "uv": [ 6, 9, 10, 15 ], "texture": "#texture" }, + "east": { "uv": [ 6, 9, 10, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 9, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture" }, + "north": { "uv": [ 7, 7, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 7, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 7, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 7, 9, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7.5, 9, 7.5 ], + "to": [ 8.5, 16, 8.5 ], + "faces": { + "up": { "uv": [ 7.5, 7.5, 8.5, 8.5 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 7.5, 0, 8.5, 7 ], "texture": "#texture" }, + "south": { "uv": [ 7.5, 0, 8.5, 7 ], "texture": "#texture" }, + "west": { "uv": [ 7.5, 0, 8.5, 7 ], "texture": "#texture" }, + "east": { "uv": [ 7.5, 0, 8.5, 7 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 1, 7 ], + "to": [ 10, 7, 9 ], + "faces": { + "down": { "uv": [ 6, 7, 10, 9 ], "texture": "#texture" }, + "up": { "uv": [ 6, 7, 10, 9 ], "texture": "#texture" }, + "north": { "uv": [ 6, 9, 10, 15 ], "texture": "#texture" }, + "south": { "uv": [ 6, 9, 10, 15 ], "texture": "#texture" }, + "west": { "uv": [ 7, 9, 9, 15 ], "texture": "#texture" }, + "east": { "uv": [ 7, 9, 9, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX5", + "from": [ 0, 0, 0 ], + "to": [ 0.001, 16, 22.5 ], + "rotation": { "origin": [ 0, 0, 0 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" } + } + }, + { + "__comment": "PlaneX5", + "from": [ 0, 0, 15.999 ], + "to": [ 22.5, 16, 16 ], + "rotation": { "origin": [ 0, 0, 16 ], "axis": "y", "angle": 45 }, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_branch_middle.json b/src/main/resources/assets/betternether/models/block/willow_branch_middle.json new file mode 100644 index 0000000..64ba9b5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_branch_middle.json @@ -0,0 +1,43 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/willow_bark", + "texture": "betternether:block/willow_bark", + "leaves": "betternether:block/willow_leaves" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 16, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX5", + "from": [ 0, 0, 0 ], + "to": [ 0.001, 16, 22.5 ], + "rotation": { "origin": [ 0, 0, 0 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" } + } + }, + { + "__comment": "PlaneX5", + "from": [ 0, 0, 15.999 ], + "to": [ 22.5, 16, 16 ], + "rotation": { "origin": [ 0, 0, 16 ], "axis": "y", "angle": 45 }, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaves" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_button.json b/src/main/resources/assets/betternether/models/block/willow_button.json new file mode 100644 index 0000000..98bc554 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_button.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button", + "textures": { + "texture": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_button_inventory.json b/src/main/resources/assets/betternether/models/block/willow_button_inventory.json new file mode 100644 index 0000000..aea07e1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_button_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_inventory", + "textures": { + "texture": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_button_pressed.json b/src/main/resources/assets/betternether/models/block/willow_button_pressed.json new file mode 100644 index 0000000..0a1e084 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_button_pressed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/button_pressed", + "textures": { + "texture": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_door_bottom.json b/src/main/resources/assets/betternether/models/block/willow_door_bottom.json new file mode 100644 index 0000000..9bedaad --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_door_bottom.json @@ -0,0 +1,7 @@ +{ + "parent": "block/door_bottom", + "textures": { + "bottom": "betternether:block/willow_door_bottom", + "top": "betternether:block/willow_door_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_door_bottom_hinge.json b/src/main/resources/assets/betternether/models/block/willow_door_bottom_hinge.json new file mode 100644 index 0000000..c885712 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_door_bottom_hinge.json @@ -0,0 +1,7 @@ +{ + "parent": "block/door_bottom_rh", + "textures": { + "bottom": "betternether:block/willow_door_bottom", + "top": "betternether:block/willow_door_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_door_top.json b/src/main/resources/assets/betternether/models/block/willow_door_top.json new file mode 100644 index 0000000..89cf63f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_door_top.json @@ -0,0 +1,7 @@ +{ + "parent": "block/door_top", + "textures": { + "bottom": "betternether:block/willow_door_top", + "top": "betternether:block/willow_door_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_door_top_hinge.json b/src/main/resources/assets/betternether/models/block/willow_door_top_hinge.json new file mode 100644 index 0000000..16efb72 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_door_top_hinge.json @@ -0,0 +1,7 @@ +{ + "parent": "block/door_top_rh", + "textures": { + "bottom": "betternether:block/willow_door_top", + "top": "betternether:block/willow_door_top" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_fence_gate_closed.json b/src/main/resources/assets/betternether/models/block/willow_fence_gate_closed.json new file mode 100644 index 0000000..fabc990 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_fence_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate", + "textures": { + "texture": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_fence_gate_open.json b/src/main/resources/assets/betternether/models/block/willow_fence_gate_open.json new file mode 100644 index 0000000..55e28f8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_fence_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_open", + "textures": { + "texture": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_fence_inventory.json b/src/main/resources/assets/betternether/models/block/willow_fence_inventory.json new file mode 100644 index 0000000..330d088 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_fence_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_inventory", + "textures": { + "texture": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_fence_post.json b/src/main/resources/assets/betternether/models/block/willow_fence_post.json new file mode 100644 index 0000000..2279c16 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_fence_post.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_post", + "textures": { + "texture": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_fence_side.json b/src/main/resources/assets/betternether/models/block/willow_fence_side.json new file mode 100644 index 0000000..a6a0098 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_fence_side.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_side", + "textures": { + "texture": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_half_slab.json b/src/main/resources/assets/betternether/models/block/willow_half_slab.json new file mode 100644 index 0000000..781e4df --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_half_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "block/slab", + "textures": { + "bottom": "betternether:block/willow_planks", + "top": "betternether:block/willow_planks", + "side": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_inner_stairs.json b/src/main/resources/assets/betternether/models/block/willow_inner_stairs.json new file mode 100644 index 0000000..de83916 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_inner_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/inner_stairs", + "textures": { + "bottom": "betternether:block/willow_planks", + "top": "betternether:block/willow_planks", + "side": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_ladder.json b/src/main/resources/assets/betternether/models/block/willow_ladder.json new file mode 100644 index 0000000..7b58625 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_ladder.json @@ -0,0 +1,7 @@ +{ + "parent": "betternether:block/reeds_ladder", + "textures": { + "particle": "betternether:block/willow_ladder", + "texture": "betternether:block/willow_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_leaves.json b/src/main/resources/assets/betternether/models/block/willow_leaves.json new file mode 100644 index 0000000..7b35eb6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_leaves.json @@ -0,0 +1,65 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/willow_leaves_full", + "texture": "betternether:block/willow_leaves_full", + "top": "betternether:block/willow_leaves_top", + "texture1": "betternether:block/willow_leaves" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX3", + "from": [ -4, 0, -4 ], + "to": [ -3.999, 16, 12 ], + "rotation": { "origin": [ -4, 0, -4 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 8.5, 0, 9 ], + "to": [ 8.501, 16, 25 ], + "rotation": { "origin": [ 8.5, 0, 9 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 8.5, 0, 6.999 ], + "to": [ 24.5, 16, 7 ], + "rotation": { "origin": [ 8.5, 0, 7 ], "axis": "y", "angle": 45 }, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX3", + "from": [ -3, 0, 18.999 ], + "to": [ 13, 16, 19 ], + "rotation": { "origin": [ -3, 0, 19 ], "axis": "y", "angle": 45 }, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_leaves_bottom.json b/src/main/resources/assets/betternether/models/block/willow_leaves_bottom.json new file mode 100644 index 0000000..faf17ec --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_leaves_bottom.json @@ -0,0 +1,78 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/willow_leaves_full", + "texture": "betternether:block/willow_leaves_full", + "top": "betternether:block/willow_leaves_top", + "bark": "betternether:block/willow_bark", + "texture1": "betternether:block/willow_leaves" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 5, 6 ], + "to": [ 10, 21, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#bark" }, + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#bark", "cullface": "up" }, + "north": { "uv": [ 6, 0, 10, 16 ], "texture": "#bark" }, + "south": { "uv": [ 6, 0, 10, 16 ], "texture": "#bark" }, + "west": { "uv": [ 6, 0, 10, 16 ], "texture": "#bark" }, + "east": { "uv": [ 6, 0, 10, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "PlaneX3", + "from": [ -4, 0, -4 ], + "to": [ -3.999, 16, 12 ], + "rotation": { "origin": [ -4, 0, -4 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 8.5, 0, 9 ], + "to": [ 8.501, 16, 25 ], + "rotation": { "origin": [ 8.5, 0, 9 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 8.5, 0, 6.999 ], + "to": [ 24.5, 16, 7 ], + "rotation": { "origin": [ 8.5, 0, 7 ], "axis": "y", "angle": 45 }, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX3", + "from": [ -3, 0, 18.999 ], + "to": [ 13, 16, 19 ], + "rotation": { "origin": [ -3, 0, 19 ], "axis": "y", "angle": 45 }, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_leaves_side.json b/src/main/resources/assets/betternether/models/block/willow_leaves_side.json new file mode 100644 index 0000000..67577f4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_leaves_side.json @@ -0,0 +1,78 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/willow_leaves_full", + "texture": "betternether:block/willow_leaves_full", + "top": "betternether:block/willow_leaves_top", + "bark": "betternether:block/willow_bark", + "texture1": "betternether:block/willow_leaves" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX3", + "from": [ -4, 0, -4 ], + "to": [ -3.999, 16, 12 ], + "rotation": { "origin": [ -4, 0, -4 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 8.5, 0, 9 ], + "to": [ 8.501, 16, 25 ], + "rotation": { "origin": [ 8.5, 0, 9 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 8.5, 0, 6.999 ], + "to": [ 24.5, 16, 7 ], + "rotation": { "origin": [ 8.5, 0, 7 ], "axis": "y", "angle": 45 }, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX3", + "from": [ -3, 0, 18.999 ], + "to": [ 13, 16, 19 ], + "rotation": { "origin": [ -3, 0, 19 ], "axis": "y", "angle": 45 }, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "Box7", + "from": [ 6, 6, 6 ], + "to": [ 10, 10, 22 ], + "faces": { + "down": { "uv": [ 6, 0, 10, 16 ], "texture": "#bark" }, + "up": { "uv": [ 6, 0, 10, 16 ], "texture": "#bark" }, + "north": { "uv": [ 6, 7, 10, 11 ], "texture": "#bark" }, + "south": { "uv": [ 6, 7, 10, 11 ], "texture": "#bark", "cullface": "south" }, + "west": { "uv": [ 6, 0, 10, 16 ], "texture": "#bark", "rotation": 90 }, + "east": { "uv": [ 6, 0, 10, 16 ], "texture": "#bark", "rotation": 90 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_leaves_top.json b/src/main/resources/assets/betternether/models/block/willow_leaves_top.json new file mode 100644 index 0000000..91833f6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_leaves_top.json @@ -0,0 +1,78 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/willow_leaves_full", + "texture": "betternether:block/willow_leaves_full", + "top": "betternether:block/willow_leaves_top", + "bark": "betternether:block/willow_bark", + "texture1": "betternether:block/willow_leaves" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, -7, 6 ], + "to": [ 10, 9, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#bark", "cullface": "down" }, + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#bark" }, + "north": { "uv": [ 6, 0, 10, 16 ], "texture": "#bark" }, + "south": { "uv": [ 6, 0, 10, 16 ], "texture": "#bark" }, + "west": { "uv": [ 6, 0, 10, 16 ], "texture": "#bark" }, + "east": { "uv": [ 6, 0, 10, 16 ], "texture": "#bark" } + } + }, + { + "__comment": "PlaneX3", + "from": [ -4, 0, -4 ], + "to": [ -3.999, 16, 12 ], + "rotation": { "origin": [ -4, 0, -4 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 8.5, 0, 9 ], + "to": [ 8.501, 16, 25 ], + "rotation": { "origin": [ 8.5, 0, 9 ], "axis": "y", "angle": 45 }, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX3", + "from": [ 8.5, 0, 6.999 ], + "to": [ 24.5, 16, 7 ], + "rotation": { "origin": [ 8.5, 0, 7 ], "axis": "y", "angle": 45 }, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + }, + { + "__comment": "PlaneX3", + "from": [ -3, 0, 18.999 ], + "to": [ 13, 16, 19 ], + "rotation": { "origin": [ -3, 0, 19 ], "axis": "y", "angle": 45 }, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_log.json b/src/main/resources/assets/betternether/models/block/willow_log.json new file mode 100644 index 0000000..19ffc60 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_log.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/willow_bark", + "down": "betternether:block/willow_log_top", + "up": "betternether:block/willow_log_top", + "north": "betternether:block/willow_bark", + "east": "betternether:block/willow_bark", + "south": "betternether:block/willow_bark", + "west": "betternether:block/willow_bark" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_log_2.json b/src/main/resources/assets/betternether/models/block/willow_log_2.json new file mode 100644 index 0000000..c5e567f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_log_2.json @@ -0,0 +1,12 @@ +{ + "parent": "block/cube", + "textures": { + "particle": "betternether:block/willow_bark_mossy", + "down": "betternether:block/willow_log_top", + "up": "betternether:block/willow_log_top", + "north": "betternether:block/willow_bark_mossy", + "east": "betternether:block/willow_bark_mossy", + "south": "betternether:block/willow_bark_mossy", + "west": "betternether:block/willow_bark_mossy" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_outer_stairs.json b/src/main/resources/assets/betternether/models/block/willow_outer_stairs.json new file mode 100644 index 0000000..6af4c8d --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_outer_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/outer_stairs", + "textures": { + "bottom": "betternether:block/willow_planks", + "top": "betternether:block/willow_planks", + "side": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_planks.json b/src/main/resources/assets/betternether/models/block/willow_planks.json new file mode 100644 index 0000000..128f754 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_planks.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_pressure_plate_down.json b/src/main/resources/assets/betternether/models/block/willow_pressure_plate_down.json new file mode 100644 index 0000000..e85a806 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_down", + "textures": { + "texture": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_pressure_plate_up.json b/src/main/resources/assets/betternether/models/block/willow_pressure_plate_up.json new file mode 100644 index 0000000..4a6f814 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_pressure_plate_up.json @@ -0,0 +1,6 @@ +{ + "parent": "block/pressure_plate_up", + "textures": { + "texture": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_sapling.json b/src/main/resources/assets/betternether/models/block/willow_sapling.json new file mode 100644 index 0000000..935c53a --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betternether:block/willow_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_stairs.json b/src/main/resources/assets/betternether/models/block/willow_stairs.json new file mode 100644 index 0000000..aac0e6e --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "block/stairs", + "textures": { + "bottom": "betternether:block/willow_planks", + "top": "betternether:block/willow_planks", + "side": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_torch.json b/src/main/resources/assets/betternether/models/block/willow_torch.json new file mode 100644 index 0000000..05aeb39 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_torch.json @@ -0,0 +1,62 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/willow_bark_end", + "texture": "betternether:block/willow_bark_end", + "leaves": "betternether:block/willow_leaves_end" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 7, 6 ], + "to": [ 9, 13, 10 ], + "faces": { + "down": { "uv": [ 7, 12, 9, 16 ], "texture": "#texture" }, + "up": { "uv": [ 7, 12, 9, 16 ], "texture": "#texture" }, + "north": { "uv": [ 9, 15, 7, 9 ], "texture": "#texture" }, + "south": { "uv": [ 6, 15, 4, 9 ], "texture": "#texture" }, + "west": { "uv": [ 6, 9, 10, 15 ], "texture": "#texture", "rotation": 180 }, + "east": { "uv": [ 6, 9, 10, 15 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "Box1", + "from": [ 7, 5, 7 ], + "to": [ 9, 14, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture" }, + "up": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 9, 16, 7, 7 ], "texture": "#texture" }, + "south": { "uv": [ 9, 16, 7, 7 ], "texture": "#texture" }, + "west": { "uv": [ 7, 7, 9, 16 ], "texture": "#texture", "rotation": 180 }, + "east": { "uv": [ 7, 7, 9, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "Box1", + "from": [ 7.5, 0, 7.5 ], + "to": [ 8.5, 5, 8.5 ], + "faces": { + "down": { "uv": [ 7.5, 7.5, 8.5, 8.5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 9, 6, 8, 1 ], "texture": "#texture" }, + "south": { "uv": [ 9, 6, 8, 1 ], "texture": "#texture" }, + "west": { "uv": [ 9, 6, 8, 1 ], "texture": "#texture" }, + "east": { "uv": [ 9, 6, 8, 1 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 7, 7 ], + "to": [ 10, 13, 9 ], + "faces": { + "down": { "uv": [ 6, 14, 10, 16 ], "texture": "#texture" }, + "up": { "uv": [ 6, 14, 10, 16 ], "texture": "#texture" }, + "north": { "uv": [ 10, 15, 6, 9 ], "texture": "#texture" }, + "south": { "uv": [ 10, 15, 6, 9 ], "texture": "#texture" }, + "west": { "uv": [ 7, 9, 9, 15 ], "texture": "#texture", "rotation": 180 }, + "east": { "uv": [ 7, 9, 9, 15 ], "texture": "#texture", "rotation": 180 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_torch_wall.json b/src/main/resources/assets/betternether/models/block/willow_torch_wall.json new file mode 100644 index 0000000..b5e60d9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_torch_wall.json @@ -0,0 +1,66 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/willow_bark_end", + "texture": "betternether:block/willow_bark_end", + "leaves": "betternether:block/willow_leaves_end" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 6.5, 2.5 ], + "to": [ 9, 12.5, 6.5 ], + "rotation": { "origin": [ 7, 12.5, 6.5 ], "axis": "x", "angle": 22.5 }, + "faces": { + "down": { "uv": [ 7, 12, 9, 16 ], "texture": "#texture" }, + "up": { "uv": [ 7, 12, 9, 16 ], "texture": "#texture" }, + "north": { "uv": [ 9, 15, 7, 9 ], "texture": "#texture" }, + "south": { "uv": [ 6, 15, 4, 9 ], "texture": "#texture" }, + "west": { "uv": [ 6, 9, 10, 15 ], "texture": "#texture", "rotation": 180 }, + "east": { "uv": [ 6, 9, 10, 15 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "Box1", + "from": [ 7, 4.5, 3.5 ], + "to": [ 9, 13.5, 5.5 ], + "rotation": { "origin": [ 7, 12.5, 6.5 ], "axis": "x", "angle": 22.5 }, + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture" }, + "up": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 9, 16, 7, 7 ], "texture": "#texture" }, + "south": { "uv": [ 9, 16, 7, 7 ], "texture": "#texture" }, + "west": { "uv": [ 7, 7, 9, 16 ], "texture": "#texture", "rotation": 180 }, + "east": { "uv": [ 7, 7, 9, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "Box1", + "from": [ 7.5, -0.5, 4 ], + "to": [ 8.5, 4.5, 5 ], + "rotation": { "origin": [ 7, 12.5, 6.5 ], "axis": "x", "angle": 22.5 }, + "faces": { + "down": { "uv": [ 7.5, 7.5, 8.5, 8.5 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 9, 6, 8, 1 ], "texture": "#texture" }, + "south": { "uv": [ 9, 6, 8, 1 ], "texture": "#texture" }, + "west": { "uv": [ 9, 6, 8, 1 ], "texture": "#texture" }, + "east": { "uv": [ 9, 6, 8, 1 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 6.5, 3.5 ], + "to": [ 10, 12.5, 5.5 ], + "rotation": { "origin": [ 7, 12.5, 6.5 ], "axis": "x", "angle": 22.5 }, + "faces": { + "down": { "uv": [ 6, 14, 10, 16 ], "texture": "#texture" }, + "up": { "uv": [ 6, 14, 10, 16 ], "texture": "#texture" }, + "north": { "uv": [ 10, 15, 6, 9 ], "texture": "#texture" }, + "south": { "uv": [ 10, 15, 6, 9 ], "texture": "#texture" }, + "west": { "uv": [ 7, 9, 9, 15 ], "texture": "#texture", "rotation": 180 }, + "east": { "uv": [ 7, 9, 9, 15 ], "texture": "#texture", "rotation": 180 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_trapdoor.json b/src/main/resources/assets/betternether/models/block/willow_trapdoor.json new file mode 100644 index 0000000..dbf01ec --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_trapdoor.json @@ -0,0 +1,68 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "parent": "block/block", + "textures": { + "particle": "betternether:block/willow_trapdoor", + "texture": "betternether:block/willow_trapdoor", + "side": "betternether:block/willow_planks" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 2, 3, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 2, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 0, 0, 2, 16 ], "texture": "#texture" }, + "north": { "uv": [ 14, 12, 16, 15 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 0, 12, 2, 15 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 12, 16, 15 ], "texture": "#side", "cullface": "west" }, + "east": { "uv": [ 0, 12, 16, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 14, 0, 0 ], + "to": [ 16, 3, 16 ], + "faces": { + "down": { "uv": [ 14, 0, 16, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 14, 0, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 12, 2, 15 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 14, 12, 16, 15 ], "texture": "#side", "cullface": "south" }, + "west": { "uv": [ 0, 12, 16, 15 ], "texture": "#side" }, + "east": { "uv": [ 0, 12, 16, 15 ], "texture": "#side", "cullface": "east" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 0 ], + "to": [ 14, 3, 2 ], + "faces": { + "down": { "uv": [ 2, 14, 14, 16 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 2, 0, 14, 2 ], "texture": "#texture" }, + "north": { "uv": [ 2, 12, 14, 15 ], "texture": "#side", "cullface": "north" }, + "south": { "uv": [ 2, 12, 14, 15 ], "texture": "#side" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 14 ], + "to": [ 14, 3, 16 ], + "faces": { + "down": { "uv": [ 2, 0, 14, 2 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 2, 14, 14, 16 ], "texture": "#texture" }, + "north": { "uv": [ 2, 12, 14, 15 ], "texture": "#side" }, + "south": { "uv": [ 2, 12, 14, 15 ], "texture": "#side", "cullface": "south" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 1, 2 ], + "to": [ 14, 2, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" }, + "up": { "uv": [ 2, 2, 14, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_trunk_bottom.json b/src/main/resources/assets/betternether/models/block/willow_trunk_bottom.json new file mode 100644 index 0000000..91d942f --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_trunk_bottom.json @@ -0,0 +1,123 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/willow_bark", + "texture": "betternether:block/willow_bark_bottom", + "log": "betternether:block/willow_log_top_2" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 16, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#log", "cullface": "up" }, + "north": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "west": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 2 ], + "to": [ 6, 9, 6 ], + "faces": { + "down": { "uv": [ 2, 10, 6, 14 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 2, 2, 6, 6 ], "texture": "#log" }, + "north": { "uv": [ 10, 7, 14, 16 ], "texture": "#texture" }, + "south": { "uv": [ 2, 7, 6, 16 ], "texture": "#texture" }, + "west": { "uv": [ 2, 7, 6, 16 ], "texture": "#texture" }, + "east": { "uv": [ 10, 7, 14, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 8 ], + "to": [ 8, 11, 13 ], + "faces": { + "down": { "uv": [ 3, 3, 8, 8 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 3, 8, 8, 13 ], "texture": "#log" }, + "north": { "uv": [ 8, 5, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 5, 8, 16 ], "texture": "#texture" }, + "west": { "uv": [ 8, 5, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 5, 8, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 0, 5 ], + "to": [ 14, 11, 10 ], + "faces": { + "down": { "uv": [ 9, 6, 14, 11 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 9, 5, 14, 10 ], "texture": "#log" }, + "north": { "uv": [ 2, 5, 7, 16 ], "texture": "#texture" }, + "south": { "uv": [ 9, 5, 14, 16 ], "texture": "#texture" }, + "east": { "uv": [ 6, 5, 11, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 11, 0, 11 ], + "to": [ 13, 5, 13 ], + "faces": { + "down": { "uv": [ 11, 3, 13, 5 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 11, 11, 13, 13 ], "texture": "#log" }, + "north": { "uv": [ 3, 11, 5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 11, 11, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 11, 11, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 11, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 9, 0, 3 ], + "to": [ 11, 5, 5 ], + "faces": { + "down": { "uv": [ 9, 11, 11, 13 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 9, 3, 11, 5 ], "texture": "#log" }, + "north": { "uv": [ 5, 11, 7, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 11, 5, 16 ], "texture": "#texture" }, + "east": { "uv": [ 11, 11, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 2, 0, 12 ], + "to": [ 4, 5, 14 ], + "faces": { + "down": { "uv": [ 2, 2, 4, 4 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 2, 12, 4, 14 ], "texture": "#log" }, + "north": { "uv": [ 12, 11, 14, 16 ], "texture": "#texture" }, + "south": { "uv": [ 2, 11, 4, 16 ], "texture": "#texture" }, + "west": { "uv": [ 12, 11, 14, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 11, 4, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 1, 0, 3 ], + "to": [ 3, 5, 5 ], + "faces": { + "down": { "uv": [ 1, 11, 3, 13 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 1, 3, 3, 5 ], "texture": "#log" }, + "north": { "uv": [ 13, 11, 15, 16 ], "texture": "#texture" }, + "south": { "uv": [ 1, 11, 3, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 11, 5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 0, 1 ], + "to": [ 5, 5, 3 ], + "faces": { + "down": { "uv": [ 3, 13, 5, 15 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 3, 1, 5, 3 ], "texture": "#log" }, + "north": { "uv": [ 11, 11, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 1, 11, 3, 16 ], "texture": "#texture" }, + "east": { "uv": [ 13, 11, 15, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_trunk_middle.json b/src/main/resources/assets/betternether/models/block/willow_trunk_middle.json new file mode 100644 index 0000000..490c107 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_trunk_middle.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/willow_bark", + "texture": "betternether:block/willow_bark", + "log": "betternether:block/willow_log_top_2" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 16, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#log", "cullface": "down" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#log", "cullface": "up" }, + "north": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "west": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_trunk_middle_2.json b/src/main/resources/assets/betternether/models/block/willow_trunk_middle_2.json new file mode 100644 index 0000000..9cbddfc --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_trunk_middle_2.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/willow_bark_mossy", + "texture": "betternether:block/willow_bark_mossy", + "log": "betternether:block/willow_log_top_2" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 16, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#log", "cullface": "down" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#log", "cullface": "up" }, + "north": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "west": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 4, 0, 12, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_trunk_top.json b/src/main/resources/assets/betternether/models/block/willow_trunk_top.json new file mode 100644 index 0000000..9b023a6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_trunk_top.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/willow_bark", + "texture": "betternether:block/willow_bark", + "log": "betternether:block/willow_log_top_2" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 11, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#log", "cullface": "down" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture" }, + "north": { "uv": [ 4, 5, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 4, 5, 12, 16 ], "texture": "#texture" }, + "west": { "uv": [ 4, 5, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 4, 5, 12, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_trunk_top_2.json b/src/main/resources/assets/betternether/models/block/willow_trunk_top_2.json new file mode 100644 index 0000000..94435ff --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_trunk_top_2.json @@ -0,0 +1,23 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betternether:block/willow_bark_mossy", + "texture": "betternether:block/willow_bark_mossy", + "log": "betternether:block/willow_log_top_2" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 0, 4 ], + "to": [ 12, 11, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#log", "cullface": "down" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#texture" }, + "north": { "uv": [ 4, 5, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 4, 5, 12, 16 ], "texture": "#texture" }, + "west": { "uv": [ 4, 5, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 4, 5, 12, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/block/willow_wall_gate_closed.json b/src/main/resources/assets/betternether/models/block/willow_wall_gate_closed.json new file mode 100644 index 0000000..9b58299 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_wall_gate_closed.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall", + "textures": { + "texture": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/block/willow_wall_gate_open.json b/src/main/resources/assets/betternether/models/block/willow_wall_gate_open.json new file mode 100644 index 0000000..02ead88 --- /dev/null +++ b/src/main/resources/assets/betternether/models/block/willow_wall_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "block/template_fence_gate_wall_open", + "textures": { + "texture": "betternether:block/willow_planks" + } +} diff --git a/src/main/resources/assets/betternether/models/item/agave.json b/src/main/resources/assets/betternether/models/item/agave.json new file mode 100644 index 0000000..b1accc1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/agave.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/agave_seed" + } +} diff --git a/src/main/resources/assets/betternether/models/item/agave_leaf.json b/src/main/resources/assets/betternether/models/item/agave_leaf.json new file mode 100644 index 0000000..cb800f5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/agave_leaf.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/agave_leaf_02" + } +} diff --git a/src/main/resources/assets/betternether/models/item/agave_medicine.json b/src/main/resources/assets/betternether/models/item/agave_medicine.json new file mode 100644 index 0000000..3a03ac2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/agave_medicine.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/agave_medicine" + } +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_bark.json b/src/main/resources/assets/betternether/models/item/anchor_tree_bark.json new file mode 100644 index 0000000..fc2ca7f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_bark.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/anchor_tree_bark" +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_button.json b/src/main/resources/assets/betternether/models/item/anchor_tree_button.json new file mode 100644 index 0000000..7e59781 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_button.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/anchor_tree_button_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_door.json b/src/main/resources/assets/betternether/models/item/anchor_tree_door.json new file mode 100644 index 0000000..42d6da9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_door.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/anchor_tree_door" + } +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_fence.json b/src/main/resources/assets/betternether/models/item/anchor_tree_fence.json new file mode 100644 index 0000000..d88e9e1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/anchor_tree_fence_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_gate.json b/src/main/resources/assets/betternether/models/item/anchor_tree_gate.json new file mode 100644 index 0000000..c84fd80 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/anchor_tree_fence_gate_closed" +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_ladder.json b/src/main/resources/assets/betternether/models/item/anchor_tree_ladder.json new file mode 100644 index 0000000..2652482 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_ladder.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/anchor_tree_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_leaves.json b/src/main/resources/assets/betternether/models/item/anchor_tree_leaves.json new file mode 100644 index 0000000..4c94077 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_leaves.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/anchor_tree_leaves", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, 2.0, 0], + "scale":[ 0.5, 0.5, 0.5 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_log.json b/src/main/resources/assets/betternether/models/item/anchor_tree_log.json new file mode 100644 index 0000000..54ee9de --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_log.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/anchor_tree_log" +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_planks.json b/src/main/resources/assets/betternether/models/item/anchor_tree_planks.json new file mode 100644 index 0000000..b3d26d4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_planks.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/anchor_tree_planks" +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_plate.json b/src/main/resources/assets/betternether/models/item/anchor_tree_plate.json new file mode 100644 index 0000000..dce9a53 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/anchor_tree_pressure_plate_up" +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_sapling.json b/src/main/resources/assets/betternether/models/item/anchor_tree_sapling.json new file mode 100644 index 0000000..e0f9fd2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/anchor_tree_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_slab.json b/src/main/resources/assets/betternether/models/item/anchor_tree_slab.json new file mode 100644 index 0000000..fdd425f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/anchor_tree_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_stairs.json b/src/main/resources/assets/betternether/models/item/anchor_tree_stairs.json new file mode 100644 index 0000000..366fa9d --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/anchor_tree_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/anchor_tree_trapdoor.json b/src/main/resources/assets/betternether/models/item/anchor_tree_trapdoor.json new file mode 100644 index 0000000..c954bf2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/anchor_tree_trapdoor.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/anchor_tree_trapdoor" +} diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_acacia.json b/src/main/resources/assets/betternether/models/item/bar_stool_acacia.json new file mode 100644 index 0000000..3e33776 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_acacia.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_acacia" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_anchor_tree.json b/src/main/resources/assets/betternether/models/item/bar_stool_anchor_tree.json new file mode 100644 index 0000000..f437028 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_anchor_tree.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_anchor_tree" +} diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_birch.json b/src/main/resources/assets/betternether/models/item/bar_stool_birch.json new file mode 100644 index 0000000..ed3b23c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_birch.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_birch" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_cincinnasite.json b/src/main/resources/assets/betternether/models/item/bar_stool_cincinnasite.json new file mode 100644 index 0000000..b1befcd --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_cincinnasite.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_cincinnasite" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_crimson.json b/src/main/resources/assets/betternether/models/item/bar_stool_crimson.json new file mode 100644 index 0000000..dfadca7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_crimson.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_crimson" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_dark_oak.json b/src/main/resources/assets/betternether/models/item/bar_stool_dark_oak.json new file mode 100644 index 0000000..568fef1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_dark_oak.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_dark_oak" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_jungle.json b/src/main/resources/assets/betternether/models/item/bar_stool_jungle.json new file mode 100644 index 0000000..47c18c5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_jungle.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_jungle" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_mushroom.json b/src/main/resources/assets/betternether/models/item/bar_stool_mushroom.json new file mode 100644 index 0000000..2e419a9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_mushroom.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_mushroom" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_mushroom_fir.json b/src/main/resources/assets/betternether/models/item/bar_stool_mushroom_fir.json new file mode 100644 index 0000000..6b21455 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_mushroom_fir.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_mushroom_fir" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_nether_sakura.json b/src/main/resources/assets/betternether/models/item/bar_stool_nether_sakura.json new file mode 100644 index 0000000..9f071c8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_nether_sakura.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_nether_sakura" +} diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_oak.json b/src/main/resources/assets/betternether/models/item/bar_stool_oak.json new file mode 100644 index 0000000..af57cb1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_oak.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_oak" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_reeds.json b/src/main/resources/assets/betternether/models/item/bar_stool_reeds.json new file mode 100644 index 0000000..4230943 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_reeds.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_reeds" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_rubeus.json b/src/main/resources/assets/betternether/models/item/bar_stool_rubeus.json new file mode 100644 index 0000000..1b37627 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_rubeus.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_rubeus" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_spruce.json b/src/main/resources/assets/betternether/models/item/bar_stool_spruce.json new file mode 100644 index 0000000..0363035 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_spruce.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_spruce" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_stalagnate.json b/src/main/resources/assets/betternether/models/item/bar_stool_stalagnate.json new file mode 100644 index 0000000..b771bd8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_stalagnate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_stalagnate" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_warped.json b/src/main/resources/assets/betternether/models/item/bar_stool_warped.json new file mode 100644 index 0000000..85790e4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_warped.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_warped" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_wart.json b/src/main/resources/assets/betternether/models/item/bar_stool_wart.json new file mode 100644 index 0000000..22ed10b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_wart.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_wart" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bar_stool_willow.json b/src/main/resources/assets/betternether/models/item/bar_stool_willow.json new file mode 100644 index 0000000..8d78ad9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bar_stool_willow.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bar_stool_willow" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/barrel_anchor_tree.json b/src/main/resources/assets/betternether/models/item/barrel_anchor_tree.json new file mode 100644 index 0000000..1803920 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/barrel_anchor_tree.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/barrel_anchor_tree" +} diff --git a/src/main/resources/assets/betternether/models/item/barrel_cactus.json b/src/main/resources/assets/betternether/models/item/barrel_cactus.json new file mode 100644 index 0000000..9f73d45 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/barrel_cactus.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/barrel_cactus" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/barrel_crimson.json b/src/main/resources/assets/betternether/models/item/barrel_crimson.json new file mode 100644 index 0000000..0452eab --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/barrel_crimson.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/barrel_crimson" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/barrel_mushroom.json b/src/main/resources/assets/betternether/models/item/barrel_mushroom.json new file mode 100644 index 0000000..11dd7a3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/barrel_mushroom.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/barrel_mushroom" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/barrel_mushroom_fir.json b/src/main/resources/assets/betternether/models/item/barrel_mushroom_fir.json new file mode 100644 index 0000000..773e281 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/barrel_mushroom_fir.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/barrel_mushroom_fir" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/barrel_nether_sakura.json b/src/main/resources/assets/betternether/models/item/barrel_nether_sakura.json new file mode 100644 index 0000000..ab99fe2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/barrel_nether_sakura.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/barrel_nether_sakura" +} diff --git a/src/main/resources/assets/betternether/models/item/barrel_reed.json b/src/main/resources/assets/betternether/models/item/barrel_reed.json new file mode 100644 index 0000000..9a97257 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/barrel_reed.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/barrel_reed" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/barrel_rubeus.json b/src/main/resources/assets/betternether/models/item/barrel_rubeus.json new file mode 100644 index 0000000..78b2909 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/barrel_rubeus.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/barrel_rubeus" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/barrel_stalagnate.json b/src/main/resources/assets/betternether/models/item/barrel_stalagnate.json new file mode 100644 index 0000000..3e3bda3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/barrel_stalagnate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/barrel_stalagnate" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/barrel_warped.json b/src/main/resources/assets/betternether/models/item/barrel_warped.json new file mode 100644 index 0000000..78a35a3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/barrel_warped.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/barrel_warped" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/barrel_wart.json b/src/main/resources/assets/betternether/models/item/barrel_wart.json new file mode 100644 index 0000000..2f93086 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/barrel_wart.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/barrel_wart" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/barrel_willow.json b/src/main/resources/assets/betternether/models/item/barrel_willow.json new file mode 100644 index 0000000..aabe9c0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/barrel_willow.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/barrel_willow" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/basalt_bricks.json b/src/main/resources/assets/betternether/models/item/basalt_bricks.json new file mode 100644 index 0000000..91ae6ab --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/basalt_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/basalt_bricks_1" +} diff --git a/src/main/resources/assets/betternether/models/item/basalt_bricks_slab.json b/src/main/resources/assets/betternether/models/item/basalt_bricks_slab.json new file mode 100644 index 0000000..bc308a2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/basalt_bricks_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/basalt_bricks_slab_1" +} diff --git a/src/main/resources/assets/betternether/models/item/basalt_bricks_stairs.json b/src/main/resources/assets/betternether/models/item/basalt_bricks_stairs.json new file mode 100644 index 0000000..ff047d7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/basalt_bricks_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/basalt_bricks_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/basalt_bricks_wall.json b/src/main/resources/assets/betternether/models/item/basalt_bricks_wall.json new file mode 100644 index 0000000..627ad3f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/basalt_bricks_wall.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/basalt_bricks_post" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/basalt_furnace.json b/src/main/resources/assets/betternether/models/item/basalt_furnace.json new file mode 100644 index 0000000..647db71 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/basalt_furnace.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/basalt_furnace" +} diff --git a/src/main/resources/assets/betternether/models/item/basalt_slab.json b/src/main/resources/assets/betternether/models/item/basalt_slab.json new file mode 100644 index 0000000..f2e9675 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/basalt_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/basalt_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/basalt_stalactite.json b/src/main/resources/assets/betternether/models/item/basalt_stalactite.json new file mode 100644 index 0000000..1bdc392 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/basalt_stalactite.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/basalt_stalactite" + } +} diff --git a/src/main/resources/assets/betternether/models/item/black_apple.json b/src/main/resources/assets/betternether/models/item/black_apple.json new file mode 100644 index 0000000..a345cd1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/black_apple.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/black_apple" + } +} diff --git a/src/main/resources/assets/betternether/models/item/black_apple_seed.json b/src/main/resources/assets/betternether/models/item/black_apple_seed.json new file mode 100644 index 0000000..934ccb2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/black_apple_seed.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/black_apple_seed" + } +} diff --git a/src/main/resources/assets/betternether/models/item/black_bush.json b/src/main/resources/assets/betternether/models/item/black_bush.json new file mode 100644 index 0000000..2f6aa3c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/black_bush.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/black_bush_03" +} diff --git a/src/main/resources/assets/betternether/models/item/black_vine.json b/src/main/resources/assets/betternether/models/item/black_vine.json new file mode 100644 index 0000000..ff2cf47 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/black_vine.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/black_vine" + } +} diff --git a/src/main/resources/assets/betternether/models/item/blackstone_furnace.json b/src/main/resources/assets/betternether/models/item/blackstone_furnace.json new file mode 100644 index 0000000..2b929db --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/blackstone_furnace.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/blackstone_furnace" +} diff --git a/src/main/resources/assets/betternether/models/item/blackstone_stalactite.json b/src/main/resources/assets/betternether/models/item/blackstone_stalactite.json new file mode 100644 index 0000000..651244a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/blackstone_stalactite.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/blackstone_stalactite" + } +} diff --git a/src/main/resources/assets/betternether/models/item/blooming_vine.json b/src/main/resources/assets/betternether/models/item/blooming_vine.json new file mode 100644 index 0000000..474beb8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/blooming_vine.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/flowered_vine" + } +} diff --git a/src/main/resources/assets/betternether/models/item/blue_obsidian.json b/src/main/resources/assets/betternether/models/item/blue_obsidian.json new file mode 100644 index 0000000..574a109 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/blue_obsidian.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/blue_obsidian" +} diff --git a/src/main/resources/assets/betternether/models/item/blue_obsidian_bricks.json b/src/main/resources/assets/betternether/models/item/blue_obsidian_bricks.json new file mode 100644 index 0000000..32435c0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/blue_obsidian_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/blue_obsidian_bricks" +} diff --git a/src/main/resources/assets/betternether/models/item/blue_obsidian_bricks_slab.json b/src/main/resources/assets/betternether/models/item/blue_obsidian_bricks_slab.json new file mode 100644 index 0000000..23cd7c4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/blue_obsidian_bricks_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/blue_obsidian_bricks_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/blue_obsidian_bricks_stairs.json b/src/main/resources/assets/betternether/models/item/blue_obsidian_bricks_stairs.json new file mode 100644 index 0000000..2ea6e53 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/blue_obsidian_bricks_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/blue_obsidian_bricks_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/blue_obsidian_glass.json b/src/main/resources/assets/betternether/models/item/blue_obsidian_glass.json new file mode 100644 index 0000000..74f4d7a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/blue_obsidian_glass.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/blue_obsidian_glass" +} diff --git a/src/main/resources/assets/betternether/models/item/blue_obsidian_glass_pane.json b/src/main/resources/assets/betternether/models/item/blue_obsidian_glass_pane.json new file mode 100644 index 0000000..7a31d72 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/blue_obsidian_glass_pane.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/blue_obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/item/blue_obsidian_tile.json b/src/main/resources/assets/betternether/models/item/blue_obsidian_tile.json new file mode 100644 index 0000000..804f618 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/blue_obsidian_tile.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/blue_obsidian_tile" +} diff --git a/src/main/resources/assets/betternether/models/item/blue_obsidian_tile_slab.json b/src/main/resources/assets/betternether/models/item/blue_obsidian_tile_slab.json new file mode 100644 index 0000000..2403d60 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/blue_obsidian_tile_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/blue_obsidian_tile_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/blue_obsidian_tile_small.json b/src/main/resources/assets/betternether/models/item/blue_obsidian_tile_small.json new file mode 100644 index 0000000..918f72c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/blue_obsidian_tile_small.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/blue_obsidian_tile_small" +} diff --git a/src/main/resources/assets/betternether/models/item/blue_obsidian_tile_stairs.json b/src/main/resources/assets/betternether/models/item/blue_obsidian_tile_stairs.json new file mode 100644 index 0000000..10d73ee --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/blue_obsidian_tile_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/blue_obsidian_tile_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/bone_block.json b/src/main/resources/assets/betternether/models/item/bone_block.json new file mode 100644 index 0000000..994e415 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bone_block.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bone_block" +} diff --git a/src/main/resources/assets/betternether/models/item/bone_button.json b/src/main/resources/assets/betternether/models/item/bone_button.json new file mode 100644 index 0000000..0e280d0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bone_button.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bone_button_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/bone_cincinnasite_door.json b/src/main/resources/assets/betternether/models/item/bone_cincinnasite_door.json new file mode 100644 index 0000000..004adfb --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bone_cincinnasite_door.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/bone_cin_door" + } +} diff --git a/src/main/resources/assets/betternether/models/item/bone_grass.json b/src/main/resources/assets/betternether/models/item/bone_grass.json new file mode 100644 index 0000000..272c458 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bone_grass.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/bone_grass_1" + } +} diff --git a/src/main/resources/assets/betternether/models/item/bone_mushroom.json b/src/main/resources/assets/betternether/models/item/bone_mushroom.json new file mode 100644 index 0000000..1808d90 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bone_mushroom.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/bone_mushroom_spore" + } +} diff --git a/src/main/resources/assets/betternether/models/item/bone_plate.json b/src/main/resources/assets/betternether/models/item/bone_plate.json new file mode 100644 index 0000000..7bd4072 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bone_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bone_pressure_plate_up" +} diff --git a/src/main/resources/assets/betternether/models/item/bone_reed_door.json b/src/main/resources/assets/betternether/models/item/bone_reed_door.json new file mode 100644 index 0000000..3ab5250 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bone_reed_door.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/bone_reed_door" + } +} diff --git a/src/main/resources/assets/betternether/models/item/bone_slab.json b/src/main/resources/assets/betternether/models/item/bone_slab.json new file mode 100644 index 0000000..bc93cad --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bone_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bone_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/bone_stairs.json b/src/main/resources/assets/betternether/models/item/bone_stairs.json new file mode 100644 index 0000000..3f2486e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bone_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bone_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/bone_stalactite.json b/src/main/resources/assets/betternether/models/item/bone_stalactite.json new file mode 100644 index 0000000..41cb987 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bone_stalactite.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/bone_stalactite" + } +} diff --git a/src/main/resources/assets/betternether/models/item/bone_tile.json b/src/main/resources/assets/betternether/models/item/bone_tile.json new file mode 100644 index 0000000..94772bc --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bone_tile.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bone_tile" +} diff --git a/src/main/resources/assets/betternether/models/item/bone_wall.json b/src/main/resources/assets/betternether/models/item/bone_wall.json new file mode 100644 index 0000000..87103c8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bone_wall.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bone_post" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/brick_pot.json b/src/main/resources/assets/betternether/models/item/brick_pot.json new file mode 100644 index 0000000..95210c5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/brick_pot.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/brick_pot" +} diff --git a/src/main/resources/assets/betternether/models/item/bricks_fire_bowl.json b/src/main/resources/assets/betternether/models/item/bricks_fire_bowl.json new file mode 100644 index 0000000..d2cb24b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bricks_fire_bowl.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bricks_fire_bowl_off" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/bricks_fire_bowl_soul.json b/src/main/resources/assets/betternether/models/item/bricks_fire_bowl_soul.json new file mode 100644 index 0000000..f53cb71 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/bricks_fire_bowl_soul.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/bricks_fire_bowl_soul_off" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/ceiling_mushrooms.json b/src/main/resources/assets/betternether/models/item/ceiling_mushrooms.json new file mode 100644 index 0000000..540299e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/ceiling_mushrooms.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/ceiling_mushrooms" +} diff --git a/src/main/resources/assets/betternether/models/item/chair_acacia.json b/src/main/resources/assets/betternether/models/item/chair_acacia.json new file mode 100644 index 0000000..cff4ad2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_acacia.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_acacia", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_anchor_tree.json b/src/main/resources/assets/betternether/models/item/chair_anchor_tree.json new file mode 100644 index 0000000..75f12f0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_anchor_tree.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_anchor_tree", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} diff --git a/src/main/resources/assets/betternether/models/item/chair_birch.json b/src/main/resources/assets/betternether/models/item/chair_birch.json new file mode 100644 index 0000000..994bde2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_birch.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_birch", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_cincinnasite.json b/src/main/resources/assets/betternether/models/item/chair_cincinnasite.json new file mode 100644 index 0000000..e1728cf --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_cincinnasite.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_cincinnasite", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_crimson.json b/src/main/resources/assets/betternether/models/item/chair_crimson.json new file mode 100644 index 0000000..39c98ab --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_crimson.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_crimson", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_dark_oak.json b/src/main/resources/assets/betternether/models/item/chair_dark_oak.json new file mode 100644 index 0000000..d36c698 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_dark_oak.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_dark_oak", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_jungle.json b/src/main/resources/assets/betternether/models/item/chair_jungle.json new file mode 100644 index 0000000..1c76bc9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_jungle.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_jungle", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_mushroom.json b/src/main/resources/assets/betternether/models/item/chair_mushroom.json new file mode 100644 index 0000000..489efa0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_mushroom.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_mushroom", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_mushroom_fir.json b/src/main/resources/assets/betternether/models/item/chair_mushroom_fir.json new file mode 100644 index 0000000..1a80b5e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_mushroom_fir.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_mushroom_fir", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_nether_sakura.json b/src/main/resources/assets/betternether/models/item/chair_nether_sakura.json new file mode 100644 index 0000000..c1b00ff --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_nether_sakura.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_nether_sakura", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} diff --git a/src/main/resources/assets/betternether/models/item/chair_oak.json b/src/main/resources/assets/betternether/models/item/chair_oak.json new file mode 100644 index 0000000..1c14288 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_oak.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_oak", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_reeds.json b/src/main/resources/assets/betternether/models/item/chair_reeds.json new file mode 100644 index 0000000..0e548e7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_reeds.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_reeds", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_rubeus.json b/src/main/resources/assets/betternether/models/item/chair_rubeus.json new file mode 100644 index 0000000..8991bc6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_rubeus.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_rubeus", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_spruce.json b/src/main/resources/assets/betternether/models/item/chair_spruce.json new file mode 100644 index 0000000..02bba9c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_spruce.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_spruce", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_stalagnate.json b/src/main/resources/assets/betternether/models/item/chair_stalagnate.json new file mode 100644 index 0000000..59ff2d2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_stalagnate.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_stalagnate", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_warped.json b/src/main/resources/assets/betternether/models/item/chair_warped.json new file mode 100644 index 0000000..b9cb103 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_warped.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_warped", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_wart.json b/src/main/resources/assets/betternether/models/item/chair_wart.json new file mode 100644 index 0000000..aa76611 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_wart.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_wart", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chair_willow.json b/src/main/resources/assets/betternether/models/item/chair_willow.json new file mode 100644 index 0000000..ff4bbf3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chair_willow.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/chair_willow", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, -1.4, 0], + "scale":[ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chest_anchor_tree.json b/src/main/resources/assets/betternether/models/item/chest_anchor_tree.json new file mode 100644 index 0000000..5a4bbd6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chest_anchor_tree.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/chest_item", + "textures": { + "texture": "betternether:entity/chest/chest_anchor_tree" + } +} diff --git a/src/main/resources/assets/betternether/models/item/chest_crimson.json b/src/main/resources/assets/betternether/models/item/chest_crimson.json new file mode 100644 index 0000000..1b1ec49 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chest_crimson.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/chest_item", + "textures": { + "texture": "betternether:entity/chest/chest_crimson" + } +} diff --git a/src/main/resources/assets/betternether/models/item/chest_mushroom.json b/src/main/resources/assets/betternether/models/item/chest_mushroom.json new file mode 100644 index 0000000..d750086 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chest_mushroom.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/chest_item", + "textures": { + "texture": "betternether:entity/chest/chest_mushroom" + } +} diff --git a/src/main/resources/assets/betternether/models/item/chest_mushroom_fir.json b/src/main/resources/assets/betternether/models/item/chest_mushroom_fir.json new file mode 100644 index 0000000..0c059f4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chest_mushroom_fir.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/chest_item", + "textures": { + "texture": "betternether:entity/chest/chest_mushroom_fir" + } +} diff --git a/src/main/resources/assets/betternether/models/item/chest_nether_sakura.json b/src/main/resources/assets/betternether/models/item/chest_nether_sakura.json new file mode 100644 index 0000000..372bf48 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chest_nether_sakura.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/chest_item", + "textures": { + "texture": "betternether:entity/chest/chest_nether_sakura" + } +} diff --git a/src/main/resources/assets/betternether/models/item/chest_of_drawers.json b/src/main/resources/assets/betternether/models/item/chest_of_drawers.json new file mode 100644 index 0000000..2d63bfb --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chest_of_drawers.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/chest_of_drawers" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/chest_reed.json b/src/main/resources/assets/betternether/models/item/chest_reed.json new file mode 100644 index 0000000..805e4f3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chest_reed.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/chest_item", + "textures": { + "texture": "betternether:entity/chest/chest_reed" + } +} diff --git a/src/main/resources/assets/betternether/models/item/chest_rubeus.json b/src/main/resources/assets/betternether/models/item/chest_rubeus.json new file mode 100644 index 0000000..a40812e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chest_rubeus.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/chest_item", + "textures": { + "texture": "betternether:entity/chest/chest_rubeus" + } +} diff --git a/src/main/resources/assets/betternether/models/item/chest_stalagnate.json b/src/main/resources/assets/betternether/models/item/chest_stalagnate.json new file mode 100644 index 0000000..a273bd9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chest_stalagnate.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/chest_item", + "textures": { + "texture": "betternether:entity/chest/chest_stalagnate" + } +} diff --git a/src/main/resources/assets/betternether/models/item/chest_warped.json b/src/main/resources/assets/betternether/models/item/chest_warped.json new file mode 100644 index 0000000..71f7b4c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chest_warped.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/chest_item", + "textures": { + "texture": "betternether:entity/chest/chest_warped" + } +} diff --git a/src/main/resources/assets/betternether/models/item/chest_wart.json b/src/main/resources/assets/betternether/models/item/chest_wart.json new file mode 100644 index 0000000..3eb71b0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chest_wart.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/chest_item", + "textures": { + "texture": "betternether:entity/chest/chest_wart" + } +} diff --git a/src/main/resources/assets/betternether/models/item/chest_willow.json b/src/main/resources/assets/betternether/models/item/chest_willow.json new file mode 100644 index 0000000..19dc72b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/chest_willow.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/chest_item", + "textures": { + "texture": "betternether:entity/chest/chest_willow" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite.json b/src/main/resources/assets/betternether/models/item/cincinnasite.json new file mode 100644 index 0000000..934e638 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/cincinnasite" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_anvil.json b/src/main/resources/assets/betternether/models/item/cincinnasite_anvil.json new file mode 100644 index 0000000..cf70051 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_anvil.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_anvil" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_axe.json b/src/main/resources/assets/betternether/models/item/cincinnasite_axe.json new file mode 100644 index 0000000..d478c6a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_axe.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_axe" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_axe_diamond.json b/src/main/resources/assets/betternether/models/item/cincinnasite_axe_diamond.json new file mode 100644 index 0000000..669fa7c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_axe_diamond.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_axe_diamond" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_bars.json b/src/main/resources/assets/betternether/models/item/cincinnasite_bars.json new file mode 100644 index 0000000..8dc460f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_bars.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/cincinnasite_bars" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_block.json b/src/main/resources/assets/betternether/models/item/cincinnasite_block.json new file mode 100644 index 0000000..91fbb6b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_block.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_block" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_boots.json b/src/main/resources/assets/betternether/models/item/cincinnasite_boots.json new file mode 100644 index 0000000..34c308b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_boots.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/cincinnasite_boots" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_brick_plate.json b/src/main/resources/assets/betternether/models/item/cincinnasite_brick_plate.json new file mode 100644 index 0000000..eeed6e0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_brick_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_brick_plate" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_bricks.json b/src/main/resources/assets/betternether/models/item/cincinnasite_bricks.json new file mode 100644 index 0000000..2f538c6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_bricks" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_bricks_pillar.json b/src/main/resources/assets/betternether/models/item/cincinnasite_bricks_pillar.json new file mode 100644 index 0000000..133cf38 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_bricks_pillar.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_bricks_pillar" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_button.json b/src/main/resources/assets/betternether/models/item/cincinnasite_button.json new file mode 100644 index 0000000..77565cd --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_button.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_button_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_carved.json b/src/main/resources/assets/betternether/models/item/cincinnasite_carved.json new file mode 100644 index 0000000..c165f5f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_carved.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_carved" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_chain.json b/src/main/resources/assets/betternether/models/item/cincinnasite_chain.json new file mode 100644 index 0000000..b5529b5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_chain.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/cincinnasite_chain" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_chestplate.json b/src/main/resources/assets/betternether/models/item/cincinnasite_chestplate.json new file mode 100644 index 0000000..9b217c6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/cincinnasite_chestplate" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_excavator.json b/src/main/resources/assets/betternether/models/item/cincinnasite_excavator.json new file mode 100644 index 0000000..129d1af --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_excavator.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_excavator" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_excavator_diamond.json b/src/main/resources/assets/betternether/models/item/cincinnasite_excavator_diamond.json new file mode 100644 index 0000000..ee75c28 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_excavator_diamond.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_excavator_diamond" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_fire_bowl.json b/src/main/resources/assets/betternether/models/item/cincinnasite_fire_bowl.json new file mode 100644 index 0000000..14eb6a0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_fire_bowl.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_fire_bowl_off" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_fire_bowl_soul.json b/src/main/resources/assets/betternether/models/item/cincinnasite_fire_bowl_soul.json new file mode 100644 index 0000000..89783eb --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_fire_bowl_soul.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_fire_bowl_soul_off" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_forge.json b/src/main/resources/assets/betternether/models/item/cincinnasite_forge.json new file mode 100644 index 0000000..61d2eb6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_forge.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_forge" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_forged.json b/src/main/resources/assets/betternether/models/item/cincinnasite_forged.json new file mode 100644 index 0000000..49bcbb3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_forged.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_forged" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_frame.json b/src/main/resources/assets/betternether/models/item/cincinnasite_frame.json new file mode 100644 index 0000000..93e0a59 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_frame.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_frame" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_hammer.json b/src/main/resources/assets/betternether/models/item/cincinnasite_hammer.json new file mode 100644 index 0000000..ef535a4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_hammer.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_hammer" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_hammer_diamond.json b/src/main/resources/assets/betternether/models/item/cincinnasite_hammer_diamond.json new file mode 100644 index 0000000..09ed133 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_hammer_diamond.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_hammer_diamond" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_helmet.json b/src/main/resources/assets/betternether/models/item/cincinnasite_helmet.json new file mode 100644 index 0000000..1b74e39 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/cincinnasite_helmet" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_hoe.json b/src/main/resources/assets/betternether/models/item/cincinnasite_hoe.json new file mode 100644 index 0000000..ba47e5c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_hoe.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_hoe" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_hoe_diamond.json b/src/main/resources/assets/betternether/models/item/cincinnasite_hoe_diamond.json new file mode 100644 index 0000000..836344e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_hoe_diamond.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_hoe_diamond" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_ingot.json b/src/main/resources/assets/betternether/models/item/cincinnasite_ingot.json new file mode 100644 index 0000000..89512ba --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_ingot.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/cincinnasite_ingot" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_lantern.json b/src/main/resources/assets/betternether/models/item/cincinnasite_lantern.json new file mode 100644 index 0000000..17a0441 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_lantern.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_lantern" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_lantern_small.json b/src/main/resources/assets/betternether/models/item/cincinnasite_lantern_small.json new file mode 100644 index 0000000..1a7da1f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_lantern_small.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_lantern_floor" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_leggings.json b/src/main/resources/assets/betternether/models/item/cincinnasite_leggings.json new file mode 100644 index 0000000..08b8346 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/cincinnasite_leggings" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_ore.json b/src/main/resources/assets/betternether/models/item/cincinnasite_ore.json new file mode 100644 index 0000000..d219364 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_ore.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_ore" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_pedestal.json b/src/main/resources/assets/betternether/models/item/cincinnasite_pedestal.json new file mode 100644 index 0000000..de52a15 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_pedestal.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_pedestal" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_pickaxe.json b/src/main/resources/assets/betternether/models/item/cincinnasite_pickaxe.json new file mode 100644 index 0000000..141d80f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_pickaxe.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_pickaxe" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_pickaxe_diamond.json b/src/main/resources/assets/betternether/models/item/cincinnasite_pickaxe_diamond.json new file mode 100644 index 0000000..2b2d3ac --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_pickaxe_diamond.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_pickaxe_diamond" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_pillar.json b/src/main/resources/assets/betternether/models/item/cincinnasite_pillar.json new file mode 100644 index 0000000..02dbdc2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_pillar.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_pillar_small" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_plate.json b/src/main/resources/assets/betternether/models/item/cincinnasite_plate.json new file mode 100644 index 0000000..e907798 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_pressure_plate_up" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_pot.json b/src/main/resources/assets/betternether/models/item/cincinnasite_pot.json new file mode 100644 index 0000000..9eb7dac --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_pot.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_pot" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_shears.json b/src/main/resources/assets/betternether/models/item/cincinnasite_shears.json new file mode 100644 index 0000000..551f9e4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_shears.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betternether:item/cincinnasite_shears" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_shovel.json b/src/main/resources/assets/betternether/models/item/cincinnasite_shovel.json new file mode 100644 index 0000000..38169cc --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_shovel.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_shovel" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_shovel_diamond.json b/src/main/resources/assets/betternether/models/item/cincinnasite_shovel_diamond.json new file mode 100644 index 0000000..15db684 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_shovel_diamond.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_shovel_diamond" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_slab.json b/src/main/resources/assets/betternether/models/item/cincinnasite_slab.json new file mode 100644 index 0000000..4ae652c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_stairs.json b/src/main/resources/assets/betternether/models/item/cincinnasite_stairs.json new file mode 100644 index 0000000..17959d4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_sword.json b/src/main/resources/assets/betternether/models/item/cincinnasite_sword.json new file mode 100644 index 0000000..ff8466e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_sword.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_sword" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_sword_diamond.json b/src/main/resources/assets/betternether/models/item/cincinnasite_sword_diamond.json new file mode 100644 index 0000000..ffd4b2b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_sword_diamond.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/cincinnasite_sword_diamond" + } +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_tile_large.json b/src/main/resources/assets/betternether/models/item/cincinnasite_tile_large.json new file mode 100644 index 0000000..bf638d3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_tile_large.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_tile_large" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_tile_small.json b/src/main/resources/assets/betternether/models/item/cincinnasite_tile_small.json new file mode 100644 index 0000000..0404b9b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_tile_small.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_tile_small" +} diff --git a/src/main/resources/assets/betternether/models/item/cincinnasite_wall.json b/src/main/resources/assets/betternether/models/item/cincinnasite_wall.json new file mode 100644 index 0000000..636341d --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/cincinnasite_wall.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/cincinnasite_post" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/crafting_table_anchor_tree.json b/src/main/resources/assets/betternether/models/item/crafting_table_anchor_tree.json new file mode 100644 index 0000000..bb78bdc --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/crafting_table_anchor_tree.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/crafting_table_anchor_tree" +} diff --git a/src/main/resources/assets/betternether/models/item/crafting_table_crimson.json b/src/main/resources/assets/betternether/models/item/crafting_table_crimson.json new file mode 100644 index 0000000..4a67f14 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/crafting_table_crimson.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/crafting_table_crimson" +} diff --git a/src/main/resources/assets/betternether/models/item/crafting_table_mushroom.json b/src/main/resources/assets/betternether/models/item/crafting_table_mushroom.json new file mode 100644 index 0000000..b5e71d0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/crafting_table_mushroom.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/crafting_table_mushroom" +} diff --git a/src/main/resources/assets/betternether/models/item/crafting_table_mushroom_fir.json b/src/main/resources/assets/betternether/models/item/crafting_table_mushroom_fir.json new file mode 100644 index 0000000..a78236b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/crafting_table_mushroom_fir.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/crafting_table_mushroom_fir" +} diff --git a/src/main/resources/assets/betternether/models/item/crafting_table_nether_sakura.json b/src/main/resources/assets/betternether/models/item/crafting_table_nether_sakura.json new file mode 100644 index 0000000..55e38ad --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/crafting_table_nether_sakura.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/crafting_table_nether_sakura" +} diff --git a/src/main/resources/assets/betternether/models/item/crafting_table_reed.json b/src/main/resources/assets/betternether/models/item/crafting_table_reed.json new file mode 100644 index 0000000..2360da8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/crafting_table_reed.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/crafting_table_reed" +} diff --git a/src/main/resources/assets/betternether/models/item/crafting_table_rubeus.json b/src/main/resources/assets/betternether/models/item/crafting_table_rubeus.json new file mode 100644 index 0000000..63df47e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/crafting_table_rubeus.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/crafting_table_rubeus" +} diff --git a/src/main/resources/assets/betternether/models/item/crafting_table_stalagnate.json b/src/main/resources/assets/betternether/models/item/crafting_table_stalagnate.json new file mode 100644 index 0000000..e2b60e6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/crafting_table_stalagnate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/crafting_table_stalagnate" +} diff --git a/src/main/resources/assets/betternether/models/item/crafting_table_warped.json b/src/main/resources/assets/betternether/models/item/crafting_table_warped.json new file mode 100644 index 0000000..d907c28 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/crafting_table_warped.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/crafting_table_warped" +} diff --git a/src/main/resources/assets/betternether/models/item/crafting_table_wart.json b/src/main/resources/assets/betternether/models/item/crafting_table_wart.json new file mode 100644 index 0000000..a3af624 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/crafting_table_wart.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/crafting_table_wart" +} diff --git a/src/main/resources/assets/betternether/models/item/crafting_table_willow.json b/src/main/resources/assets/betternether/models/item/crafting_table_willow.json new file mode 100644 index 0000000..918ed41 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/crafting_table_willow.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/crafting_table_willow" +} diff --git a/src/main/resources/assets/betternether/models/item/crimson_ladder.json b/src/main/resources/assets/betternether/models/item/crimson_ladder.json new file mode 100644 index 0000000..2dc6fbe --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/crimson_ladder.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/crimson_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/item/egg_plant.json b/src/main/resources/assets/betternether/models/item/egg_plant.json new file mode 100644 index 0000000..0b1afe9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/egg_plant.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/egg_plant_item" +} diff --git a/src/main/resources/assets/betternether/models/item/eye_seed.json b/src/main/resources/assets/betternether/models/item/eye_seed.json new file mode 100644 index 0000000..42bfc78 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/eye_seed.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/eye_seed" + } +} diff --git a/src/main/resources/assets/betternether/models/item/eyeball.json b/src/main/resources/assets/betternether/models/item/eyeball.json new file mode 100644 index 0000000..c253650 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/eyeball.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/block_eyeball" +} diff --git a/src/main/resources/assets/betternether/models/item/eyeball_small.json b/src/main/resources/assets/betternether/models/item/eyeball_small.json new file mode 100644 index 0000000..c48a462 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/eyeball_small.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/block_eyeball_small" +} diff --git a/src/main/resources/assets/betternether/models/item/farmland.json b/src/main/resources/assets/betternether/models/item/farmland.json new file mode 100644 index 0000000..c4667bb --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/farmland.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/farmland" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/feather_fern.json b/src/main/resources/assets/betternether/models/item/feather_fern.json new file mode 100644 index 0000000..7cbb787 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/feather_fern.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/feather_fern" + } +} diff --git a/src/main/resources/assets/betternether/models/item/geyser.json b/src/main/resources/assets/betternether/models/item/geyser.json new file mode 100644 index 0000000..250d941 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/geyser.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/geyser" + } +} diff --git a/src/main/resources/assets/betternether/models/item/giant_lucis.json b/src/main/resources/assets/betternether/models/item/giant_lucis.json new file mode 100644 index 0000000..9c25c11 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/giant_lucis.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/giant_lucis_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/giant_mold_sapling.json b/src/main/resources/assets/betternether/models/item/giant_mold_sapling.json new file mode 100644 index 0000000..40b7973 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/giant_mold_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/giant_mold_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/item/glowstone_pile.json b/src/main/resources/assets/betternether/models/item/glowstone_pile.json new file mode 100644 index 0000000..14bdb22 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/glowstone_pile.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/glowstone_pile" + } +} diff --git a/src/main/resources/assets/betternether/models/item/glowstone_stalactite.json b/src/main/resources/assets/betternether/models/item/glowstone_stalactite.json new file mode 100644 index 0000000..39131a7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/glowstone_stalactite.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/glowstone_stalactite" + } +} diff --git a/src/main/resources/assets/betternether/models/item/golden_lumabus_seed.json b/src/main/resources/assets/betternether/models/item/golden_lumabus_seed.json new file mode 100644 index 0000000..7cdb106 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/golden_lumabus_seed.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/golden_lumabus_seed" + } +} diff --git a/src/main/resources/assets/betternether/models/item/golden_vine.json b/src/main/resources/assets/betternether/models/item/golden_vine.json new file mode 100644 index 0000000..ef836d7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/golden_vine.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/golden_vine" + } +} diff --git a/src/main/resources/assets/betternether/models/item/gray_mold.json b/src/main/resources/assets/betternether/models/item/gray_mold.json new file mode 100644 index 0000000..c69d446 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/gray_mold.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/gray_mold" + } +} diff --git a/src/main/resources/assets/betternether/models/item/herbal_medicine.json b/src/main/resources/assets/betternether/models/item/herbal_medicine.json new file mode 100644 index 0000000..5056c34 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/herbal_medicine.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/herbal_medicine" + } +} diff --git a/src/main/resources/assets/betternether/models/item/hook_mushroom.json b/src/main/resources/assets/betternether/models/item/hook_mushroom.json new file mode 100644 index 0000000..036f141 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/hook_mushroom.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/hook_mushroom_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/hook_mushroom_cooked.json b/src/main/resources/assets/betternether/models/item/hook_mushroom_cooked.json new file mode 100644 index 0000000..fb3a082 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/hook_mushroom_cooked.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/hook_mushroom_food" + } +} diff --git a/src/main/resources/assets/betternether/models/item/ink_bush_seed.json b/src/main/resources/assets/betternether/models/item/ink_bush_seed.json new file mode 100644 index 0000000..f50e068 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/ink_bush_seed.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/ink_bush_seed" + } +} diff --git a/src/main/resources/assets/betternether/models/item/jellyfish_mushroom_sapling.json b/src/main/resources/assets/betternether/models/item/jellyfish_mushroom_sapling.json new file mode 100644 index 0000000..f6f1c1d --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/jellyfish_mushroom_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/jellyfish_mushroom_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/item/jungle_grass.json b/src/main/resources/assets/betternether/models/item/jungle_grass.json new file mode 100644 index 0000000..688a998 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/jungle_grass.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/jungle_grass" +} diff --git a/src/main/resources/assets/betternether/models/item/jungle_moss.json b/src/main/resources/assets/betternether/models/item/jungle_moss.json new file mode 100644 index 0000000..2896a51 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/jungle_moss.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/jungle_moss" + } +} diff --git a/src/main/resources/assets/betternether/models/item/jungle_plant.json b/src/main/resources/assets/betternether/models/item/jungle_plant.json new file mode 100644 index 0000000..de31de2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/jungle_plant.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/jungle_plant_1" + } +} diff --git a/src/main/resources/assets/betternether/models/item/lapis_pile.json b/src/main/resources/assets/betternether/models/item/lapis_pile.json new file mode 100644 index 0000000..0d6d223 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/lapis_pile.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/lapis_pile" + } +} diff --git a/src/main/resources/assets/betternether/models/item/lucis_spore.json b/src/main/resources/assets/betternether/models/item/lucis_spore.json new file mode 100644 index 0000000..090c8b1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/lucis_spore.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/lucis_spore" + } +} diff --git a/src/main/resources/assets/betternether/models/item/lumabus_seed.json b/src/main/resources/assets/betternether/models/item/lumabus_seed.json new file mode 100644 index 0000000..a976d74 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/lumabus_seed.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/lumabus_seed" + } +} diff --git a/src/main/resources/assets/betternether/models/item/magma_flower.json b/src/main/resources/assets/betternether/models/item/magma_flower.json new file mode 100644 index 0000000..6de5147 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/magma_flower.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/magma_flower_seed" + } +} diff --git a/src/main/resources/assets/betternether/models/item/moss_cover.json b/src/main/resources/assets/betternether/models/item/moss_cover.json new file mode 100644 index 0000000..92a7831 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/moss_cover.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/moss_cover" + } +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_button.json b/src/main/resources/assets/betternether/models/item/mushroom_button.json new file mode 100644 index 0000000..05b589e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_button.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_button_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_door.json b/src/main/resources/assets/betternether/models/item/mushroom_door.json new file mode 100644 index 0000000..e7b6c2e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_door.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/mushroom_door" + } +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fence.json b/src/main/resources/assets/betternether/models/item/mushroom_fence.json new file mode 100644 index 0000000..603fe94 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_fence_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_button.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_button.json new file mode 100644 index 0000000..11e404e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_button.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_fir_button_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_door.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_door.json new file mode 100644 index 0000000..1a68824 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_door.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/mushroom_fir_door" + } +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_fence.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_fence.json new file mode 100644 index 0000000..fe0dde6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_fir_fence_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_gate.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_gate.json new file mode 100644 index 0000000..ca202d5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_fir_fence_gate_closed" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_ladder.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_ladder.json new file mode 100644 index 0000000..632f906 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_ladder.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/mushroom_fir_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_log.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_log.json new file mode 100644 index 0000000..3bc6342 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_log.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_fir_log" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_planks.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_planks.json new file mode 100644 index 0000000..9c7810d --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_planks.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_fir_planks" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_plate.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_plate.json new file mode 100644 index 0000000..0f87692 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_fir_pressure_plate_up" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_sapling.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_sapling.json new file mode 100644 index 0000000..8599e44 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/mushroom_fir_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_slab.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_slab.json new file mode 100644 index 0000000..6595fec --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_fir_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_stairs.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_stairs.json new file mode 100644 index 0000000..b132945 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_fir_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_stem.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_stem.json new file mode 100644 index 0000000..f714cba --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_stem.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_fir_trunk_middle" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_trapdoor.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_trapdoor.json new file mode 100644 index 0000000..b50ec4e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_trapdoor.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_fir_trapdoor" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_fir_wood.json b/src/main/resources/assets/betternether/models/item/mushroom_fir_wood.json new file mode 100644 index 0000000..b60312f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_fir_wood.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_fir_wood" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_gate.json b/src/main/resources/assets/betternether/models/item/mushroom_gate.json new file mode 100644 index 0000000..4fffb47 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_fence_gate_closed" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_grass.json b/src/main/resources/assets/betternether/models/item/mushroom_grass.json new file mode 100644 index 0000000..2d6e383 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_grass.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_grass" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_ladder.json b/src/main/resources/assets/betternether/models/item/mushroom_ladder.json new file mode 100644 index 0000000..c716af8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_ladder.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/mushroom_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_planks.json b/src/main/resources/assets/betternether/models/item/mushroom_planks.json new file mode 100644 index 0000000..b94bccb --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_planks.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_planks" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_plate.json b/src/main/resources/assets/betternether/models/item/mushroom_plate.json new file mode 100644 index 0000000..568845c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_pressure_plate_up" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_slab.json b/src/main/resources/assets/betternether/models/item/mushroom_slab.json new file mode 100644 index 0000000..eb362ee --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_stairs.json b/src/main/resources/assets/betternether/models/item/mushroom_stairs.json new file mode 100644 index 0000000..2d67aef --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_stem.json b/src/main/resources/assets/betternether/models/item/mushroom_stem.json new file mode 100644 index 0000000..bcdfacc --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_stem.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_stem" +} diff --git a/src/main/resources/assets/betternether/models/item/mushroom_trapdoor.json b/src/main/resources/assets/betternether/models/item/mushroom_trapdoor.json new file mode 100644 index 0000000..c3049cf --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/mushroom_trapdoor.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/mushroom_trapdoor" +} diff --git a/src/main/resources/assets/betternether/models/item/neon_equisetum.json b/src/main/resources/assets/betternether/models/item/neon_equisetum.json new file mode 100644 index 0000000..5f87788 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/neon_equisetum.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/neon_equisetum_bottom" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_brewing_stand.json b/src/main/resources/assets/betternether/models/item/nether_brewing_stand.json new file mode 100644 index 0000000..5942a2c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_brewing_stand.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/nether_brewing_stand" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_brick_tile_large.json b/src/main/resources/assets/betternether/models/item/nether_brick_tile_large.json new file mode 100644 index 0000000..817956d --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_brick_tile_large.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_brick_tile_large" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_brick_tile_slab.json b/src/main/resources/assets/betternether/models/item/nether_brick_tile_slab.json new file mode 100644 index 0000000..b8e8107 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_brick_tile_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_brick_tile_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_brick_tile_small.json b/src/main/resources/assets/betternether/models/item/nether_brick_tile_small.json new file mode 100644 index 0000000..5b24761 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_brick_tile_small.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_brick_tile_small" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_brick_tile_stairs.json b/src/main/resources/assets/betternether/models/item/nether_brick_tile_stairs.json new file mode 100644 index 0000000..77be973 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_brick_tile_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_brick_tile_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_brick_wall.json b/src/main/resources/assets/betternether/models/item/nether_brick_wall.json new file mode 100644 index 0000000..2a7860e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_brick_wall.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_brick_post" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/nether_cactus.json b/src/main/resources/assets/betternether/models/item/nether_cactus.json new file mode 100644 index 0000000..443f560 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_cactus.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_cactus_middle" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_grass.json b/src/main/resources/assets/betternether/models/item/nether_grass.json new file mode 100644 index 0000000..9edbe38 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_grass.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/ngrass_1" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_lapis_ore.json b/src/main/resources/assets/betternether/models/item/nether_lapis_ore.json new file mode 100644 index 0000000..0eadb0e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_lapis_ore.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_lapis_ore" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/nether_mycelium.json b/src/main/resources/assets/betternether/models/item/nether_mycelium.json new file mode 100644 index 0000000..66e20eb --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_mycelium.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_mycelium" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_reed.json b/src/main/resources/assets/betternether/models/item/nether_reed.json new file mode 100644 index 0000000..4b7513e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_reed.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/nether_reed" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby.json b/src/main/resources/assets/betternether/models/item/nether_ruby.json new file mode 100644 index 0000000..80240fd --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/nether_ruby" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_axe.json b/src/main/resources/assets/betternether/models/item/nether_ruby_axe.json new file mode 100644 index 0000000..c1947fd --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_axe.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/nether_ruby_axe" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_block.json b/src/main/resources/assets/betternether/models/item/nether_ruby_block.json new file mode 100644 index 0000000..e190993 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_block.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_ruby_block" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_boots.json b/src/main/resources/assets/betternether/models/item/nether_ruby_boots.json new file mode 100644 index 0000000..fb24acb --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_boots.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/nether_ruby_boots" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_chestplate.json b/src/main/resources/assets/betternether/models/item/nether_ruby_chestplate.json new file mode 100644 index 0000000..8390617 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/nether_ruby_chestplate" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_excavator.json b/src/main/resources/assets/betternether/models/item/nether_ruby_excavator.json new file mode 100644 index 0000000..b4d70ca --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_excavator.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/nether_ruby_excavator" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_hammer.json b/src/main/resources/assets/betternether/models/item/nether_ruby_hammer.json new file mode 100644 index 0000000..b9fffcf --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_hammer.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/nether_ruby_hammer" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_helmet.json b/src/main/resources/assets/betternether/models/item/nether_ruby_helmet.json new file mode 100644 index 0000000..4b216de --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/nether_ruby_helmet" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_hoe.json b/src/main/resources/assets/betternether/models/item/nether_ruby_hoe.json new file mode 100644 index 0000000..535e8e8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_hoe.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/nether_ruby_hoe" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_leggings.json b/src/main/resources/assets/betternether/models/item/nether_ruby_leggings.json new file mode 100644 index 0000000..4295bcd --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/nether_ruby_leggings" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_ore.json b/src/main/resources/assets/betternether/models/item/nether_ruby_ore.json new file mode 100644 index 0000000..29dddb4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_ore.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_ruby_ore" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_pickaxe.json b/src/main/resources/assets/betternether/models/item/nether_ruby_pickaxe.json new file mode 100644 index 0000000..13db0c6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_pickaxe.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/nether_ruby_pickaxe" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_shovel.json b/src/main/resources/assets/betternether/models/item/nether_ruby_shovel.json new file mode 100644 index 0000000..802b45a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_shovel.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/nether_ruby_shovel" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_slab.json b/src/main/resources/assets/betternether/models/item/nether_ruby_slab.json new file mode 100644 index 0000000..cd1a44d --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/ruby_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_stairs.json b/src/main/resources/assets/betternether/models/item/nether_ruby_stairs.json new file mode 100644 index 0000000..a6011e2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/ruby_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_ruby_sword.json b/src/main/resources/assets/betternether/models/item/nether_ruby_sword.json new file mode 100644 index 0000000..925ba55 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_ruby_sword.json @@ -0,0 +1,6 @@ +{ + "parent": "item/handheld", + "textures": { + "layer0": "betternether:item/nether_ruby_sword" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_bark.json b/src/main/resources/assets/betternether/models/item/nether_sakura_bark.json new file mode 100644 index 0000000..b01a812 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_bark.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_sakura_bark" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_button.json b/src/main/resources/assets/betternether/models/item/nether_sakura_button.json new file mode 100644 index 0000000..3824cad --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_button.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_sakura_button_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_door.json b/src/main/resources/assets/betternether/models/item/nether_sakura_door.json new file mode 100644 index 0000000..03e3bdd --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_door.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/nether_sakura_door" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_fence.json b/src/main/resources/assets/betternether/models/item/nether_sakura_fence.json new file mode 100644 index 0000000..64ddf31 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_sakura_fence_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_gate.json b/src/main/resources/assets/betternether/models/item/nether_sakura_gate.json new file mode 100644 index 0000000..81ced70 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_sakura_fence_gate_closed" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_ladder.json b/src/main/resources/assets/betternether/models/item/nether_sakura_ladder.json new file mode 100644 index 0000000..ffbccf2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_ladder.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/nether_sakura_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_leaves.json b/src/main/resources/assets/betternether/models/item/nether_sakura_leaves.json new file mode 100644 index 0000000..0862637 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_leaves.json @@ -0,0 +1,15 @@ +{ + "parent": "betternether:block/nether_sakura_leaves", + "display": { + "gui": { + "rotation": [ 30, 45, 0 ], + "translation": [ 0, 0.0, 0], + "scale":[ 0.5, 0.5, 0.5 ] + }, + "fixed": { + "rotation": [ 0, 0, 0 ], + "translation": [ 0, 0, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + } + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_log.json b/src/main/resources/assets/betternether/models/item/nether_sakura_log.json new file mode 100644 index 0000000..4bd0192 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_log.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_sakura_log" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_planks.json b/src/main/resources/assets/betternether/models/item/nether_sakura_planks.json new file mode 100644 index 0000000..1fed474 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_planks.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_sakura_planks" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_plate.json b/src/main/resources/assets/betternether/models/item/nether_sakura_plate.json new file mode 100644 index 0000000..bc51d7a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_sakura_pressure_plate_up" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_sapling.json b/src/main/resources/assets/betternether/models/item/nether_sakura_sapling.json new file mode 100644 index 0000000..3020ff2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/nether_sakura_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_slab.json b/src/main/resources/assets/betternether/models/item/nether_sakura_slab.json new file mode 100644 index 0000000..7f18f9c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_sakura_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_stairs.json b/src/main/resources/assets/betternether/models/item/nether_sakura_stairs.json new file mode 100644 index 0000000..fea9c35 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_sakura_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/nether_sakura_trapdoor.json b/src/main/resources/assets/betternether/models/item/nether_sakura_trapdoor.json new file mode 100644 index 0000000..097a2ad --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/nether_sakura_trapdoor.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/nether_sakura_trapdoor" +} diff --git a/src/main/resources/assets/betternether/models/item/netherite_fire_bowl.json b/src/main/resources/assets/betternether/models/item/netherite_fire_bowl.json new file mode 100644 index 0000000..6e46d7d --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/netherite_fire_bowl.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/netherite_fire_bowl_off" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/netherite_fire_bowl_soul.json b/src/main/resources/assets/betternether/models/item/netherite_fire_bowl_soul.json new file mode 100644 index 0000000..396ff54 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/netherite_fire_bowl_soul.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/netherite_fire_bowl_soul_off" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/netherrack_furnace.json b/src/main/resources/assets/betternether/models/item/netherrack_furnace.json new file mode 100644 index 0000000..91f1fe1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/netherrack_furnace.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/netherrack_furnace" +} diff --git a/src/main/resources/assets/betternether/models/item/netherrack_moss.json b/src/main/resources/assets/betternether/models/item/netherrack_moss.json new file mode 100644 index 0000000..a0a23cf --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/netherrack_moss.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/netherrack_moss" +} diff --git a/src/main/resources/assets/betternether/models/item/netherrack_stalactite.json b/src/main/resources/assets/betternether/models/item/netherrack_stalactite.json new file mode 100644 index 0000000..853cc49 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/netherrack_stalactite.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/netherrack_stalactite" + } +} diff --git a/src/main/resources/assets/betternether/models/item/obsidian_bricks.json b/src/main/resources/assets/betternether/models/item/obsidian_bricks.json new file mode 100644 index 0000000..323cc73 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/obsidian_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/obsidian_bricks" +} diff --git a/src/main/resources/assets/betternether/models/item/obsidian_bricks_slab.json b/src/main/resources/assets/betternether/models/item/obsidian_bricks_slab.json new file mode 100644 index 0000000..b88cdeb --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/obsidian_bricks_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/obsidian_bricks_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/obsidian_bricks_stairs.json b/src/main/resources/assets/betternether/models/item/obsidian_bricks_stairs.json new file mode 100644 index 0000000..a7123de --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/obsidian_bricks_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/obsidian_bricks_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/obsidian_glass.json b/src/main/resources/assets/betternether/models/item/obsidian_glass.json new file mode 100644 index 0000000..8ca6c65 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/obsidian_glass.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/obsidian_glass" +} diff --git a/src/main/resources/assets/betternether/models/item/obsidian_glass_pane.json b/src/main/resources/assets/betternether/models/item/obsidian_glass_pane.json new file mode 100644 index 0000000..c9c385e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/obsidian_glass_pane.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/obsidian_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/item/obsidian_tile.json b/src/main/resources/assets/betternether/models/item/obsidian_tile.json new file mode 100644 index 0000000..a05e483 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/obsidian_tile.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/obsidian_tile" +} diff --git a/src/main/resources/assets/betternether/models/item/obsidian_tile_slab.json b/src/main/resources/assets/betternether/models/item/obsidian_tile_slab.json new file mode 100644 index 0000000..e74ad56 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/obsidian_tile_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/obsidian_tile_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/obsidian_tile_small.json b/src/main/resources/assets/betternether/models/item/obsidian_tile_small.json new file mode 100644 index 0000000..743e6d0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/obsidian_tile_small.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/obsidian_tile_small" +} diff --git a/src/main/resources/assets/betternether/models/item/obsidian_tile_stairs.json b/src/main/resources/assets/betternether/models/item/obsidian_tile_stairs.json new file mode 100644 index 0000000..0a88c2a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/obsidian_tile_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/obsidian_tile_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/orange_mushroom.json b/src/main/resources/assets/betternether/models/item/orange_mushroom.json new file mode 100644 index 0000000..67da0ed --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/orange_mushroom.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/orange_mushroom_04" +} diff --git a/src/main/resources/assets/betternether/models/item/pig_statue_respawner.json b/src/main/resources/assets/betternether/models/item/pig_statue_respawner.json new file mode 100644 index 0000000..7ab4310 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/pig_statue_respawner.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/pig_statue_01" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass.json b/src/main/resources/assets/betternether/models/item/quartz_glass.json new file mode 100644 index 0000000..7f4a1ab --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass.json @@ -0,0 +1,6 @@ +{ + "parent": "betternether:block/quartz_glass", + "textures": { + "all": "betternether:item/quartz_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_black.json b/src/main/resources/assets/betternether/models/item/quartz_glass_black.json new file mode 100644 index 0000000..57a70aa --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_black.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_black" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_blue.json b/src/main/resources/assets/betternether/models/item/quartz_glass_blue.json new file mode 100644 index 0000000..72f314b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_blue.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_blue" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_brown.json b/src/main/resources/assets/betternether/models/item/quartz_glass_brown.json new file mode 100644 index 0000000..7cca65a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_brown.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_brown" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_cyan.json b/src/main/resources/assets/betternether/models/item/quartz_glass_cyan.json new file mode 100644 index 0000000..7110b70 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_cyan.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_cyan" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed.json new file mode 100644 index 0000000..4632e1f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_black.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_black.json new file mode 100644 index 0000000..fccfb86 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_black.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_black" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_blue.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_blue.json new file mode 100644 index 0000000..5c46f5c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_blue.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_blue" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_brown.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_brown.json new file mode 100644 index 0000000..adb54e4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_brown.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_brown" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_cyan.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_cyan.json new file mode 100644 index 0000000..9e20e79 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_cyan.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_cyan" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_gray.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_gray.json new file mode 100644 index 0000000..0771afe --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_gray.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_gray" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_green.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_green.json new file mode 100644 index 0000000..f4050a2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_green.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_green" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_light_blue.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_light_blue.json new file mode 100644 index 0000000..34df2ed --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_light_blue.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_light_blue" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_light_gray.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_light_gray.json new file mode 100644 index 0000000..5fe5eff --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_light_gray.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_light_gray" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_lime.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_lime.json new file mode 100644 index 0000000..c1e4925 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_lime.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_lime" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_magenta.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_magenta.json new file mode 100644 index 0000000..1e5b8be --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_magenta.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_magenta" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_orange.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_orange.json new file mode 100644 index 0000000..6b81412 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_orange.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_orange" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane.json new file mode 100644 index 0000000..4b0eb5e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/quartz_glass_framed" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_black.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_black.json new file mode 100644 index 0000000..1d3eb3f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_black.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_black" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_blue.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_blue.json new file mode 100644 index 0000000..329a32a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_brown.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_brown.json new file mode 100644 index 0000000..8657b59 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_brown.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_cyan.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_cyan.json new file mode 100644 index 0000000..e5cdb08 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_cyan.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_gray.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_gray.json new file mode 100644 index 0000000..82b2888 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_green.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_green.json new file mode 100644 index 0000000..f12ce9f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_green.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_green" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_light_blue.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_light_blue.json new file mode 100644 index 0000000..cb18549 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_light_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_light_gray.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_light_gray.json new file mode 100644 index 0000000..fc3bdaf --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_light_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_lime.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_lime.json new file mode 100644 index 0000000..bc80b24 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_lime.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_magenta.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_magenta.json new file mode 100644 index 0000000..2336e7a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_magenta.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_orange.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_orange.json new file mode 100644 index 0000000..15c0a4a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_orange.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_pink.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_pink.json new file mode 100644 index 0000000..1f2129b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_purple.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_purple.json new file mode 100644 index 0000000..64d40e2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_red.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_red.json new file mode 100644 index 0000000..74c581b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_red.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_red" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_white.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_white.json new file mode 100644 index 0000000..3e08733 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_white.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_white" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_yellow.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_yellow.json new file mode 100644 index 0000000..014b7d0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pane_yellow.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_framed_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pink.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pink.json new file mode 100644 index 0000000..13b320d --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_pink.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_pink" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_purple.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_purple.json new file mode 100644 index 0000000..01d45c7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_purple.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_purple" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_red.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_red.json new file mode 100644 index 0000000..a0f1ae7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_red.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_red" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_white.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_white.json new file mode 100644 index 0000000..a651fc6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_white.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_white" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_framed_yellow.json b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_yellow.json new file mode 100644 index 0000000..c149899 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_framed_yellow.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_framed_yellow" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_gray.json b/src/main/resources/assets/betternether/models/item/quartz_glass_gray.json new file mode 100644 index 0000000..1578e07 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_gray.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_gray" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_green.json b/src/main/resources/assets/betternether/models/item/quartz_glass_green.json new file mode 100644 index 0000000..627f1f2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_green.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_green" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_light_blue.json b/src/main/resources/assets/betternether/models/item/quartz_glass_light_blue.json new file mode 100644 index 0000000..caefb7d --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_light_blue.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_light_blue" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_light_gray.json b/src/main/resources/assets/betternether/models/item/quartz_glass_light_gray.json new file mode 100644 index 0000000..9f0244a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_light_gray.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_light_gray" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_lime.json b/src/main/resources/assets/betternether/models/item/quartz_glass_lime.json new file mode 100644 index 0000000..5c5038a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_lime.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_lime" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_magenta.json b/src/main/resources/assets/betternether/models/item/quartz_glass_magenta.json new file mode 100644 index 0000000..ae08c57 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_magenta.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_magenta" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_orange.json b/src/main/resources/assets/betternether/models/item/quartz_glass_orange.json new file mode 100644 index 0000000..2679243 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_orange.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_orange" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane.json new file mode 100644 index 0000000..6d8302b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/quartz_glass" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_black.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_black.json new file mode 100644 index 0000000..3c99820 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_black.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_black" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_blue.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_blue.json new file mode 100644 index 0000000..39edddb --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_brown.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_brown.json new file mode 100644 index 0000000..4482a21 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_brown.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_brown" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_cyan.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_cyan.json new file mode 100644 index 0000000..fcb2d63 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_cyan.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_cyan" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_gray.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_gray.json new file mode 100644 index 0000000..4dd5fd5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_green.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_green.json new file mode 100644 index 0000000..a7ef871 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_green.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_green" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_light_blue.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_light_blue.json new file mode 100644 index 0000000..bacec32 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_light_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_light_blue" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_light_gray.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_light_gray.json new file mode 100644 index 0000000..3f8fd8a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_light_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_light_gray" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_lime.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_lime.json new file mode 100644 index 0000000..f31e1d9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_lime.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_lime" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_magenta.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_magenta.json new file mode 100644 index 0000000..6156ae8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_magenta.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_magenta" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_orange.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_orange.json new file mode 100644 index 0000000..ec111b5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_orange.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_orange" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_pink.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_pink.json new file mode 100644 index 0000000..f1b9be6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_pink" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_purple.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_purple.json new file mode 100644 index 0000000..ede3732 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_purple" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_red.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_red.json new file mode 100644 index 0000000..2cb324b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_red.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_red" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_white.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_white.json new file mode 100644 index 0000000..3b8ed0f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_white.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_white" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pane_yellow.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_yellow.json new file mode 100644 index 0000000..6dd1995 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pane_yellow.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/quartz_stained_glass_yellow" + } +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_pink.json b/src/main/resources/assets/betternether/models/item/quartz_glass_pink.json new file mode 100644 index 0000000..97da468 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_pink.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_pink" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_purple.json b/src/main/resources/assets/betternether/models/item/quartz_glass_purple.json new file mode 100644 index 0000000..b701656 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_purple.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_purple" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_red.json b/src/main/resources/assets/betternether/models/item/quartz_glass_red.json new file mode 100644 index 0000000..3f8948c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_red.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_red" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_white.json b/src/main/resources/assets/betternether/models/item/quartz_glass_white.json new file mode 100644 index 0000000..c8e399e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_white.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_white" +} diff --git a/src/main/resources/assets/betternether/models/item/quartz_glass_yellow.json b/src/main/resources/assets/betternether/models/item/quartz_glass_yellow.json new file mode 100644 index 0000000..5419713 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/quartz_glass_yellow.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/quartz_glass_yellow" +} diff --git a/src/main/resources/assets/betternether/models/item/red_mold.json b/src/main/resources/assets/betternether/models/item/red_mold.json new file mode 100644 index 0000000..eaded3a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/red_mold.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/red_mold_item" +} diff --git a/src/main/resources/assets/betternether/models/item/reeds_block.json b/src/main/resources/assets/betternether/models/item/reeds_block.json new file mode 100644 index 0000000..f84b25e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/reeds_block.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/reeds_block" +} diff --git a/src/main/resources/assets/betternether/models/item/reeds_button.json b/src/main/resources/assets/betternether/models/item/reeds_button.json new file mode 100644 index 0000000..2a0a758 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/reeds_button.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/reeds_button_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/reeds_door.json b/src/main/resources/assets/betternether/models/item/reeds_door.json new file mode 100644 index 0000000..1e8e1c8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/reeds_door.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/reeds_door" + } +} diff --git a/src/main/resources/assets/betternether/models/item/reeds_fence.json b/src/main/resources/assets/betternether/models/item/reeds_fence.json new file mode 100644 index 0000000..a0efc3b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/reeds_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/reeds_fence_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/reeds_gate.json b/src/main/resources/assets/betternether/models/item/reeds_gate.json new file mode 100644 index 0000000..35a64b9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/reeds_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/reeds_fence_gate_closed" +} diff --git a/src/main/resources/assets/betternether/models/item/reeds_ladder.json b/src/main/resources/assets/betternether/models/item/reeds_ladder.json new file mode 100644 index 0000000..ad5c3ec --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/reeds_ladder.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/reeds_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/item/reeds_plate.json b/src/main/resources/assets/betternether/models/item/reeds_plate.json new file mode 100644 index 0000000..5c526d1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/reeds_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/reeds_pressure_plate_up" +} diff --git a/src/main/resources/assets/betternether/models/item/reeds_slab.json b/src/main/resources/assets/betternether/models/item/reeds_slab.json new file mode 100644 index 0000000..4877a9d --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/reeds_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/reeds_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/reeds_stairs.json b/src/main/resources/assets/betternether/models/item/reeds_stairs.json new file mode 100644 index 0000000..318cccb --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/reeds_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/reeds_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/reeds_trapdoor.json b/src/main/resources/assets/betternether/models/item/reeds_trapdoor.json new file mode 100644 index 0000000..b953441 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/reeds_trapdoor.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/reeds_trapdoor" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_cincinnasite.json b/src/main/resources/assets/betternether/models/item/roof_tile_cincinnasite.json new file mode 100644 index 0000000..da7b1a8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_cincinnasite.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_cincinnasite" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_cincinnasite_slab.json b/src/main/resources/assets/betternether/models/item/roof_tile_cincinnasite_slab.json new file mode 100644 index 0000000..522a500 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_cincinnasite_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_cincinnasite_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_cincinnasite_stairs.json b/src/main/resources/assets/betternether/models/item/roof_tile_cincinnasite_stairs.json new file mode 100644 index 0000000..3f8a609 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_cincinnasite_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_cincinnasite_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_nether_bricks.json b/src/main/resources/assets/betternether/models/item/roof_tile_nether_bricks.json new file mode 100644 index 0000000..a337580 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_nether_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_nether_bricks" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_nether_bricks_slab.json b/src/main/resources/assets/betternether/models/item/roof_tile_nether_bricks_slab.json new file mode 100644 index 0000000..f220f6b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_nether_bricks_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_nether_bricks_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_nether_bricks_stairs.json b/src/main/resources/assets/betternether/models/item/roof_tile_nether_bricks_stairs.json new file mode 100644 index 0000000..693e129 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_nether_bricks_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_nether_bricks_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_reeds.json b/src/main/resources/assets/betternether/models/item/roof_tile_reeds.json new file mode 100644 index 0000000..655a199 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_reeds.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_reeds" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_reeds_slab.json b/src/main/resources/assets/betternether/models/item/roof_tile_reeds_slab.json new file mode 100644 index 0000000..3112c58 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_reeds_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_reeds_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_reeds_stairs.json b/src/main/resources/assets/betternether/models/item/roof_tile_reeds_stairs.json new file mode 100644 index 0000000..5ad9ec7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_reeds_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_reeds_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_stalagnate.json b/src/main/resources/assets/betternether/models/item/roof_tile_stalagnate.json new file mode 100644 index 0000000..b40144a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_stalagnate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_stalagnate" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_stalagnate_slab.json b/src/main/resources/assets/betternether/models/item/roof_tile_stalagnate_slab.json new file mode 100644 index 0000000..325515a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_stalagnate_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_stalagnate_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_stalagnate_stairs.json b/src/main/resources/assets/betternether/models/item/roof_tile_stalagnate_stairs.json new file mode 100644 index 0000000..7d47eac --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_stalagnate_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_stalagnate_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_wart.json b/src/main/resources/assets/betternether/models/item/roof_tile_wart.json new file mode 100644 index 0000000..84c3990 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_wart.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_wart" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_wart_slab.json b/src/main/resources/assets/betternether/models/item/roof_tile_wart_slab.json new file mode 100644 index 0000000..412a113 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_wart_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_wart_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_wart_stairs.json b/src/main/resources/assets/betternether/models/item/roof_tile_wart_stairs.json new file mode 100644 index 0000000..1a32fe1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_wart_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_wart_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_willow.json b/src/main/resources/assets/betternether/models/item/roof_tile_willow.json new file mode 100644 index 0000000..15abbb6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_willow.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_willow" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_willow_slab.json b/src/main/resources/assets/betternether/models/item/roof_tile_willow_slab.json new file mode 100644 index 0000000..4a7db54 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_willow_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_willow_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/roof_tile_willow_stairs.json b/src/main/resources/assets/betternether/models/item/roof_tile_willow_stairs.json new file mode 100644 index 0000000..b843b82 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/roof_tile_willow_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/roof_tile_willow_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_bark.json b/src/main/resources/assets/betternether/models/item/rubeus_bark.json new file mode 100644 index 0000000..1f8332b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_bark.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/rubeus_bark" +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_button.json b/src/main/resources/assets/betternether/models/item/rubeus_button.json new file mode 100644 index 0000000..4eca13f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_button.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/rubeus_button_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_cone.json b/src/main/resources/assets/betternether/models/item/rubeus_cone.json new file mode 100644 index 0000000..5040735 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_cone.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/rubeus_cone" +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_door.json b/src/main/resources/assets/betternether/models/item/rubeus_door.json new file mode 100644 index 0000000..c82985a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_door.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/rubeus_door" + } +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_fence.json b/src/main/resources/assets/betternether/models/item/rubeus_fence.json new file mode 100644 index 0000000..b483952 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/rubeus_fence_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_gate.json b/src/main/resources/assets/betternether/models/item/rubeus_gate.json new file mode 100644 index 0000000..e257f17 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/rubeus_fence_gate_closed" +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_ladder.json b/src/main/resources/assets/betternether/models/item/rubeus_ladder.json new file mode 100644 index 0000000..e77999b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_ladder.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/rubeus_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_leaves.json b/src/main/resources/assets/betternether/models/item/rubeus_leaves.json new file mode 100644 index 0000000..da90947 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_leaves.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/rubeus_leaves" +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_log.json b/src/main/resources/assets/betternether/models/item/rubeus_log.json new file mode 100644 index 0000000..1d3dcfe --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_log.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/rubeus_log" +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_planks.json b/src/main/resources/assets/betternether/models/item/rubeus_planks.json new file mode 100644 index 0000000..34b8d91 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_planks.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/rubeus_planks" +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_plate.json b/src/main/resources/assets/betternether/models/item/rubeus_plate.json new file mode 100644 index 0000000..f166817 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/rubeus_pressure_plate_up" +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_sapling.json b/src/main/resources/assets/betternether/models/item/rubeus_sapling.json new file mode 100644 index 0000000..e80064f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/rubeus_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_slab.json b/src/main/resources/assets/betternether/models/item/rubeus_slab.json new file mode 100644 index 0000000..4f2fae4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/rubeus_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_stairs.json b/src/main/resources/assets/betternether/models/item/rubeus_stairs.json new file mode 100644 index 0000000..5f571ef --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/rubeus_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/rubeus_trapdoor.json b/src/main/resources/assets/betternether/models/item/rubeus_trapdoor.json new file mode 100644 index 0000000..4035dba --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/rubeus_trapdoor.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/rubeus_trapdoor" +} diff --git a/src/main/resources/assets/betternether/models/item/sepia_bone_grass.json b/src/main/resources/assets/betternether/models/item/sepia_bone_grass.json new file mode 100644 index 0000000..4b02829 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/sepia_bone_grass.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/sepia_bone_grass_1" + } +} diff --git a/src/main/resources/assets/betternether/models/item/sepia_mushroom_grass.json b/src/main/resources/assets/betternether/models/item/sepia_mushroom_grass.json new file mode 100644 index 0000000..0c70ed9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/sepia_mushroom_grass.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/sepia_mushroom_grass" +} diff --git a/src/main/resources/assets/betternether/models/item/sign_anchor_tree.json b/src/main/resources/assets/betternether/models/item/sign_anchor_tree.json new file mode 100644 index 0000000..0aa77bd --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/sign_anchor_tree.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/sign_anchor_tree" + } +} diff --git a/src/main/resources/assets/betternether/models/item/sign_mushroom.json b/src/main/resources/assets/betternether/models/item/sign_mushroom.json new file mode 100644 index 0000000..ae78f54 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/sign_mushroom.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/sign_mushroom" + } +} diff --git a/src/main/resources/assets/betternether/models/item/sign_mushroom_fir.json b/src/main/resources/assets/betternether/models/item/sign_mushroom_fir.json new file mode 100644 index 0000000..cd26949 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/sign_mushroom_fir.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/sign_mushroom_fir" + } +} diff --git a/src/main/resources/assets/betternether/models/item/sign_nether_sakura.json b/src/main/resources/assets/betternether/models/item/sign_nether_sakura.json new file mode 100644 index 0000000..5ca9901 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/sign_nether_sakura.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/sign_nether_sakura" + } +} diff --git a/src/main/resources/assets/betternether/models/item/sign_reed.json b/src/main/resources/assets/betternether/models/item/sign_reed.json new file mode 100644 index 0000000..25378ae --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/sign_reed.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/sign_reed" + } +} diff --git a/src/main/resources/assets/betternether/models/item/sign_rubeus.json b/src/main/resources/assets/betternether/models/item/sign_rubeus.json new file mode 100644 index 0000000..644a6d6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/sign_rubeus.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/sign_rubeus" + } +} diff --git a/src/main/resources/assets/betternether/models/item/sign_stalagnate.json b/src/main/resources/assets/betternether/models/item/sign_stalagnate.json new file mode 100644 index 0000000..434fb0a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/sign_stalagnate.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/sign_stalagnate" + } +} diff --git a/src/main/resources/assets/betternether/models/item/sign_wart.json b/src/main/resources/assets/betternether/models/item/sign_wart.json new file mode 100644 index 0000000..7e38b8e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/sign_wart.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/sign_wart" + } +} diff --git a/src/main/resources/assets/betternether/models/item/sign_willow.json b/src/main/resources/assets/betternether/models/item/sign_willow.json new file mode 100644 index 0000000..8a1f37c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/sign_willow.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/sign_willow" + } +} diff --git a/src/main/resources/assets/betternether/models/item/smoker.json b/src/main/resources/assets/betternether/models/item/smoker.json new file mode 100644 index 0000000..585ca7e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/smoker.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/smoker_top" +} diff --git a/src/main/resources/assets/betternether/models/item/soul_grass.json b/src/main/resources/assets/betternether/models/item/soul_grass.json new file mode 100644 index 0000000..8aeca0a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_grass.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/soul_grass_01" + } +} diff --git a/src/main/resources/assets/betternether/models/item/soul_lily_sapling.json b/src/main/resources/assets/betternether/models/item/soul_lily_sapling.json new file mode 100644 index 0000000..036065c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_lily_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/soul_lily_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/item/soul_sandstone.json b/src/main/resources/assets/betternether/models/item/soul_sandstone.json new file mode 100644 index 0000000..d66312f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_sandstone.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/soul_sandstone" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/soul_sandstone_chiseled.json b/src/main/resources/assets/betternether/models/item/soul_sandstone_chiseled.json new file mode 100644 index 0000000..506eb4f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_sandstone_chiseled.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/soul_sandstone_chiseled" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/soul_sandstone_cut.json b/src/main/resources/assets/betternether/models/item/soul_sandstone_cut.json new file mode 100644 index 0000000..f89f88f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_sandstone_cut.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/soul_sandstone_cut" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/soul_sandstone_cut_slab.json b/src/main/resources/assets/betternether/models/item/soul_sandstone_cut_slab.json new file mode 100644 index 0000000..5687b7c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_sandstone_cut_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/soul_sandstone_cut_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/soul_sandstone_cut_stairs.json b/src/main/resources/assets/betternether/models/item/soul_sandstone_cut_stairs.json new file mode 100644 index 0000000..dee146c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_sandstone_cut_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/soul_sandstone_cut_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/soul_sandstone_slab.json b/src/main/resources/assets/betternether/models/item/soul_sandstone_slab.json new file mode 100644 index 0000000..a9be611 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_sandstone_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/soul_sandstone_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/soul_sandstone_smooth.json b/src/main/resources/assets/betternether/models/item/soul_sandstone_smooth.json new file mode 100644 index 0000000..39dfe5c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_sandstone_smooth.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/soul_sandstone_smooth" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/soul_sandstone_smooth_slab.json b/src/main/resources/assets/betternether/models/item/soul_sandstone_smooth_slab.json new file mode 100644 index 0000000..76531ef --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_sandstone_smooth_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/soul_sandstone_smooth_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/soul_sandstone_smooth_stairs.json b/src/main/resources/assets/betternether/models/item/soul_sandstone_smooth_stairs.json new file mode 100644 index 0000000..3f75d85 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_sandstone_smooth_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/soul_sandstone_smooth_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/soul_sandstone_stairs.json b/src/main/resources/assets/betternether/models/item/soul_sandstone_stairs.json new file mode 100644 index 0000000..68a3456 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_sandstone_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/soul_sandstone_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/soul_sandstone_wall.json b/src/main/resources/assets/betternether/models/item/soul_sandstone_wall.json new file mode 100644 index 0000000..22ece03 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_sandstone_wall.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/soul_sandstone_post" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/soul_vein.json b/src/main/resources/assets/betternether/models/item/soul_vein.json new file mode 100644 index 0000000..080d711 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/soul_vein.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/soul_vein" + } +} diff --git a/src/main/resources/assets/betternether/models/item/spawn_egg_firefly.json b/src/main/resources/assets/betternether/models/item/spawn_egg_firefly.json new file mode 100644 index 0000000..765225c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/spawn_egg_firefly.json @@ -0,0 +1,3 @@ +{ + "parent": "item/template_spawn_egg" +} diff --git a/src/main/resources/assets/betternether/models/item/spawn_egg_flying_pig.json b/src/main/resources/assets/betternether/models/item/spawn_egg_flying_pig.json new file mode 100644 index 0000000..765225c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/spawn_egg_flying_pig.json @@ -0,0 +1,3 @@ +{ + "parent": "item/template_spawn_egg" +} diff --git a/src/main/resources/assets/betternether/models/item/spawn_egg_hydrogen_jellyfish.json b/src/main/resources/assets/betternether/models/item/spawn_egg_hydrogen_jellyfish.json new file mode 100644 index 0000000..765225c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/spawn_egg_hydrogen_jellyfish.json @@ -0,0 +1,3 @@ +{ + "parent": "item/template_spawn_egg" +} diff --git a/src/main/resources/assets/betternether/models/item/spawn_egg_jungle_skeleton.json b/src/main/resources/assets/betternether/models/item/spawn_egg_jungle_skeleton.json new file mode 100644 index 0000000..765225c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/spawn_egg_jungle_skeleton.json @@ -0,0 +1,3 @@ +{ + "parent": "item/template_spawn_egg" +} diff --git a/src/main/resources/assets/betternether/models/item/spawn_egg_naga.json b/src/main/resources/assets/betternether/models/item/spawn_egg_naga.json new file mode 100644 index 0000000..765225c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/spawn_egg_naga.json @@ -0,0 +1,3 @@ +{ + "parent": "item/template_spawn_egg" +} diff --git a/src/main/resources/assets/betternether/models/item/spawn_egg_skull.json b/src/main/resources/assets/betternether/models/item/spawn_egg_skull.json new file mode 100644 index 0000000..765225c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/spawn_egg_skull.json @@ -0,0 +1,3 @@ +{ + "parent": "item/template_spawn_egg" +} diff --git a/src/main/resources/assets/betternether/models/item/spawn_naga.json b/src/main/resources/assets/betternether/models/item/spawn_naga.json new file mode 100644 index 0000000..765225c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/spawn_naga.json @@ -0,0 +1,3 @@ +{ + "parent": "item/template_spawn_egg" +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_bark.json b/src/main/resources/assets/betternether/models/item/stalagnate_bark.json new file mode 100644 index 0000000..bf11fa2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_bark.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/stalagnate_bark" +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_bowl.json b/src/main/resources/assets/betternether/models/item/stalagnate_bowl.json new file mode 100644 index 0000000..bd5017b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_bowl.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/stalagnate_bowl" + } +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_bowl_apple.json b/src/main/resources/assets/betternether/models/item/stalagnate_bowl_apple.json new file mode 100644 index 0000000..859f252 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_bowl_apple.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/stalagnate_bowl_apple" + } +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_bowl_mushroom.json b/src/main/resources/assets/betternether/models/item/stalagnate_bowl_mushroom.json new file mode 100644 index 0000000..9ea9361 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_bowl_mushroom.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/stalagnate_bowl_mushroom" + } +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_bowl_wart.json b/src/main/resources/assets/betternether/models/item/stalagnate_bowl_wart.json new file mode 100644 index 0000000..c471395 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_bowl_wart.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/stalagnate_bowl_wart" + } +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_ladder.json b/src/main/resources/assets/betternether/models/item/stalagnate_ladder.json new file mode 100644 index 0000000..7d6b430 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_ladder.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/stalagnate_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_log.json b/src/main/resources/assets/betternether/models/item/stalagnate_log.json new file mode 100644 index 0000000..16f7d5b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_log.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/stalagnate_log" +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_planks.json b/src/main/resources/assets/betternether/models/item/stalagnate_planks.json new file mode 100644 index 0000000..9bf2fe3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_planks.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/stalagnate_planks" +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_planks_button.json b/src/main/resources/assets/betternether/models/item/stalagnate_planks_button.json new file mode 100644 index 0000000..1bef008 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_planks_button.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/stalagnate_button_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_planks_door.json b/src/main/resources/assets/betternether/models/item/stalagnate_planks_door.json new file mode 100644 index 0000000..583e16f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_planks_door.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/stalagnate_planks_door" + } +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_planks_fence.json b/src/main/resources/assets/betternether/models/item/stalagnate_planks_fence.json new file mode 100644 index 0000000..37e599b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_planks_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/stalagnate_fence_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_planks_gate.json b/src/main/resources/assets/betternether/models/item/stalagnate_planks_gate.json new file mode 100644 index 0000000..f5559b9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_planks_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/stalagnate_fence_gate_closed" +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_planks_plate.json b/src/main/resources/assets/betternether/models/item/stalagnate_planks_plate.json new file mode 100644 index 0000000..765f537 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_planks_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/stalagnate_pressure_plate_up" +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_planks_slab.json b/src/main/resources/assets/betternether/models/item/stalagnate_planks_slab.json new file mode 100644 index 0000000..adc8863 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_planks_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/stalagnate_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_planks_stairs.json b/src/main/resources/assets/betternether/models/item/stalagnate_planks_stairs.json new file mode 100644 index 0000000..29a0e6a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_planks_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/stalagnate_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_planks_trapdoor.json b/src/main/resources/assets/betternether/models/item/stalagnate_planks_trapdoor.json new file mode 100644 index 0000000..c1d26b6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_planks_trapdoor.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/stalagnate_planks_trapdoor" +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_seed.json b/src/main/resources/assets/betternether/models/item/stalagnate_seed.json new file mode 100644 index 0000000..b1d23e0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_seed.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/stalagnate_seed" + } +} diff --git a/src/main/resources/assets/betternether/models/item/stalagnate_stem.json b/src/main/resources/assets/betternether/models/item/stalagnate_stem.json new file mode 100644 index 0000000..5f4567a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/stalagnate_stem.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/stalagnate_stem_1" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_bark_anchor_tree.json b/src/main/resources/assets/betternether/models/item/striped_bark_anchor_tree.json new file mode 100644 index 0000000..dd05469 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_bark_anchor_tree.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_bark_anchor_tree_1" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_bark_nether_sakura.json b/src/main/resources/assets/betternether/models/item/striped_bark_nether_sakura.json new file mode 100644 index 0000000..f2faa5f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_bark_nether_sakura.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_bark_nether_sakura" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_bark_rubeus.json b/src/main/resources/assets/betternether/models/item/striped_bark_rubeus.json new file mode 100644 index 0000000..c6a4bc4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_bark_rubeus.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_bark_rubeus" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_bark_stalagnate.json b/src/main/resources/assets/betternether/models/item/striped_bark_stalagnate.json new file mode 100644 index 0000000..421c43f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_bark_stalagnate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_bark_stalagnate" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_bark_wart.json b/src/main/resources/assets/betternether/models/item/striped_bark_wart.json new file mode 100644 index 0000000..e2d6e21 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_bark_wart.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_bark_wart" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_bark_willow.json b/src/main/resources/assets/betternether/models/item/striped_bark_willow.json new file mode 100644 index 0000000..d093dc8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_bark_willow.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_bark_willow" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_log_anchor_tree.json b/src/main/resources/assets/betternether/models/item/striped_log_anchor_tree.json new file mode 100644 index 0000000..2fad5e9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_log_anchor_tree.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_log_anchor_tree_1" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_log_mushroom_fir.json b/src/main/resources/assets/betternether/models/item/striped_log_mushroom_fir.json new file mode 100644 index 0000000..5c21381 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_log_mushroom_fir.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_log_mushroom_fir" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_log_nether_sakura.json b/src/main/resources/assets/betternether/models/item/striped_log_nether_sakura.json new file mode 100644 index 0000000..390c7da --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_log_nether_sakura.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_log_nether_sakura" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_log_rubeus.json b/src/main/resources/assets/betternether/models/item/striped_log_rubeus.json new file mode 100644 index 0000000..ec5338c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_log_rubeus.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_log_rubeus" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_log_stalagnate.json b/src/main/resources/assets/betternether/models/item/striped_log_stalagnate.json new file mode 100644 index 0000000..d99f94a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_log_stalagnate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_log_stalagnate" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_log_wart.json b/src/main/resources/assets/betternether/models/item/striped_log_wart.json new file mode 100644 index 0000000..0b7ab64 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_log_wart.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_log_wart" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_log_willow.json b/src/main/resources/assets/betternether/models/item/striped_log_willow.json new file mode 100644 index 0000000..7382e39 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_log_willow.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_log_willow" +} diff --git a/src/main/resources/assets/betternether/models/item/striped_wood_mushroom_fir.json b/src/main/resources/assets/betternether/models/item/striped_wood_mushroom_fir.json new file mode 100644 index 0000000..93540e7 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/striped_wood_mushroom_fir.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/striped_wood_mushroom_fir" +} diff --git a/src/main/resources/assets/betternether/models/item/swamp_grass.json b/src/main/resources/assets/betternether/models/item/swamp_grass.json new file mode 100644 index 0000000..28aae4b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/swamp_grass.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/swamp_grass_1" + } +} diff --git a/src/main/resources/assets/betternether/models/item/swampland_grass.json b/src/main/resources/assets/betternether/models/item/swampland_grass.json new file mode 100644 index 0000000..273e24a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/swampland_grass.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/swampland_grass" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_acacia.json b/src/main/resources/assets/betternether/models/item/taburet_acacia.json new file mode 100644 index 0000000..c12aad3 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_acacia.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_acacia" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_anchor_tree.json b/src/main/resources/assets/betternether/models/item/taburet_anchor_tree.json new file mode 100644 index 0000000..1f2f15e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_anchor_tree.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_anchor_tree" +} diff --git a/src/main/resources/assets/betternether/models/item/taburet_birch.json b/src/main/resources/assets/betternether/models/item/taburet_birch.json new file mode 100644 index 0000000..1a69159 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_birch.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_birch" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_cincinnasite.json b/src/main/resources/assets/betternether/models/item/taburet_cincinnasite.json new file mode 100644 index 0000000..d02e61f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_cincinnasite.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_cincinnasite" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_crimson.json b/src/main/resources/assets/betternether/models/item/taburet_crimson.json new file mode 100644 index 0000000..cbdc7cb --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_crimson.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_crimson" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_dark_oak.json b/src/main/resources/assets/betternether/models/item/taburet_dark_oak.json new file mode 100644 index 0000000..b30fe09 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_dark_oak.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_dark_oak" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_jungle.json b/src/main/resources/assets/betternether/models/item/taburet_jungle.json new file mode 100644 index 0000000..7f31301 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_jungle.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_jungle" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_mushroom.json b/src/main/resources/assets/betternether/models/item/taburet_mushroom.json new file mode 100644 index 0000000..8c53b97 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_mushroom.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_mushroom" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_mushroom_fir.json b/src/main/resources/assets/betternether/models/item/taburet_mushroom_fir.json new file mode 100644 index 0000000..a184c81 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_mushroom_fir.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_mushroom_fir" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_nether_sakura.json b/src/main/resources/assets/betternether/models/item/taburet_nether_sakura.json new file mode 100644 index 0000000..74e363b --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_nether_sakura.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_nether_sakura" +} diff --git a/src/main/resources/assets/betternether/models/item/taburet_oak.json b/src/main/resources/assets/betternether/models/item/taburet_oak.json new file mode 100644 index 0000000..35308b0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_oak.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_oak" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_reeds.json b/src/main/resources/assets/betternether/models/item/taburet_reeds.json new file mode 100644 index 0000000..d8743ec --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_reeds.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_reeds" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_rubeus.json b/src/main/resources/assets/betternether/models/item/taburet_rubeus.json new file mode 100644 index 0000000..d8f0244 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_rubeus.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_rubeus" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_spruce.json b/src/main/resources/assets/betternether/models/item/taburet_spruce.json new file mode 100644 index 0000000..02147b0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_spruce.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_spruce" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_stalagnate.json b/src/main/resources/assets/betternether/models/item/taburet_stalagnate.json new file mode 100644 index 0000000..689bbb2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_stalagnate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_stalagnate" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_warped.json b/src/main/resources/assets/betternether/models/item/taburet_warped.json new file mode 100644 index 0000000..957cd08 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_warped.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_warped" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_wart.json b/src/main/resources/assets/betternether/models/item/taburet_wart.json new file mode 100644 index 0000000..951a7b2 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_wart.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_wart" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/taburet_willow.json b/src/main/resources/assets/betternether/models/item/taburet_willow.json new file mode 100644 index 0000000..be58a5c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/taburet_willow.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/taburet_willow" +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/wall_moss.json b/src/main/resources/assets/betternether/models/item/wall_moss.json new file mode 100644 index 0000000..fc1d71f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wall_moss.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/wall_moss" + } +} diff --git a/src/main/resources/assets/betternether/models/item/wall_mushroom_brown.json b/src/main/resources/assets/betternether/models/item/wall_mushroom_brown.json new file mode 100644 index 0000000..cfdc562 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wall_mushroom_brown.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/wall_mushroom_brown" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/wall_mushroom_red.json b/src/main/resources/assets/betternether/models/item/wall_mushroom_red.json new file mode 100644 index 0000000..7633c1c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wall_mushroom_red.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/wall_mushroom_red" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/warped_ladder.json b/src/main/resources/assets/betternether/models/item/warped_ladder.json new file mode 100644 index 0000000..763c82e --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/warped_ladder.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/warped_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/item/wart_bark.json b/src/main/resources/assets/betternether/models/item/wart_bark.json new file mode 100644 index 0000000..88f3339 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wart_bark.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/wart_bark" +} diff --git a/src/main/resources/assets/betternether/models/item/wart_button.json b/src/main/resources/assets/betternether/models/item/wart_button.json new file mode 100644 index 0000000..cf494a0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wart_button.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/wart_button_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/wart_door.json b/src/main/resources/assets/betternether/models/item/wart_door.json new file mode 100644 index 0000000..527e333 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wart_door.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/wart_door" + } +} diff --git a/src/main/resources/assets/betternether/models/item/wart_fence.json b/src/main/resources/assets/betternether/models/item/wart_fence.json new file mode 100644 index 0000000..1fe0b43 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wart_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/wart_fence_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/wart_gate.json b/src/main/resources/assets/betternether/models/item/wart_gate.json new file mode 100644 index 0000000..7b1553f --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wart_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/wart_fence_gate_closed" +} diff --git a/src/main/resources/assets/betternether/models/item/wart_ladder.json b/src/main/resources/assets/betternether/models/item/wart_ladder.json new file mode 100644 index 0000000..ae93766 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wart_ladder.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/wart_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/item/wart_log.json b/src/main/resources/assets/betternether/models/item/wart_log.json new file mode 100644 index 0000000..49993c8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wart_log.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/wart_log" +} diff --git a/src/main/resources/assets/betternether/models/item/wart_planks.json b/src/main/resources/assets/betternether/models/item/wart_planks.json new file mode 100644 index 0000000..1d1b8c8 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wart_planks.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/wart_planks" +} diff --git a/src/main/resources/assets/betternether/models/item/wart_plate.json b/src/main/resources/assets/betternether/models/item/wart_plate.json new file mode 100644 index 0000000..4946bc6 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wart_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/wart_pressure_plate_up" +} diff --git a/src/main/resources/assets/betternether/models/item/wart_seed.json b/src/main/resources/assets/betternether/models/item/wart_seed.json new file mode 100644 index 0000000..cd635cf --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wart_seed.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/wart_seed_03" +} diff --git a/src/main/resources/assets/betternether/models/item/wart_slab.json b/src/main/resources/assets/betternether/models/item/wart_slab.json new file mode 100644 index 0000000..e73a5cd --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wart_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/wart_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/wart_stairs.json b/src/main/resources/assets/betternether/models/item/wart_stairs.json new file mode 100644 index 0000000..922e72d --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wart_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/wart_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/wart_trapdoor.json b/src/main/resources/assets/betternether/models/item/wart_trapdoor.json new file mode 100644 index 0000000..daba94c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/wart_trapdoor.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/wart_trapdoor" +} diff --git a/src/main/resources/assets/betternether/models/item/whispering_gourd.json b/src/main/resources/assets/betternether/models/item/whispering_gourd.json new file mode 100644 index 0000000..681e1e4 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/whispering_gourd.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/whispering_gourd" +} diff --git a/src/main/resources/assets/betternether/models/item/whispering_gourd_lantern.json b/src/main/resources/assets/betternether/models/item/whispering_gourd_lantern.json new file mode 100644 index 0000000..f842172 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/whispering_gourd_lantern.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/whispering_gourd_lantern" +} diff --git a/src/main/resources/assets/betternether/models/item/whispering_gourd_vine.json b/src/main/resources/assets/betternether/models/item/whispering_gourd_vine.json new file mode 100644 index 0000000..fa07849 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/whispering_gourd_vine.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/whispering_gourd_seeds" + } +} diff --git a/src/main/resources/assets/betternether/models/item/willow_bark.json b/src/main/resources/assets/betternether/models/item/willow_bark.json new file mode 100644 index 0000000..88a8621 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_bark.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/willow_bark" +} diff --git a/src/main/resources/assets/betternether/models/item/willow_button.json b/src/main/resources/assets/betternether/models/item/willow_button.json new file mode 100644 index 0000000..62f213c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_button.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/willow_button_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/willow_door.json b/src/main/resources/assets/betternether/models/item/willow_door.json new file mode 100644 index 0000000..1150804 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_door.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:item/willow_door" + } +} diff --git a/src/main/resources/assets/betternether/models/item/willow_fence.json b/src/main/resources/assets/betternether/models/item/willow_fence.json new file mode 100644 index 0000000..04f4e78 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/willow_fence_inventory" +} diff --git a/src/main/resources/assets/betternether/models/item/willow_gate.json b/src/main/resources/assets/betternether/models/item/willow_gate.json new file mode 100644 index 0000000..e06acd5 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/willow_fence_gate_closed" +} diff --git a/src/main/resources/assets/betternether/models/item/willow_ladder.json b/src/main/resources/assets/betternether/models/item/willow_ladder.json new file mode 100644 index 0000000..cfe5675 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_ladder.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/willow_ladder" + } +} diff --git a/src/main/resources/assets/betternether/models/item/willow_leaves.json b/src/main/resources/assets/betternether/models/item/willow_leaves.json new file mode 100644 index 0000000..c6b9188 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_leaves.json @@ -0,0 +1,22 @@ +{ + "parent": "block/block", + "textures": { + "particle": "betternether:block/willow_leaves_full", + "texture": "betternether:block/willow_leaves_full", + "top": "betternether:block/willow_leaves_top" + }, + "elements": [ + { + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betternether/models/item/willow_log.json b/src/main/resources/assets/betternether/models/item/willow_log.json new file mode 100644 index 0000000..d11d1b1 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_log.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/willow_log" +} diff --git a/src/main/resources/assets/betternether/models/item/willow_planks.json b/src/main/resources/assets/betternether/models/item/willow_planks.json new file mode 100644 index 0000000..be3016c --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_planks.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/willow_planks" +} diff --git a/src/main/resources/assets/betternether/models/item/willow_plate.json b/src/main/resources/assets/betternether/models/item/willow_plate.json new file mode 100644 index 0000000..0d60d59 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/willow_pressure_plate_up" +} diff --git a/src/main/resources/assets/betternether/models/item/willow_sapling.json b/src/main/resources/assets/betternether/models/item/willow_sapling.json new file mode 100644 index 0000000..299bee9 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betternether:block/willow_sapling" + } +} diff --git a/src/main/resources/assets/betternether/models/item/willow_slab.json b/src/main/resources/assets/betternether/models/item/willow_slab.json new file mode 100644 index 0000000..b14361a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/willow_half_slab" +} diff --git a/src/main/resources/assets/betternether/models/item/willow_stairs.json b/src/main/resources/assets/betternether/models/item/willow_stairs.json new file mode 100644 index 0000000..17bc59a --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/willow_stairs" +} diff --git a/src/main/resources/assets/betternether/models/item/willow_torch.json b/src/main/resources/assets/betternether/models/item/willow_torch.json new file mode 100644 index 0000000..24e9ea0 --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_torch.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/willow_torch" +} diff --git a/src/main/resources/assets/betternether/models/item/willow_trapdoor.json b/src/main/resources/assets/betternether/models/item/willow_trapdoor.json new file mode 100644 index 0000000..08e54dd --- /dev/null +++ b/src/main/resources/assets/betternether/models/item/willow_trapdoor.json @@ -0,0 +1,3 @@ +{ + "parent": "betternether:block/willow_trapdoor" +} diff --git a/src/main/resources/assets/betternether/optifine/dynamic_lights.properties b/src/main/resources/assets/betternether/optifine/dynamic_lights.properties new file mode 100644 index 0000000..bb0686d --- /dev/null +++ b/src/main/resources/assets/betternether/optifine/dynamic_lights.properties @@ -0,0 +1,24 @@ +############################################################################### +# Sample configuration for OptiFine's Dynamic Lights feature. +############################################################################### +# dynamic_lights.properties +############################################################################### +# This file is offered without any copyright restrictions. +# Please copy and modify it to suit your needs. +# +# This configuration file allows mods to define dynamic light levels for entities and items. +# Location: "/assets//optifine/dynamic_lights.properties" + +# Entity light levels +# The entity name is automatically expanded with the mod_id. +# The light level should be between 0 and 15. +# For exaple: +# entities=basalz:15 blitz:7 +entities=firefly:10 + +# Item light levels +# The item name is automatically expanded with the mod_id. +# The light level should be between 0 and 15. +# For exaple: +# items=florb:15 morb:7 +items= \ No newline at end of file diff --git a/src/main/resources/assets/betternether/shaders/material/glow_10.frag b/src/main/resources/assets/betternether/shaders/material/glow_10.frag new file mode 100644 index 0000000..70f7194 --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/glow_10.frag @@ -0,0 +1,6 @@ +#include frex:shaders/api/fragment.glsl +#include frex:shaders/lib/math.glsl + +void frx_startFragment(inout frx_FragmentData fragData) { + fragData.emissivity = frx_luminance(fragData.spriteColor.rgb) > 0.1 ? 1 : 0; +} diff --git a/src/main/resources/assets/betternether/shaders/material/glow_33.frag b/src/main/resources/assets/betternether/shaders/material/glow_33.frag new file mode 100644 index 0000000..1aa1b27 --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/glow_33.frag @@ -0,0 +1,6 @@ +#include frex:shaders/api/fragment.glsl +#include frex:shaders/lib/math.glsl + +void frx_startFragment(inout frx_FragmentData fragData) { + fragData.emissivity = frx_luminance(fragData.spriteColor.rgb) > 0.33 ? 1 : 0; +} diff --git a/src/main/resources/assets/betternether/shaders/material/glow_33_half.frag b/src/main/resources/assets/betternether/shaders/material/glow_33_half.frag new file mode 100644 index 0000000..17f1e47 --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/glow_33_half.frag @@ -0,0 +1,6 @@ +#include frex:shaders/api/fragment.glsl +#include frex:shaders/lib/math.glsl + +void frx_startFragment(inout frx_FragmentData fragData) { + fragData.emissivity = frx_luminance(fragData.spriteColor.rgb) > 0.33 ? 0.5 : 0; +} diff --git a/src/main/resources/assets/betternether/shaders/material/glow_50.frag b/src/main/resources/assets/betternether/shaders/material/glow_50.frag new file mode 100644 index 0000000..40a3441 --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/glow_50.frag @@ -0,0 +1,6 @@ +#include frex:shaders/api/fragment.glsl +#include frex:shaders/lib/math.glsl + +void frx_startFragment(inout frx_FragmentData fragData) { + fragData.emissivity = frx_luminance(fragData.spriteColor.rgb) > 0.5 ? 1 : 0; +} diff --git a/src/main/resources/assets/betternether/shaders/material/glow_50_half.frag b/src/main/resources/assets/betternether/shaders/material/glow_50_half.frag new file mode 100644 index 0000000..349cfac --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/glow_50_half.frag @@ -0,0 +1,6 @@ +#include frex:shaders/api/fragment.glsl +#include frex:shaders/lib/math.glsl + +void frx_startFragment(inout frx_FragmentData fragData) { + fragData.emissivity = frx_luminance(fragData.spriteColor.rgb) > 0.5 ? 0.5 : 0; +} diff --git a/src/main/resources/assets/betternether/shaders/material/glow_all.frag b/src/main/resources/assets/betternether/shaders/material/glow_all.frag new file mode 100644 index 0000000..2458e83 --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/glow_all.frag @@ -0,0 +1,6 @@ +#include frex:shaders/api/fragment.glsl +#include frex:shaders/lib/math.glsl + +void frx_startFragment(inout frx_FragmentData fragData) { + fragData.emissivity = 1; +} diff --git a/src/main/resources/assets/betternether/shaders/material/glow_all_half.frag b/src/main/resources/assets/betternether/shaders/material/glow_all_half.frag new file mode 100644 index 0000000..7bb29ff --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/glow_all_half.frag @@ -0,0 +1,6 @@ +#include frex:shaders/api/fragment.glsl +#include frex:shaders/lib/math.glsl + +void frx_startFragment(inout frx_FragmentData fragData) { + fragData.emissivity = 0.5; +} diff --git a/src/main/resources/assets/betternether/shaders/material/glow_inc.frag b/src/main/resources/assets/betternether/shaders/material/glow_inc.frag new file mode 100644 index 0000000..7000eb4 --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/glow_inc.frag @@ -0,0 +1,7 @@ +#include frex:shaders/api/fragment.glsl +#include frex:shaders/lib/math.glsl + +void frx_startFragment(inout frx_FragmentData fragData) { + float light = frx_luminance(fragData.spriteColor.rgb) * 2 - 0.3; + fragData.emissivity = clamp(light, 0, 1); +} diff --git a/src/main/resources/assets/betternether/shaders/material/glow_transparent.frag b/src/main/resources/assets/betternether/shaders/material/glow_transparent.frag new file mode 100644 index 0000000..562c7ac --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/glow_transparent.frag @@ -0,0 +1,8 @@ +#include frex:shaders/api/fragment.glsl +#include frex:shaders/lib/math.glsl + +void frx_startFragment(inout frx_FragmentData fragData) { + fragData.emissivity = 1; + fragData.ao = false; + fragData.diffuse = false; +} diff --git a/src/main/resources/assets/betternether/shaders/material/offset_floor.vert b/src/main/resources/assets/betternether/shaders/material/offset_floor.vert new file mode 100644 index 0000000..a80a3b5 --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/offset_floor.vert @@ -0,0 +1,18 @@ +#include frex:shaders/api/vertex.glsl +#include frex:shaders/api/world.glsl +#include frex:shaders/lib/math.glsl +#include frex:shaders/lib/noise/noise4d.glsl + +/****************************************************** + Based on "GPU-Generated Procedural Wind Animations for Trees" + by Renaldas Zioma in GPU Gems 3, 2007 + https://developer.nvidia.com/gpugems/gpugems3/part-i-geometry/chapter-6-gpu-generated-procedural-wind-animations-trees + + Remake of canvas default shader for the Nether +******************************************************/ + +#define NOISE_SCALE 0.125 + +void frx_startVertex(inout frx_VertexData data) { + data.vertex.xz += data.normal.xz * data.spriteUV.y * 0.02; +} diff --git a/src/main/resources/assets/betternether/shaders/material/small_wave.vert b/src/main/resources/assets/betternether/shaders/material/small_wave.vert new file mode 100644 index 0000000..2d726f1 --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/small_wave.vert @@ -0,0 +1,24 @@ +#include frex:shaders/api/vertex.glsl +#include frex:shaders/api/world.glsl +#include frex:shaders/lib/math.glsl +#include frex:shaders/lib/noise/noise4d.glsl + +/****************************************************** + Based on "GPU-Generated Procedural Wind Animations for Trees" + by Renaldas Zioma in GPU Gems 3, 2007 + https://developer.nvidia.com/gpugems/gpugems3/part-i-geometry/chapter-6-gpu-generated-procedural-wind-animations-trees + + Remake of canvas default shader for the Nether +******************************************************/ + +void frx_startVertex(inout frx_VertexData data) { + #ifdef ANIMATED_FOLIAGE + float t = frx_renderSeconds() * 0.05; + + vec3 pos = (data.vertex.xyz + frx_modelOriginWorldPos()) * 0.5; + float wind = snoise(vec4(pos, t)) * 0.02; + + data.vertex.x += (cos(t) * cos(t * 3) * cos(t * 5) * cos(t * 7) + sin(t * 25)) * wind; + data.vertex.z += sin(t * 19) * wind; + #endif +} diff --git a/src/main/resources/assets/betternether/shaders/material/wall_wave.vert b/src/main/resources/assets/betternether/shaders/material/wall_wave.vert new file mode 100644 index 0000000..89df191 --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/wall_wave.vert @@ -0,0 +1,30 @@ +#include frex:shaders/api/vertex.glsl +#include frex:shaders/api/world.glsl +#include frex:shaders/lib/math.glsl +#include frex:shaders/lib/noise/noise4d.glsl + +/****************************************************** + Based on "GPU-Generated Procedural Wind Animations for Trees" + by Renaldas Zioma in GPU Gems 3, 2007 + https://developer.nvidia.com/gpugems/gpugems3/part-i-geometry/chapter-6-gpu-generated-procedural-wind-animations-trees + + Remake of canvas default shader for the Nether +******************************************************/ + +void frx_startVertex(inout frx_VertexData data) { + #ifdef ANIMATED_FOLIAGE + float t = frx_renderSeconds() * 0.05; + + vec3 pos = (data.vertex.xyz + frx_modelOriginWorldPos()) * 0.5; + float wind = snoise(vec4(pos, t)) * 0.1; + + //vec3 center = frx_modelOriginWorldPos() + vec3(0.5); + //vec3 absDist = abs(pos - center) * 2; + //wind *= clamp(1 - absDist.x + absDist.y + absDist.z, 0, 1); + wind *= 1 - data.spriteUV.y; + + data.vertex.y += (cos(t) * cos(t * 3) * cos(t * 5) * cos(t * 7) + sin(t * 25)) * wind; + data.vertex.x += cos(t * 14) * wind; + data.vertex.z += sin(t * 19) * wind; + #endif +} diff --git a/src/main/resources/assets/betternether/shaders/material/wave.vert b/src/main/resources/assets/betternether/shaders/material/wave.vert new file mode 100644 index 0000000..df87750 --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/wave.vert @@ -0,0 +1,26 @@ +#include frex:shaders/api/vertex.glsl +#include frex:shaders/api/world.glsl +#include frex:shaders/lib/math.glsl +#include frex:shaders/lib/noise/noise4d.glsl + +/****************************************************** + Based on "GPU-Generated Procedural Wind Animations for Trees" + by Renaldas Zioma in GPU Gems 3, 2007 + https://developer.nvidia.com/gpugems/gpugems3/part-i-geometry/chapter-6-gpu-generated-procedural-wind-animations-trees + + Remake of canvas default shader for the Nether +******************************************************/ + +#define NOISE_SCALE 0.125 + +void frx_startVertex(inout frx_VertexData data) { + #ifdef ANIMATED_FOLIAGE + float t = frx_renderSeconds() * 0.05; + + vec3 pos = (data.vertex.xyz + frx_modelOriginWorldPos()) * NOISE_SCALE; + float wind = snoise(vec4(pos, t)) * 0.1; + + data.vertex.x += (cos(t) * cos(t * 3) * cos(t * 5) * cos(t * 7) + sin(t * 25)) * wind; + data.vertex.z += sin(t * 19) * wind; + #endif +} diff --git a/src/main/resources/assets/betternether/shaders/material/wave_floor.vert b/src/main/resources/assets/betternether/shaders/material/wave_floor.vert new file mode 100644 index 0000000..eaeb9b7 --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/wave_floor.vert @@ -0,0 +1,27 @@ +#include frex:shaders/api/vertex.glsl +#include frex:shaders/api/world.glsl +#include frex:shaders/lib/math.glsl +#include frex:shaders/lib/noise/noise4d.glsl + +/****************************************************** + Based on "GPU-Generated Procedural Wind Animations for Trees" + by Renaldas Zioma in GPU Gems 3, 2007 + https://developer.nvidia.com/gpugems/gpugems3/part-i-geometry/chapter-6-gpu-generated-procedural-wind-animations-trees + + Remake of canvas default shader for the Nether +******************************************************/ + +#define NOISE_SCALE 0.125 + +void frx_startVertex(inout frx_VertexData data) { + #ifdef ANIMATED_FOLIAGE + float t = frx_renderSeconds() * 0.05; + + vec3 pos = (data.vertex.xyz + frx_modelOriginWorldPos()) * NOISE_SCALE; + float wind = snoise(vec4(pos, t)) * 0.2; + wind *= 1 - data.spriteUV.y; + + data.vertex.x += (cos(t) * cos(t * 3) * cos(t * 5) * cos(t * 7) + sin(t * 25)) * wind; + data.vertex.z += sin(t * 19) * wind; + #endif +} diff --git a/src/main/resources/assets/betternether/shaders/material/wave_large.vert b/src/main/resources/assets/betternether/shaders/material/wave_large.vert new file mode 100644 index 0000000..c2d2019 --- /dev/null +++ b/src/main/resources/assets/betternether/shaders/material/wave_large.vert @@ -0,0 +1,24 @@ +#include frex:shaders/api/vertex.glsl +#include frex:shaders/api/world.glsl +#include frex:shaders/lib/math.glsl +#include frex:shaders/lib/noise/noise4d.glsl + +/****************************************************** + Based on "GPU-Generated Procedural Wind Animations for Trees" + by Renaldas Zioma in GPU Gems 3, 2007 + https://developer.nvidia.com/gpugems/gpugems3/part-i-geometry/chapter-6-gpu-generated-procedural-wind-animations-trees + + Remake of canvas default shader for the Nether +******************************************************/ + +void frx_startVertex(inout frx_VertexData data) { + #ifdef ANIMATED_FOLIAGE + float t = frx_renderSeconds() * 0.05; + + vec3 pos = (data.vertex.xyz + frx_modelOriginWorldPos()) * 0.0625; + float wind = snoise(vec4(pos, t)) * 0.25; + + data.vertex.x += (cos(t) * cos(t * 3) * cos(t * 5) * cos(t * 7) + sin(t * 25)) * wind; + data.vertex.z += sin(t * 19) * wind; + #endif +} diff --git a/src/main/resources/assets/betternether/sounds.json b/src/main/resources/assets/betternether/sounds.json new file mode 100644 index 0000000..c8e18e7 --- /dev/null +++ b/src/main/resources/assets/betternether/sounds.json @@ -0,0 +1,87 @@ +{ + "betternether.mob.firefly.fly": { + "category": "neutral", + "sounds": [ + { + "name": "betternether:mob/firefly/fly", + "stream": false + } + ] + }, + "betternether.ambient.mushroom_forest": { + "category": "ambient", + "sounds": [ + { + "name": "betternether:ambient/mushroom_forest", + "stream": false + } + ] + }, + "betternether.ambient.gravel_desert": { + "category": "ambient", + "sounds": [ + { + "name": "betternether:ambient/gravel_desert", + "stream": false + } + ] + }, + "betternether.ambient.nether_jungle": { + "category": "ambient", + "sounds": [ + { + "name": "betternether:ambient/nether_jungle", + "stream": false + } + ] + }, + "betternether.ambient.swampland": { + "category": "ambient", + "sounds": [ + { + "name": "betternether:ambient/swampland", + "stream": false + } + ] + }, + "betternether.mob.jellyfish": { + "category": "neutral", + "sounds": [ + { + "name": "betternether:mob/jellyfish", + "stream": false + } + ] + }, + "betternether.mob.naga_idle": { + "category": "neutral", + "sounds": [ + { + "name": "betternether:mob/naga/naga_1", + "stream": false + }, + { + "name": "betternether:mob/naga/naga_2", + "stream": false + } + ] + }, + "betternether.mob.naga_attack": { + "category": "neutral", + "sounds": [ + { + "name": "betternether:mob/naga/naga_attack", + "stream": false + } + ] + }, + "betternether.mob.skull_flight": { + "category": "neutral", + "sounds": [ + { + "name": "betternether:mob/skull_flight", + "stream": false + } + ] + } +} diff --git a/src/main/resources/assets/betternether/sounds/ambient/gravel_desert.ogg b/src/main/resources/assets/betternether/sounds/ambient/gravel_desert.ogg new file mode 100644 index 0000000..76d0abe Binary files /dev/null and b/src/main/resources/assets/betternether/sounds/ambient/gravel_desert.ogg differ diff --git a/src/main/resources/assets/betternether/sounds/ambient/mushroom_forest.ogg b/src/main/resources/assets/betternether/sounds/ambient/mushroom_forest.ogg new file mode 100644 index 0000000..97d8a84 Binary files /dev/null and b/src/main/resources/assets/betternether/sounds/ambient/mushroom_forest.ogg differ diff --git a/src/main/resources/assets/betternether/sounds/ambient/nether_jungle.ogg b/src/main/resources/assets/betternether/sounds/ambient/nether_jungle.ogg new file mode 100644 index 0000000..e9b8782 Binary files /dev/null and b/src/main/resources/assets/betternether/sounds/ambient/nether_jungle.ogg differ diff --git a/src/main/resources/assets/betternether/sounds/ambient/swampland.ogg b/src/main/resources/assets/betternether/sounds/ambient/swampland.ogg new file mode 100644 index 0000000..3213b0e Binary files /dev/null and b/src/main/resources/assets/betternether/sounds/ambient/swampland.ogg differ diff --git a/src/main/resources/assets/betternether/sounds/mob/firefly/fly.ogg b/src/main/resources/assets/betternether/sounds/mob/firefly/fly.ogg new file mode 100644 index 0000000..86dbdfe Binary files /dev/null and b/src/main/resources/assets/betternether/sounds/mob/firefly/fly.ogg differ diff --git a/src/main/resources/assets/betternether/sounds/mob/firefly/nfly.ogg b/src/main/resources/assets/betternether/sounds/mob/firefly/nfly.ogg new file mode 100644 index 0000000..e4fab6e Binary files /dev/null and b/src/main/resources/assets/betternether/sounds/mob/firefly/nfly.ogg differ diff --git a/src/main/resources/assets/betternether/sounds/mob/jellyfish.ogg b/src/main/resources/assets/betternether/sounds/mob/jellyfish.ogg new file mode 100644 index 0000000..48860eb Binary files /dev/null and b/src/main/resources/assets/betternether/sounds/mob/jellyfish.ogg differ diff --git a/src/main/resources/assets/betternether/sounds/mob/naga/naga_1.ogg b/src/main/resources/assets/betternether/sounds/mob/naga/naga_1.ogg new file mode 100644 index 0000000..0cddf59 Binary files /dev/null and b/src/main/resources/assets/betternether/sounds/mob/naga/naga_1.ogg differ diff --git a/src/main/resources/assets/betternether/sounds/mob/naga/naga_2.ogg b/src/main/resources/assets/betternether/sounds/mob/naga/naga_2.ogg new file mode 100644 index 0000000..2c49d3d Binary files /dev/null and b/src/main/resources/assets/betternether/sounds/mob/naga/naga_2.ogg differ diff --git a/src/main/resources/assets/betternether/sounds/mob/naga/naga_attack.ogg b/src/main/resources/assets/betternether/sounds/mob/naga/naga_attack.ogg new file mode 100644 index 0000000..b82eeb8 Binary files /dev/null and b/src/main/resources/assets/betternether/sounds/mob/naga/naga_attack.ogg differ diff --git a/src/main/resources/assets/betternether/sounds/mob/skull_flight.ogg b/src/main/resources/assets/betternether/sounds/mob/skull_flight.ogg new file mode 100644 index 0000000..cd24d33 Binary files /dev/null and b/src/main/resources/assets/betternether/sounds/mob/skull_flight.ogg differ diff --git a/src/main/resources/assets/betternether/textures/block/agave_leaf.png b/src/main/resources/assets/betternether/textures/block/agave_leaf.png new file mode 100644 index 0000000..de97845 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/agave_leaf.png differ diff --git a/src/main/resources/assets/betternether/textures/block/agave_leaf_02.png b/src/main/resources/assets/betternether/textures/block/agave_leaf_02.png new file mode 100644 index 0000000..b43a20c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/agave_leaf_02.png differ diff --git a/src/main/resources/assets/betternether/textures/block/agave_leaf_03.png b/src/main/resources/assets/betternether/textures/block/agave_leaf_03.png new file mode 100644 index 0000000..0706d75 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/agave_leaf_03.png differ diff --git a/src/main/resources/assets/betternether/textures/block/agave_leaf_04.png b/src/main/resources/assets/betternether/textures/block/agave_leaf_04.png new file mode 100644 index 0000000..d245bc2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/agave_leaf_04.png differ diff --git a/src/main/resources/assets/betternether/textures/block/agave_leaf_05.png b/src/main/resources/assets/betternether/textures/block/agave_leaf_05.png new file mode 100644 index 0000000..a7b9133 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/agave_leaf_05.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_door_bottom.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_door_bottom.png new file mode 100644 index 0000000..0024400 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_door_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_door_top.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_door_top.png new file mode 100644 index 0000000..41584b5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_door_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_ladder.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_ladder.png new file mode 100644 index 0000000..6053da6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_ladder.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_leaves.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_leaves.png new file mode 100644 index 0000000..0d67956 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_leaves.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_leaves_2.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_leaves_2.png new file mode 100644 index 0000000..3203f76 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_leaves_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_log_side.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_log_side.png new file mode 100644 index 0000000..9e3481e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_log_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_log_side_2.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_log_side_2.png new file mode 100644 index 0000000..3b37899 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_log_side_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_log_side_3.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_log_side_3.png new file mode 100644 index 0000000..017ed28 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_log_side_3.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_log_top.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_log_top.png new file mode 100644 index 0000000..569ef0c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_log_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_planks.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_planks.png new file mode 100644 index 0000000..d0dcc3b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_planks.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_sapling.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_sapling.png new file mode 100644 index 0000000..11b388d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_sapling.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_trapdoor.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_trapdoor.png new file mode 100644 index 0000000..038730a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_trapdoor.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_vine.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_vine.png new file mode 100644 index 0000000..4ce9596 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_vine.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_vine_end_1.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_vine_end_1.png new file mode 100644 index 0000000..04a8725 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_vine_end_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/anchor_tree_vine_end_2.png b/src/main/resources/assets/betternether/textures/block/anchor_tree_vine_end_2.png new file mode 100644 index 0000000..5b66a80 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/anchor_tree_vine_end_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_anchor_tree_bottom.png b/src/main/resources/assets/betternether/textures/block/barrel_anchor_tree_bottom.png new file mode 100644 index 0000000..7d9f4b6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_anchor_tree_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_anchor_tree_side.png b/src/main/resources/assets/betternether/textures/block/barrel_anchor_tree_side.png new file mode 100644 index 0000000..d184577 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_anchor_tree_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_anchor_tree_top.png b/src/main/resources/assets/betternether/textures/block/barrel_anchor_tree_top.png new file mode 100644 index 0000000..60f43b8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_anchor_tree_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_anchor_tree_top_open.png b/src/main/resources/assets/betternether/textures/block/barrel_anchor_tree_top_open.png new file mode 100644 index 0000000..5bf75f2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_anchor_tree_top_open.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_crimson_bottom.png b/src/main/resources/assets/betternether/textures/block/barrel_crimson_bottom.png new file mode 100644 index 0000000..5eb8aae Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_crimson_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_crimson_side.png b/src/main/resources/assets/betternether/textures/block/barrel_crimson_side.png new file mode 100644 index 0000000..5284115 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_crimson_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_crimson_top.png b/src/main/resources/assets/betternether/textures/block/barrel_crimson_top.png new file mode 100644 index 0000000..d5202e0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_crimson_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_crimson_top_open.png b/src/main/resources/assets/betternether/textures/block/barrel_crimson_top_open.png new file mode 100644 index 0000000..b53bbba Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_crimson_top_open.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_mushroom_bottom.png b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_bottom.png new file mode 100644 index 0000000..73a979d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_mushroom_fir_bottom.png b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_fir_bottom.png new file mode 100644 index 0000000..273b879 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_fir_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_mushroom_fir_side.png b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_fir_side.png new file mode 100644 index 0000000..9124bca Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_fir_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_mushroom_fir_top.png b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_fir_top.png new file mode 100644 index 0000000..de41806 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_fir_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_mushroom_fir_top_open.png b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_fir_top_open.png new file mode 100644 index 0000000..06255d1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_fir_top_open.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_mushroom_side.png b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_side.png new file mode 100644 index 0000000..518673d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_mushroom_top.png b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_top.png new file mode 100644 index 0000000..ce3431e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_mushroom_top_open.png b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_top_open.png new file mode 100644 index 0000000..dff683b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_mushroom_top_open.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_nether_sakura_bottom.png b/src/main/resources/assets/betternether/textures/block/barrel_nether_sakura_bottom.png new file mode 100644 index 0000000..3028dd4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_nether_sakura_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_nether_sakura_side.png b/src/main/resources/assets/betternether/textures/block/barrel_nether_sakura_side.png new file mode 100644 index 0000000..f30175a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_nether_sakura_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_nether_sakura_top.png b/src/main/resources/assets/betternether/textures/block/barrel_nether_sakura_top.png new file mode 100644 index 0000000..2da26a7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_nether_sakura_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_nether_sakura_top_open.png b/src/main/resources/assets/betternether/textures/block/barrel_nether_sakura_top_open.png new file mode 100644 index 0000000..38163fa Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_nether_sakura_top_open.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_reed_bottom.png b/src/main/resources/assets/betternether/textures/block/barrel_reed_bottom.png new file mode 100644 index 0000000..c997e92 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_reed_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_reed_side.png b/src/main/resources/assets/betternether/textures/block/barrel_reed_side.png new file mode 100644 index 0000000..005d3c6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_reed_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_reed_top.png b/src/main/resources/assets/betternether/textures/block/barrel_reed_top.png new file mode 100644 index 0000000..cb70517 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_reed_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_reed_top_open.png b/src/main/resources/assets/betternether/textures/block/barrel_reed_top_open.png new file mode 100644 index 0000000..da7cdaf Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_reed_top_open.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_rubeus_bottom.png b/src/main/resources/assets/betternether/textures/block/barrel_rubeus_bottom.png new file mode 100644 index 0000000..8c3f7d6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_rubeus_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_rubeus_side.png b/src/main/resources/assets/betternether/textures/block/barrel_rubeus_side.png new file mode 100644 index 0000000..6f099bd Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_rubeus_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_rubeus_top.png b/src/main/resources/assets/betternether/textures/block/barrel_rubeus_top.png new file mode 100644 index 0000000..f9e012a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_rubeus_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_rubeus_top_open.png b/src/main/resources/assets/betternether/textures/block/barrel_rubeus_top_open.png new file mode 100644 index 0000000..1bef913 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_rubeus_top_open.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_stalagnate_bottom.png b/src/main/resources/assets/betternether/textures/block/barrel_stalagnate_bottom.png new file mode 100644 index 0000000..6f5734b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_stalagnate_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_stalagnate_side.png b/src/main/resources/assets/betternether/textures/block/barrel_stalagnate_side.png new file mode 100644 index 0000000..2d57457 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_stalagnate_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_stalagnate_top.png b/src/main/resources/assets/betternether/textures/block/barrel_stalagnate_top.png new file mode 100644 index 0000000..6f9e3c0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_stalagnate_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_stalagnate_top_open.png b/src/main/resources/assets/betternether/textures/block/barrel_stalagnate_top_open.png new file mode 100644 index 0000000..fb52d39 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_stalagnate_top_open.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_warped_bottom.png b/src/main/resources/assets/betternether/textures/block/barrel_warped_bottom.png new file mode 100644 index 0000000..b203ebe Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_warped_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_warped_side.png b/src/main/resources/assets/betternether/textures/block/barrel_warped_side.png new file mode 100644 index 0000000..2e66718 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_warped_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_warped_top.png b/src/main/resources/assets/betternether/textures/block/barrel_warped_top.png new file mode 100644 index 0000000..141fe35 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_warped_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_warped_top_open.png b/src/main/resources/assets/betternether/textures/block/barrel_warped_top_open.png new file mode 100644 index 0000000..e148c0d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_warped_top_open.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_wart_bottom.png b/src/main/resources/assets/betternether/textures/block/barrel_wart_bottom.png new file mode 100644 index 0000000..067c8c3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_wart_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_wart_side.png b/src/main/resources/assets/betternether/textures/block/barrel_wart_side.png new file mode 100644 index 0000000..8d054f9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_wart_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_wart_top.png b/src/main/resources/assets/betternether/textures/block/barrel_wart_top.png new file mode 100644 index 0000000..fdc41e0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_wart_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_wart_top_open.png b/src/main/resources/assets/betternether/textures/block/barrel_wart_top_open.png new file mode 100644 index 0000000..c3b05b6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_wart_top_open.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_willow_bottom.png b/src/main/resources/assets/betternether/textures/block/barrel_willow_bottom.png new file mode 100644 index 0000000..ded68e5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_willow_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_willow_side.png b/src/main/resources/assets/betternether/textures/block/barrel_willow_side.png new file mode 100644 index 0000000..7f6d9d6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_willow_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_willow_top.png b/src/main/resources/assets/betternether/textures/block/barrel_willow_top.png new file mode 100644 index 0000000..48762ae Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_willow_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/barrel_willow_top_open.png b/src/main/resources/assets/betternether/textures/block/barrel_willow_top_open.png new file mode 100644 index 0000000..5a3fdac Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/barrel_willow_top_open.png differ diff --git a/src/main/resources/assets/betternether/textures/block/basalt_bricks_1.png b/src/main/resources/assets/betternether/textures/block/basalt_bricks_1.png new file mode 100644 index 0000000..1577a69 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/basalt_bricks_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/basalt_bricks_2.png b/src/main/resources/assets/betternether/textures/block/basalt_bricks_2.png new file mode 100644 index 0000000..c68f17c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/basalt_bricks_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/basalt_bricks_post_side.png b/src/main/resources/assets/betternether/textures/block/basalt_bricks_post_side.png new file mode 100644 index 0000000..8a92cef Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/basalt_bricks_post_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/basalt_bricks_wall_side.png b/src/main/resources/assets/betternether/textures/block/basalt_bricks_wall_side.png new file mode 100644 index 0000000..2bce0a1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/basalt_bricks_wall_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_off.png b/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_off.png new file mode 100644 index 0000000..92ac913 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_off.png differ diff --git a/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_on.png b/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_on.png new file mode 100644 index 0000000..ed62dd4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_on.png differ diff --git a/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_on.png.mcmeta b/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_on.png.mcmeta new file mode 100644 index 0000000..91aeea8 --- /dev/null +++ b/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_on.png.mcmeta @@ -0,0 +1,24 @@ +{ + "animation": { + "interpolate": true, + "frametime": 8, + "frames": [ + 0, + 1, + 2, + 3, + 1, + 2, + 0, + 3, + 2, + 1, + 3, + 0, + 1, + 2, + 0, + 3 + ] + } +} diff --git a/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_on_e.png b/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_on_e.png new file mode 100644 index 0000000..9268b99 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_on_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_on_e.png.mcmeta b/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_on_e.png.mcmeta new file mode 100644 index 0000000..91aeea8 --- /dev/null +++ b/src/main/resources/assets/betternether/textures/block/basalt_furnace_front_on_e.png.mcmeta @@ -0,0 +1,24 @@ +{ + "animation": { + "interpolate": true, + "frametime": 8, + "frames": [ + 0, + 1, + 2, + 3, + 1, + 2, + 0, + 3, + 2, + 1, + 3, + 0, + 1, + 2, + 0, + 3 + ] + } +} diff --git a/src/main/resources/assets/betternether/textures/block/basalt_furnace_side.png b/src/main/resources/assets/betternether/textures/block/basalt_furnace_side.png new file mode 100644 index 0000000..5de5adf Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/basalt_furnace_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/basalt_furnace_top.png b/src/main/resources/assets/betternether/textures/block/basalt_furnace_top.png new file mode 100644 index 0000000..472ceae Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/basalt_furnace_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/black_apple.png b/src/main/resources/assets/betternether/textures/block/black_apple.png new file mode 100644 index 0000000..db76c81 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/black_apple.png differ diff --git a/src/main/resources/assets/betternether/textures/block/black_apple_medium.png b/src/main/resources/assets/betternether/textures/block/black_apple_medium.png new file mode 100644 index 0000000..e290403 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/black_apple_medium.png differ diff --git a/src/main/resources/assets/betternether/textures/block/black_apple_seed.png b/src/main/resources/assets/betternether/textures/block/black_apple_seed.png new file mode 100644 index 0000000..bb5fcde Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/black_apple_seed.png differ diff --git a/src/main/resources/assets/betternether/textures/block/black_apple_young.png b/src/main/resources/assets/betternether/textures/block/black_apple_young.png new file mode 100644 index 0000000..c44dc4e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/black_apple_young.png differ diff --git a/src/main/resources/assets/betternether/textures/block/black_bush.png b/src/main/resources/assets/betternether/textures/block/black_bush.png new file mode 100644 index 0000000..6d9580d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/black_bush.png differ diff --git a/src/main/resources/assets/betternether/textures/block/black_vine.png b/src/main/resources/assets/betternether/textures/block/black_vine.png new file mode 100644 index 0000000..5462be6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/black_vine.png differ diff --git a/src/main/resources/assets/betternether/textures/block/black_vine_bottom.png b/src/main/resources/assets/betternether/textures/block/black_vine_bottom.png new file mode 100644 index 0000000..a5c2ce3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/black_vine_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_off.png b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_off.png new file mode 100644 index 0000000..53e16e6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_off.png differ diff --git a/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_on.png b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_on.png new file mode 100644 index 0000000..57c8ca0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_on.png differ diff --git a/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_on.png.mcmeta b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_on.png.mcmeta new file mode 100644 index 0000000..91aeea8 --- /dev/null +++ b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_on.png.mcmeta @@ -0,0 +1,24 @@ +{ + "animation": { + "interpolate": true, + "frametime": 8, + "frames": [ + 0, + 1, + 2, + 3, + 1, + 2, + 0, + 3, + 2, + 1, + 3, + 0, + 1, + 2, + 0, + 3 + ] + } +} diff --git a/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_on_e.png b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_on_e.png new file mode 100644 index 0000000..9268b99 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_on_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_on_e.png.mcmeta b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_on_e.png.mcmeta new file mode 100644 index 0000000..91aeea8 --- /dev/null +++ b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_front_on_e.png.mcmeta @@ -0,0 +1,24 @@ +{ + "animation": { + "interpolate": true, + "frametime": 8, + "frames": [ + 0, + 1, + 2, + 3, + 1, + 2, + 0, + 3, + 2, + 1, + 3, + 0, + 1, + 2, + 0, + 3 + ] + } +} diff --git a/src/main/resources/assets/betternether/textures/block/blackstone_furnace_side.png b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_side.png new file mode 100644 index 0000000..4fa8813 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/blackstone_furnace_top.png b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_top.png new file mode 100644 index 0000000..7de99e5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/blackstone_furnace_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/blue_obsidian.png b/src/main/resources/assets/betternether/textures/block/blue_obsidian.png new file mode 100644 index 0000000..f153e10 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/blue_obsidian.png differ diff --git a/src/main/resources/assets/betternether/textures/block/blue_obsidian_bricks.png b/src/main/resources/assets/betternether/textures/block/blue_obsidian_bricks.png new file mode 100644 index 0000000..ddc2d72 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/blue_obsidian_bricks.png differ diff --git a/src/main/resources/assets/betternether/textures/block/blue_obsidian_glass.png b/src/main/resources/assets/betternether/textures/block/blue_obsidian_glass.png new file mode 100644 index 0000000..8becf01 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/blue_obsidian_glass.png differ diff --git a/src/main/resources/assets/betternether/textures/block/blue_obsidian_tile.png b/src/main/resources/assets/betternether/textures/block/blue_obsidian_tile.png new file mode 100644 index 0000000..f2b8074 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/blue_obsidian_tile.png differ diff --git a/src/main/resources/assets/betternether/textures/block/blue_obsidian_tile_small.png b/src/main/resources/assets/betternether/textures/block/blue_obsidian_tile_small.png new file mode 100644 index 0000000..1b6d50f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/blue_obsidian_tile_small.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_block.png b/src/main/resources/assets/betternether/textures/block/bone_block.png new file mode 100644 index 0000000..2f3c6dc Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_block.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_block_plate.png b/src/main/resources/assets/betternether/textures/block/bone_block_plate.png new file mode 100644 index 0000000..5e8c920 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_block_plate.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_button.png b/src/main/resources/assets/betternether/textures/block/bone_button.png new file mode 100644 index 0000000..f919b4b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_button.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_cin_door.png b/src/main/resources/assets/betternether/textures/block/bone_cin_door.png new file mode 100644 index 0000000..8e89004 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_cin_door.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_cin_door_lower.png b/src/main/resources/assets/betternether/textures/block/bone_cin_door_lower.png new file mode 100644 index 0000000..40a583e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_cin_door_lower.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_cin_door_side.png b/src/main/resources/assets/betternether/textures/block/bone_cin_door_side.png new file mode 100644 index 0000000..61c6a57 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_cin_door_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_cin_door_upper.png b/src/main/resources/assets/betternether/textures/block/bone_cin_door_upper.png new file mode 100644 index 0000000..46b140e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_cin_door_upper.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_grass_1.png b/src/main/resources/assets/betternether/textures/block/bone_grass_1.png new file mode 100644 index 0000000..088e2b0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_grass_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_grass_2.png b/src/main/resources/assets/betternether/textures/block/bone_grass_2.png new file mode 100644 index 0000000..14c6e51 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_grass_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_grass_3.png b/src/main/resources/assets/betternether/textures/block/bone_grass_3.png new file mode 100644 index 0000000..4d9473a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_grass_3.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_mushroom.png b/src/main/resources/assets/betternether/textures/block/bone_mushroom.png new file mode 100644 index 0000000..ee60132 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_mushroom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_mushroom_cap.png b/src/main/resources/assets/betternether/textures/block/bone_mushroom_cap.png new file mode 100644 index 0000000..5462760 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_mushroom_cap.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_mushroom_pre.png b/src/main/resources/assets/betternether/textures/block/bone_mushroom_pre.png new file mode 100644 index 0000000..274ea66 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_mushroom_pre.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_mushroom_up.png b/src/main/resources/assets/betternether/textures/block/bone_mushroom_up.png new file mode 100644 index 0000000..9b831c0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_mushroom_up.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_mushroom_up_pre.png b/src/main/resources/assets/betternether/textures/block/bone_mushroom_up_pre.png new file mode 100644 index 0000000..4ead705 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_mushroom_up_pre.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_mycelium.png b/src/main/resources/assets/betternether/textures/block/bone_mycelium.png new file mode 100644 index 0000000..ed8861f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_mycelium.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_post.png b/src/main/resources/assets/betternether/textures/block/bone_post.png new file mode 100644 index 0000000..ba57818 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_post.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_reed_door_lower.png b/src/main/resources/assets/betternether/textures/block/bone_reed_door_lower.png new file mode 100644 index 0000000..b398018 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_reed_door_lower.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_reed_door_upper.png b/src/main/resources/assets/betternether/textures/block/bone_reed_door_upper.png new file mode 100644 index 0000000..61b85b8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_reed_door_upper.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_slab_side.png b/src/main/resources/assets/betternether/textures/block/bone_slab_side.png new file mode 100644 index 0000000..ed5702b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_slab_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_slab_top.png b/src/main/resources/assets/betternether/textures/block/bone_slab_top.png new file mode 100644 index 0000000..ef7b44d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_slab_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_wall_side.png b/src/main/resources/assets/betternether/textures/block/bone_wall_side.png new file mode 100644 index 0000000..ba91191 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_wall_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_wall_top_ew.png b/src/main/resources/assets/betternether/textures/block/bone_wall_top_ew.png new file mode 100644 index 0000000..00b264e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_wall_top_ew.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bone_wall_top_ns.png b/src/main/resources/assets/betternether/textures/block/bone_wall_top_ns.png new file mode 100644 index 0000000..b25ae92 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bone_wall_top_ns.png differ diff --git a/src/main/resources/assets/betternether/textures/block/brewing_stand.png b/src/main/resources/assets/betternether/textures/block/brewing_stand.png new file mode 100644 index 0000000..25f1d48 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/brewing_stand.png differ diff --git a/src/main/resources/assets/betternether/textures/block/brewing_stand_base.png b/src/main/resources/assets/betternether/textures/block/brewing_stand_base.png new file mode 100644 index 0000000..04aa842 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/brewing_stand_base.png differ diff --git a/src/main/resources/assets/betternether/textures/block/brick_pot_side.png b/src/main/resources/assets/betternether/textures/block/brick_pot_side.png new file mode 100644 index 0000000..0eb1933 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/brick_pot_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/brick_pot_top.png b/src/main/resources/assets/betternether/textures/block/brick_pot_top.png new file mode 100644 index 0000000..efef0e3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/brick_pot_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bricks_fire_bowl_side.png b/src/main/resources/assets/betternether/textures/block/bricks_fire_bowl_side.png new file mode 100644 index 0000000..8150247 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bricks_fire_bowl_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bricks_fire_bowl_top.png b/src/main/resources/assets/betternether/textures/block/bricks_fire_bowl_top.png new file mode 100644 index 0000000..e88e312 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bricks_fire_bowl_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/bricks_fire_bowl_top_soul.png b/src/main/resources/assets/betternether/textures/block/bricks_fire_bowl_top_soul.png new file mode 100644 index 0000000..880c36e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/bricks_fire_bowl_top_soul.png differ diff --git a/src/main/resources/assets/betternether/textures/block/brown_head.png b/src/main/resources/assets/betternether/textures/block/brown_head.png new file mode 100644 index 0000000..cfe4598 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/brown_head.png differ diff --git a/src/main/resources/assets/betternether/textures/block/brown_stem.png b/src/main/resources/assets/betternether/textures/block/brown_stem.png new file mode 100644 index 0000000..8df82fe Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/brown_stem.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cactus_barrel_side.png b/src/main/resources/assets/betternether/textures/block/cactus_barrel_side.png new file mode 100644 index 0000000..37c8255 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cactus_barrel_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cactus_barrel_top.png b/src/main/resources/assets/betternether/textures/block/cactus_barrel_top.png new file mode 100644 index 0000000..5c5c1a3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cactus_barrel_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cactus_barrel_top_2.png b/src/main/resources/assets/betternether/textures/block/cactus_barrel_top_2.png new file mode 100644 index 0000000..3126367 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cactus_barrel_top_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cactus_middle_side.png b/src/main/resources/assets/betternether/textures/block/cactus_middle_side.png new file mode 100644 index 0000000..95dae0a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cactus_middle_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cactus_middle_top.png b/src/main/resources/assets/betternether/textures/block/cactus_middle_top.png new file mode 100644 index 0000000..ca6afd9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cactus_middle_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cactus_top_bottom.png b/src/main/resources/assets/betternether/textures/block/cactus_top_bottom.png new file mode 100644 index 0000000..63917e4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cactus_top_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cactus_top_side.png b/src/main/resources/assets/betternether/textures/block/cactus_top_side.png new file mode 100644 index 0000000..243ccb9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cactus_top_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cactus_top_top.png b/src/main/resources/assets/betternether/textures/block/cactus_top_top.png new file mode 100644 index 0000000..fc0aacf Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cactus_top_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/ceiling_mushrooms_bottom.png b/src/main/resources/assets/betternether/textures/block/ceiling_mushrooms_bottom.png new file mode 100644 index 0000000..e21f040 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/ceiling_mushrooms_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/ceiling_mushrooms_side.png b/src/main/resources/assets/betternether/textures/block/ceiling_mushrooms_side.png new file mode 100644 index 0000000..58b7433 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/ceiling_mushrooms_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/chair_stalagnate.png b/src/main/resources/assets/betternether/textures/block/chair_stalagnate.png new file mode 100644 index 0000000..64a7b57 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/chair_stalagnate.png differ diff --git a/src/main/resources/assets/betternether/textures/block/chest_of_drawers_back.png b/src/main/resources/assets/betternether/textures/block/chest_of_drawers_back.png new file mode 100644 index 0000000..a5cc517 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/chest_of_drawers_back.png differ diff --git a/src/main/resources/assets/betternether/textures/block/chest_of_drawers_front.png b/src/main/resources/assets/betternether/textures/block/chest_of_drawers_front.png new file mode 100644 index 0000000..3095c32 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/chest_of_drawers_front.png differ diff --git a/src/main/resources/assets/betternether/textures/block/chest_of_drawers_side.png b/src/main/resources/assets/betternether/textures/block/chest_of_drawers_side.png new file mode 100644 index 0000000..6b59a5a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/chest_of_drawers_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/chest_of_drawers_top.png b/src/main/resources/assets/betternether/textures/block/chest_of_drawers_top.png new file mode 100644 index 0000000..e59a987 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/chest_of_drawers_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite.png b/src/main/resources/assets/betternether/textures/block/cincinnasite.png new file mode 100644 index 0000000..25d21c8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_anvil_bottom.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_anvil_bottom.png new file mode 100644 index 0000000..a2b6ca9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_anvil_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_anvil_front.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_anvil_front.png new file mode 100644 index 0000000..bf5bbb7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_anvil_front.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_anvil_side.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_anvil_side.png new file mode 100644 index 0000000..13146c5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_anvil_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_anvil_top.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_anvil_top.png new file mode 100644 index 0000000..a07ce0f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_anvil_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_brick_plate.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_brick_plate.png new file mode 100644 index 0000000..86cffa4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_brick_plate.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_bricks.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_bricks.png new file mode 100644 index 0000000..257ada6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_bricks.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_bricks_side.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_bricks_side.png new file mode 100644 index 0000000..e004f1f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_bricks_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_bricks_top.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_bricks_top.png new file mode 100644 index 0000000..5df49c2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_bricks_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_button.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_button.png new file mode 100644 index 0000000..c876539 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_button.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_chain.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_chain.png new file mode 100644 index 0000000..6c30875 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_chain.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_fire_bowl_side.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_fire_bowl_side.png new file mode 100644 index 0000000..3662bd0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_fire_bowl_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_fire_bowl_top.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_fire_bowl_top.png new file mode 100644 index 0000000..1ac53c0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_fire_bowl_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_fire_bowl_top_soul.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_fire_bowl_top_soul.png new file mode 100644 index 0000000..dab5787 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_fire_bowl_top_soul.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_off.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_off.png new file mode 100644 index 0000000..f6bfa8c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_off.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_on.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_on.png new file mode 100644 index 0000000..000542a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_on.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_on.png.mcmeta b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_on.png.mcmeta new file mode 100644 index 0000000..ebcef26 --- /dev/null +++ b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_on.png.mcmeta @@ -0,0 +1,24 @@ +{ + "animation": { + "interpolate": true, + "frametime": 5, + "frames": [ + 0, + 1, + 2, + 3, + 1, + 2, + 0, + 3, + 2, + 1, + 3, + 0, + 1, + 2, + 0, + 3 + ] + } +} diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_on_e.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_on_e.png new file mode 100644 index 0000000..9cd1e30 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_on_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_on_e.png.mcmeta b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_on_e.png.mcmeta new file mode 100644 index 0000000..ebcef26 --- /dev/null +++ b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_front_on_e.png.mcmeta @@ -0,0 +1,24 @@ +{ + "animation": { + "interpolate": true, + "frametime": 5, + "frames": [ + 0, + 1, + 2, + 3, + 1, + 2, + 0, + 3, + 2, + 1, + 3, + 0, + 1, + 2, + 0, + 3 + ] + } +} diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_side.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_side.png new file mode 100644 index 0000000..6f1dbed Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_top.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_top.png new file mode 100644 index 0000000..777e144 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_forge_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_forged.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_forged.png new file mode 100644 index 0000000..2a9ebd3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_forged.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_lantern.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_lantern.png new file mode 100644 index 0000000..3e02c27 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_lantern.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_lantern_small.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_lantern_small.png new file mode 100644 index 0000000..dd8dab8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_lantern_small.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_lantern_small_e.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_lantern_small_e.png new file mode 100644 index 0000000..e096428 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_lantern_small_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_ore.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_ore.png new file mode 100644 index 0000000..20753ba Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_ore.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_panel.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_panel.png new file mode 100644 index 0000000..63ab044 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_panel.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_pedestal_side.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_pedestal_side.png new file mode 100644 index 0000000..e124d1a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_pedestal_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_pedestal_top.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_pedestal_top.png new file mode 100644 index 0000000..fd6dd36 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_pedestal_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_pillar_bottom.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_pillar_bottom.png new file mode 100644 index 0000000..080ff7c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_pillar_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_pillar_middle.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_pillar_middle.png new file mode 100644 index 0000000..008d071 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_pillar_middle.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_pillar_small.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_pillar_small.png new file mode 100644 index 0000000..70fd228 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_pillar_small.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_pillar_top.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_pillar_top.png new file mode 100644 index 0000000..c64d561 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_pillar_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_plate_up.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_plate_up.png new file mode 100644 index 0000000..39338ac Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_plate_up.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_post_side.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_post_side.png new file mode 100644 index 0000000..48479d2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_post_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_slab.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_slab.png new file mode 100644 index 0000000..29b343f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_slab.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_spiral.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_spiral.png new file mode 100644 index 0000000..387756c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_spiral.png differ diff --git a/src/main/resources/assets/betternether/textures/block/cincinnasite_tiles_small.png b/src/main/resources/assets/betternether/textures/block/cincinnasite_tiles_small.png new file mode 100644 index 0000000..d01bcf1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/cincinnasite_tiles_small.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_anchor_tree_bottom.png b/src/main/resources/assets/betternether/textures/block/crafting_table_anchor_tree_bottom.png new file mode 100644 index 0000000..d62a9c4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_anchor_tree_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_anchor_tree_front.png b/src/main/resources/assets/betternether/textures/block/crafting_table_anchor_tree_front.png new file mode 100644 index 0000000..4fec98c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_anchor_tree_front.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_anchor_tree_side.png b/src/main/resources/assets/betternether/textures/block/crafting_table_anchor_tree_side.png new file mode 100644 index 0000000..35279ae Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_anchor_tree_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_anchor_tree_top.png b/src/main/resources/assets/betternether/textures/block/crafting_table_anchor_tree_top.png new file mode 100644 index 0000000..a8ca6ed Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_anchor_tree_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_crimson_bottom.png b/src/main/resources/assets/betternether/textures/block/crafting_table_crimson_bottom.png new file mode 100644 index 0000000..c6184ef Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_crimson_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_crimson_front.png b/src/main/resources/assets/betternether/textures/block/crafting_table_crimson_front.png new file mode 100644 index 0000000..81a22a3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_crimson_front.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_crimson_side.png b/src/main/resources/assets/betternether/textures/block/crafting_table_crimson_side.png new file mode 100644 index 0000000..0ddada7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_crimson_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_crimson_top.png b/src/main/resources/assets/betternether/textures/block/crafting_table_crimson_top.png new file mode 100644 index 0000000..7bb9072 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_crimson_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_bottom.png b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_bottom.png new file mode 100644 index 0000000..01011c7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_fir_bottom.png b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_fir_bottom.png new file mode 100644 index 0000000..fddbb6c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_fir_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_fir_front.png b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_fir_front.png new file mode 100644 index 0000000..4598884 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_fir_front.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_fir_side.png b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_fir_side.png new file mode 100644 index 0000000..575fb85 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_fir_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_fir_top.png b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_fir_top.png new file mode 100644 index 0000000..2af9d25 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_fir_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_front.png b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_front.png new file mode 100644 index 0000000..cc2225c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_front.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_side.png b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_side.png new file mode 100644 index 0000000..630c02a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_top.png b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_top.png new file mode 100644 index 0000000..6344c5c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_mushroom_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_nether_sakura_bottom.png b/src/main/resources/assets/betternether/textures/block/crafting_table_nether_sakura_bottom.png new file mode 100644 index 0000000..df5e9d4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_nether_sakura_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_nether_sakura_front.png b/src/main/resources/assets/betternether/textures/block/crafting_table_nether_sakura_front.png new file mode 100644 index 0000000..4abfdda Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_nether_sakura_front.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_nether_sakura_side.png b/src/main/resources/assets/betternether/textures/block/crafting_table_nether_sakura_side.png new file mode 100644 index 0000000..e26bd39 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_nether_sakura_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_nether_sakura_top.png b/src/main/resources/assets/betternether/textures/block/crafting_table_nether_sakura_top.png new file mode 100644 index 0000000..4dba772 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_nether_sakura_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_reed_bottom.png b/src/main/resources/assets/betternether/textures/block/crafting_table_reed_bottom.png new file mode 100644 index 0000000..123e19c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_reed_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_reed_front.png b/src/main/resources/assets/betternether/textures/block/crafting_table_reed_front.png new file mode 100644 index 0000000..50c66cc Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_reed_front.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_reed_side.png b/src/main/resources/assets/betternether/textures/block/crafting_table_reed_side.png new file mode 100644 index 0000000..f7cbe4a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_reed_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_reed_top.png b/src/main/resources/assets/betternether/textures/block/crafting_table_reed_top.png new file mode 100644 index 0000000..1cc18bf Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_reed_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_rubeus_bottom.png b/src/main/resources/assets/betternether/textures/block/crafting_table_rubeus_bottom.png new file mode 100644 index 0000000..3a93ee4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_rubeus_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_rubeus_front.png b/src/main/resources/assets/betternether/textures/block/crafting_table_rubeus_front.png new file mode 100644 index 0000000..6863a09 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_rubeus_front.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_rubeus_side.png b/src/main/resources/assets/betternether/textures/block/crafting_table_rubeus_side.png new file mode 100644 index 0000000..e089ec5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_rubeus_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_rubeus_top.png b/src/main/resources/assets/betternether/textures/block/crafting_table_rubeus_top.png new file mode 100644 index 0000000..872bcf0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_rubeus_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_stalagnate_bottom.png b/src/main/resources/assets/betternether/textures/block/crafting_table_stalagnate_bottom.png new file mode 100644 index 0000000..ec45067 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_stalagnate_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_stalagnate_front.png b/src/main/resources/assets/betternether/textures/block/crafting_table_stalagnate_front.png new file mode 100644 index 0000000..463a655 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_stalagnate_front.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_stalagnate_side.png b/src/main/resources/assets/betternether/textures/block/crafting_table_stalagnate_side.png new file mode 100644 index 0000000..07f5842 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_stalagnate_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_stalagnate_top.png b/src/main/resources/assets/betternether/textures/block/crafting_table_stalagnate_top.png new file mode 100644 index 0000000..c74cc01 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_stalagnate_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_warped_bottom.png b/src/main/resources/assets/betternether/textures/block/crafting_table_warped_bottom.png new file mode 100644 index 0000000..73157ec Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_warped_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_warped_front.png b/src/main/resources/assets/betternether/textures/block/crafting_table_warped_front.png new file mode 100644 index 0000000..fde1ba8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_warped_front.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_warped_side.png b/src/main/resources/assets/betternether/textures/block/crafting_table_warped_side.png new file mode 100644 index 0000000..3f21582 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_warped_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_warped_top.png b/src/main/resources/assets/betternether/textures/block/crafting_table_warped_top.png new file mode 100644 index 0000000..81404e9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_warped_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_wart_bottom.png b/src/main/resources/assets/betternether/textures/block/crafting_table_wart_bottom.png new file mode 100644 index 0000000..b6e6fcc Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_wart_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_wart_front.png b/src/main/resources/assets/betternether/textures/block/crafting_table_wart_front.png new file mode 100644 index 0000000..b48bc24 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_wart_front.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_wart_side.png b/src/main/resources/assets/betternether/textures/block/crafting_table_wart_side.png new file mode 100644 index 0000000..e2287af Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_wart_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_wart_top.png b/src/main/resources/assets/betternether/textures/block/crafting_table_wart_top.png new file mode 100644 index 0000000..c939470 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_wart_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_willow_bottom.png b/src/main/resources/assets/betternether/textures/block/crafting_table_willow_bottom.png new file mode 100644 index 0000000..a655c90 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_willow_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_willow_front.png b/src/main/resources/assets/betternether/textures/block/crafting_table_willow_front.png new file mode 100644 index 0000000..f82a8e5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_willow_front.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_willow_side.png b/src/main/resources/assets/betternether/textures/block/crafting_table_willow_side.png new file mode 100644 index 0000000..128ec00 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_willow_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crafting_table_willow_top.png b/src/main/resources/assets/betternether/textures/block/crafting_table_willow_top.png new file mode 100644 index 0000000..9a7c0ec Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crafting_table_willow_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/crimson_ladder.png b/src/main/resources/assets/betternether/textures/block/crimson_ladder.png new file mode 100644 index 0000000..9ce28fb Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/crimson_ladder.png differ diff --git a/src/main/resources/assets/betternether/textures/block/egg_plant.png b/src/main/resources/assets/betternether/textures/block/egg_plant.png new file mode 100644 index 0000000..7fd85e1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/egg_plant.png differ diff --git a/src/main/resources/assets/betternether/textures/block/egg_plant_vine.png b/src/main/resources/assets/betternether/textures/block/egg_plant_vine.png new file mode 100644 index 0000000..17238d8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/egg_plant_vine.png differ diff --git a/src/main/resources/assets/betternether/textures/block/eye_bottom.png b/src/main/resources/assets/betternether/textures/block/eye_bottom.png new file mode 100644 index 0000000..4d5ebc1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/eye_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/eye_seed.png b/src/main/resources/assets/betternether/textures/block/eye_seed.png new file mode 100644 index 0000000..b202b14 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/eye_seed.png differ diff --git a/src/main/resources/assets/betternether/textures/block/eye_seed_bottom.png b/src/main/resources/assets/betternether/textures/block/eye_seed_bottom.png new file mode 100644 index 0000000..67cefbe Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/eye_seed_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/eye_side.png b/src/main/resources/assets/betternether/textures/block/eye_side.png new file mode 100644 index 0000000..505e28b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/eye_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/eye_small_bottom.png b/src/main/resources/assets/betternether/textures/block/eye_small_bottom.png new file mode 100644 index 0000000..6c52a3e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/eye_small_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/eye_top.png b/src/main/resources/assets/betternether/textures/block/eye_top.png new file mode 100644 index 0000000..7ae8b44 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/eye_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/eye_vine.png b/src/main/resources/assets/betternether/textures/block/eye_vine.png new file mode 100644 index 0000000..8e09137 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/eye_vine.png differ diff --git a/src/main/resources/assets/betternether/textures/block/farmland_side.png b/src/main/resources/assets/betternether/textures/block/farmland_side.png new file mode 100644 index 0000000..18a7c98 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/farmland_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/farmland_soil.png b/src/main/resources/assets/betternether/textures/block/farmland_soil.png new file mode 100644 index 0000000..fba0a4a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/farmland_soil.png differ diff --git a/src/main/resources/assets/betternether/textures/block/farmland_top.png b/src/main/resources/assets/betternether/textures/block/farmland_top.png new file mode 100644 index 0000000..c83602b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/farmland_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/feather_fern_center.png b/src/main/resources/assets/betternether/textures/block/feather_fern_center.png new file mode 100644 index 0000000..a5100cf Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/feather_fern_center.png differ diff --git a/src/main/resources/assets/betternether/textures/block/feather_fern_center_1.png b/src/main/resources/assets/betternether/textures/block/feather_fern_center_1.png new file mode 100644 index 0000000..9ec69f0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/feather_fern_center_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/feather_fern_center_2.png b/src/main/resources/assets/betternether/textures/block/feather_fern_center_2.png new file mode 100644 index 0000000..0cbae04 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/feather_fern_center_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/feather_fern_leaf.png b/src/main/resources/assets/betternether/textures/block/feather_fern_leaf.png new file mode 100644 index 0000000..c2cd01d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/feather_fern_leaf.png differ diff --git a/src/main/resources/assets/betternether/textures/block/feather_fern_leaf_1.png b/src/main/resources/assets/betternether/textures/block/feather_fern_leaf_1.png new file mode 100644 index 0000000..d1f81cb Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/feather_fern_leaf_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/feather_fern_leaf_2.png b/src/main/resources/assets/betternether/textures/block/feather_fern_leaf_2.png new file mode 100644 index 0000000..96f1a86 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/feather_fern_leaf_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/fire_small.png b/src/main/resources/assets/betternether/textures/block/fire_small.png new file mode 100644 index 0000000..fe4ab70 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/fire_small.png differ diff --git a/src/main/resources/assets/betternether/textures/block/fire_small.png.mcmeta b/src/main/resources/assets/betternether/textures/block/fire_small.png.mcmeta new file mode 100644 index 0000000..7644671 --- /dev/null +++ b/src/main/resources/assets/betternether/textures/block/fire_small.png.mcmeta @@ -0,0 +1,38 @@ +{ + "animation": { + "frames": [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15 + ] + } +} diff --git a/src/main/resources/assets/betternether/textures/block/flowered_vine_1.png b/src/main/resources/assets/betternether/textures/block/flowered_vine_1.png new file mode 100644 index 0000000..7dd12cb Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/flowered_vine_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/flowered_vine_2.png b/src/main/resources/assets/betternether/textures/block/flowered_vine_2.png new file mode 100644 index 0000000..8e45fb2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/flowered_vine_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/flowered_vine_3.png b/src/main/resources/assets/betternether/textures/block/flowered_vine_3.png new file mode 100644 index 0000000..c9622b8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/flowered_vine_3.png differ diff --git a/src/main/resources/assets/betternether/textures/block/flowered_vine_bottom_1.png b/src/main/resources/assets/betternether/textures/block/flowered_vine_bottom_1.png new file mode 100644 index 0000000..4f8fc9b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/flowered_vine_bottom_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/flowered_vine_bottom_2.png b/src/main/resources/assets/betternether/textures/block/flowered_vine_bottom_2.png new file mode 100644 index 0000000..13a65f2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/flowered_vine_bottom_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/giant_lucis_bottom.png b/src/main/resources/assets/betternether/textures/block/giant_lucis_bottom.png new file mode 100644 index 0000000..ea2a9d1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/giant_lucis_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/giant_lucis_side.png b/src/main/resources/assets/betternether/textures/block/giant_lucis_side.png new file mode 100644 index 0000000..72865b2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/giant_lucis_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/giant_lucis_top.png b/src/main/resources/assets/betternether/textures/block/giant_lucis_top.png new file mode 100644 index 0000000..d05df4a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/giant_lucis_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/giant_mold_fur.png b/src/main/resources/assets/betternether/textures/block/giant_mold_fur.png new file mode 100644 index 0000000..850ddd1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/giant_mold_fur.png differ diff --git a/src/main/resources/assets/betternether/textures/block/giant_mold_roots.png b/src/main/resources/assets/betternether/textures/block/giant_mold_roots.png new file mode 100644 index 0000000..5d7063a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/giant_mold_roots.png differ diff --git a/src/main/resources/assets/betternether/textures/block/giant_mold_small.png b/src/main/resources/assets/betternether/textures/block/giant_mold_small.png new file mode 100644 index 0000000..293ea33 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/giant_mold_small.png differ diff --git a/src/main/resources/assets/betternether/textures/block/giant_mold_stem_side.png b/src/main/resources/assets/betternether/textures/block/giant_mold_stem_side.png new file mode 100644 index 0000000..b020ce6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/giant_mold_stem_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/giant_mold_top.png b/src/main/resources/assets/betternether/textures/block/giant_mold_top.png new file mode 100644 index 0000000..69b41e4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/giant_mold_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_center_bottom.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_center_bottom.png new file mode 100644 index 0000000..4fb045d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_center_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_center_bottom_e.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_center_bottom_e.png new file mode 100644 index 0000000..4fb045d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_center_bottom_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_center_top.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_center_top.png new file mode 100644 index 0000000..896df69 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_center_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_center_top_e.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_center_top_e.png new file mode 100644 index 0000000..896df69 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_center_top_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_corner_bottom.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_corner_bottom.png new file mode 100644 index 0000000..80557b5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_corner_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_corner_bottom_e.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_corner_bottom_e.png new file mode 100644 index 0000000..80557b5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_corner_bottom_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_corner_top.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_corner_top.png new file mode 100644 index 0000000..6c77a65 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_corner_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_corner_top_e.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_corner_top_e.png new file mode 100644 index 0000000..6c77a65 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_corner_top_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_side_bottom.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_side_bottom.png new file mode 100644 index 0000000..be43b5d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_side_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_side_bottom_e.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_side_bottom_e.png new file mode 100644 index 0000000..be43b5d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_side_bottom_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_side_top.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_side_top.png new file mode 100644 index 0000000..20ce8c5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_side_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_side_top_e.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_side_top_e.png new file mode 100644 index 0000000..20ce8c5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_side_top_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_spore_bottom.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_spore_bottom.png new file mode 100644 index 0000000..33511a7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_spore_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_spore_bottom_e.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_spore_bottom_e.png new file mode 100644 index 0000000..33511a7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_spore_bottom_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_spore_top.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_spore_top.png new file mode 100644 index 0000000..f33f40a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_spore_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/glowmushroom_spore_top_e.png b/src/main/resources/assets/betternether/textures/block/glowmushroom_spore_top_e.png new file mode 100644 index 0000000..f33f40a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/glowmushroom_spore_top_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/golden_lumabus_bulb_1.png b/src/main/resources/assets/betternether/textures/block/golden_lumabus_bulb_1.png new file mode 100644 index 0000000..c39fcec Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/golden_lumabus_bulb_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/golden_lumabus_bulb_2.png b/src/main/resources/assets/betternether/textures/block/golden_lumabus_bulb_2.png new file mode 100644 index 0000000..69bc1c7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/golden_lumabus_bulb_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/golden_lumabus_bulb_3.png b/src/main/resources/assets/betternether/textures/block/golden_lumabus_bulb_3.png new file mode 100644 index 0000000..7e06f76 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/golden_lumabus_bulb_3.png differ diff --git a/src/main/resources/assets/betternether/textures/block/golden_lumabus_bulb_4.png b/src/main/resources/assets/betternether/textures/block/golden_lumabus_bulb_4.png new file mode 100644 index 0000000..3034043 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/golden_lumabus_bulb_4.png differ diff --git a/src/main/resources/assets/betternether/textures/block/golden_lumabus_leaves.png b/src/main/resources/assets/betternether/textures/block/golden_lumabus_leaves.png new file mode 100644 index 0000000..d082d4b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/golden_lumabus_leaves.png differ diff --git a/src/main/resources/assets/betternether/textures/block/golden_lumabus_roots.png b/src/main/resources/assets/betternether/textures/block/golden_lumabus_roots.png new file mode 100644 index 0000000..67c6956 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/golden_lumabus_roots.png differ diff --git a/src/main/resources/assets/betternether/textures/block/golden_lumabus_sapling.png b/src/main/resources/assets/betternether/textures/block/golden_lumabus_sapling.png new file mode 100644 index 0000000..5e4ea40 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/golden_lumabus_sapling.png differ diff --git a/src/main/resources/assets/betternether/textures/block/golden_lumabus_vine.png b/src/main/resources/assets/betternether/textures/block/golden_lumabus_vine.png new file mode 100644 index 0000000..383922c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/golden_lumabus_vine.png differ diff --git a/src/main/resources/assets/betternether/textures/block/golden_vine.png b/src/main/resources/assets/betternether/textures/block/golden_vine.png new file mode 100644 index 0000000..6fcaa7d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/golden_vine.png differ diff --git a/src/main/resources/assets/betternether/textures/block/golden_vine_bottom.png b/src/main/resources/assets/betternether/textures/block/golden_vine_bottom.png new file mode 100644 index 0000000..89903c2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/golden_vine_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/golden_vine_bottom_e.png b/src/main/resources/assets/betternether/textures/block/golden_vine_bottom_e.png new file mode 100644 index 0000000..3929b45 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/golden_vine_bottom_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/golden_vine_e.png b/src/main/resources/assets/betternether/textures/block/golden_vine_e.png new file mode 100644 index 0000000..335de39 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/golden_vine_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/gray_mold_bottom.png b/src/main/resources/assets/betternether/textures/block/gray_mold_bottom.png new file mode 100644 index 0000000..4ad754a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/gray_mold_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/gray_mold_side.png b/src/main/resources/assets/betternether/textures/block/gray_mold_side.png new file mode 100644 index 0000000..ac6f305 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/gray_mold_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/hook_mushroom.png b/src/main/resources/assets/betternether/textures/block/hook_mushroom.png new file mode 100644 index 0000000..a050656 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/hook_mushroom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/hook_mushroom_e.png b/src/main/resources/assets/betternether/textures/block/hook_mushroom_e.png new file mode 100644 index 0000000..a050656 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/hook_mushroom_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/ink_bush_bark.png b/src/main/resources/assets/betternether/textures/block/ink_bush_bark.png new file mode 100644 index 0000000..b049a72 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/ink_bush_bark.png differ diff --git a/src/main/resources/assets/betternether/textures/block/ink_bush_leaves.png b/src/main/resources/assets/betternether/textures/block/ink_bush_leaves.png new file mode 100644 index 0000000..08c4fb8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/ink_bush_leaves.png differ diff --git a/src/main/resources/assets/betternether/textures/block/ink_bush_seed.png b/src/main/resources/assets/betternether/textures/block/ink_bush_seed.png new file mode 100644 index 0000000..165bb44 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/ink_bush_seed.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_bottom.png b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_bottom.png new file mode 100644 index 0000000..dabc9a6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_bottom_poor.png b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_bottom_poor.png new file mode 100644 index 0000000..6630da1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_bottom_poor.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_bottom_sepia.png b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_bottom_sepia.png new file mode 100644 index 0000000..c71329f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_bottom_sepia.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_sapling.png b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_sapling.png new file mode 100644 index 0000000..67cb13b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_sapling.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_side.png b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_side.png new file mode 100644 index 0000000..b5cb981 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_side_poor.png b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_side_poor.png new file mode 100644 index 0000000..e33cfd5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_side_poor.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_side_sepia.png b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_side_sepia.png new file mode 100644 index 0000000..e45b052 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_side_sepia.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_stem.png b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_stem.png new file mode 100644 index 0000000..3713ab4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_stem.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_top.png b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_top.png new file mode 100644 index 0000000..9b03bce Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_top_poor.png b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_top_poor.png new file mode 100644 index 0000000..86f0e54 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_top_poor.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_top_sepia.png b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_top_sepia.png new file mode 100644 index 0000000..8b23ad7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jellyfish_mushroom_top_sepia.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jungle_grass_side.png b/src/main/resources/assets/betternether/textures/block/jungle_grass_side.png new file mode 100644 index 0000000..c66da95 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jungle_grass_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jungle_grass_top.png b/src/main/resources/assets/betternether/textures/block/jungle_grass_top.png new file mode 100644 index 0000000..af22f21 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jungle_grass_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jungle_moss.png b/src/main/resources/assets/betternether/textures/block/jungle_moss.png new file mode 100644 index 0000000..82310d7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jungle_moss.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jungle_moss_2.png b/src/main/resources/assets/betternether/textures/block/jungle_moss_2.png new file mode 100644 index 0000000..8a25276 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jungle_moss_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jungle_plant_1.png b/src/main/resources/assets/betternether/textures/block/jungle_plant_1.png new file mode 100644 index 0000000..8ba2810 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jungle_plant_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jungle_plant_2.png b/src/main/resources/assets/betternether/textures/block/jungle_plant_2.png new file mode 100644 index 0000000..8830011 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jungle_plant_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/jungle_plant_3.png b/src/main/resources/assets/betternether/textures/block/jungle_plant_3.png new file mode 100644 index 0000000..dc6cea9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/jungle_plant_3.png differ diff --git a/src/main/resources/assets/betternether/textures/block/lumabus_bulb_1.png b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_1.png new file mode 100644 index 0000000..e049005 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/lumabus_bulb_1_e.png b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_1_e.png new file mode 100644 index 0000000..81d34ca Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_1_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/lumabus_bulb_2.png b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_2.png new file mode 100644 index 0000000..37d4d63 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/lumabus_bulb_2_e.png b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_2_e.png new file mode 100644 index 0000000..e9f292f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_2_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/lumabus_bulb_3.png b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_3.png new file mode 100644 index 0000000..3d1635d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_3.png differ diff --git a/src/main/resources/assets/betternether/textures/block/lumabus_bulb_3_e.png b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_3_e.png new file mode 100644 index 0000000..4d10498 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_3_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/lumabus_bulb_4.png b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_4.png new file mode 100644 index 0000000..fb92648 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_4.png differ diff --git a/src/main/resources/assets/betternether/textures/block/lumabus_bulb_4_e.png b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_4_e.png new file mode 100644 index 0000000..926e03e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/lumabus_bulb_4_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/lumabus_leaves.png b/src/main/resources/assets/betternether/textures/block/lumabus_leaves.png new file mode 100644 index 0000000..3f84e63 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/lumabus_leaves.png differ diff --git a/src/main/resources/assets/betternether/textures/block/lumabus_roots.png b/src/main/resources/assets/betternether/textures/block/lumabus_roots.png new file mode 100644 index 0000000..bdc0674 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/lumabus_roots.png differ diff --git a/src/main/resources/assets/betternether/textures/block/lumabus_sapling.png b/src/main/resources/assets/betternether/textures/block/lumabus_sapling.png new file mode 100644 index 0000000..6c8a935 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/lumabus_sapling.png differ diff --git a/src/main/resources/assets/betternether/textures/block/lumabus_vine.png b/src/main/resources/assets/betternether/textures/block/lumabus_vine.png new file mode 100644 index 0000000..1ac4433 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/lumabus_vine.png differ diff --git a/src/main/resources/assets/betternether/textures/block/magma_flower_leaf.png b/src/main/resources/assets/betternether/textures/block/magma_flower_leaf.png new file mode 100644 index 0000000..8ee6070 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/magma_flower_leaf.png differ diff --git a/src/main/resources/assets/betternether/textures/block/magma_flower_side.png b/src/main/resources/assets/betternether/textures/block/magma_flower_side.png new file mode 100644 index 0000000..20e877e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/magma_flower_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/magma_flower_side_e.png b/src/main/resources/assets/betternether/textures/block/magma_flower_side_e.png new file mode 100644 index 0000000..fe993ea Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/magma_flower_side_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/magma_flower_top.png b/src/main/resources/assets/betternether/textures/block/magma_flower_top.png new file mode 100644 index 0000000..e4611a1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/magma_flower_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/magma_flower_top_e.png b/src/main/resources/assets/betternether/textures/block/magma_flower_top_e.png new file mode 100644 index 0000000..7f1c6b3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/magma_flower_top_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/moss_parts.png b/src/main/resources/assets/betternether/textures/block/moss_parts.png new file mode 100644 index 0000000..37f516e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/moss_parts.png differ diff --git a/src/main/resources/assets/betternether/textures/block/moss_parts_e.png b/src/main/resources/assets/betternether/textures/block/moss_parts_e.png new file mode 100644 index 0000000..7f90f3e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/moss_parts_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/moss_side.png b/src/main/resources/assets/betternether/textures/block/moss_side.png new file mode 100644 index 0000000..7737654 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/moss_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/moss_top.png b/src/main/resources/assets/betternether/textures/block/moss_top.png new file mode 100644 index 0000000..6aeb7c1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/moss_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_button.png b/src/main/resources/assets/betternether/textures/block/mushroom_button.png new file mode 100644 index 0000000..9a4f277 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_button.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_door_bootom.png b/src/main/resources/assets/betternether/textures/block/mushroom_door_bootom.png new file mode 100644 index 0000000..52208dc Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_door_bootom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_door_side.png b/src/main/resources/assets/betternether/textures/block/mushroom_door_side.png new file mode 100644 index 0000000..17cbe00 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_door_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_door_top.png b/src/main/resources/assets/betternether/textures/block/mushroom_door_top.png new file mode 100644 index 0000000..7faa557 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_door_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fence_side.png b/src/main/resources/assets/betternether/textures/block/mushroom_fence_side.png new file mode 100644 index 0000000..516c0af Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fence_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fence_top.png b/src/main/resources/assets/betternether/textures/block/mushroom_fence_top.png new file mode 100644 index 0000000..8a8ec3e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fence_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fir_bark.png b/src/main/resources/assets/betternether/textures/block/mushroom_fir_bark.png new file mode 100644 index 0000000..daaab87 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fir_bark.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fir_bottom.png b/src/main/resources/assets/betternether/textures/block/mushroom_fir_bottom.png new file mode 100644 index 0000000..43fb971 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fir_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fir_branch.png b/src/main/resources/assets/betternether/textures/block/mushroom_fir_branch.png new file mode 100644 index 0000000..dd58a8b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fir_branch.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fir_cuts.png b/src/main/resources/assets/betternether/textures/block/mushroom_fir_cuts.png new file mode 100644 index 0000000..1e374be Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fir_cuts.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fir_door_lower.png b/src/main/resources/assets/betternether/textures/block/mushroom_fir_door_lower.png new file mode 100644 index 0000000..4a6f29f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fir_door_lower.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fir_door_side.png b/src/main/resources/assets/betternether/textures/block/mushroom_fir_door_side.png new file mode 100644 index 0000000..fbaf83b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fir_door_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fir_door_upper.png b/src/main/resources/assets/betternether/textures/block/mushroom_fir_door_upper.png new file mode 100644 index 0000000..e58ed59 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fir_door_upper.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fir_ladder.png b/src/main/resources/assets/betternether/textures/block/mushroom_fir_ladder.png new file mode 100644 index 0000000..04c098f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fir_ladder.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fir_log_top.png b/src/main/resources/assets/betternether/textures/block/mushroom_fir_log_top.png new file mode 100644 index 0000000..7fa6c55 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fir_log_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fir_planks.png b/src/main/resources/assets/betternether/textures/block/mushroom_fir_planks.png new file mode 100644 index 0000000..da2f37c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fir_planks.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fir_sapling.png b/src/main/resources/assets/betternether/textures/block/mushroom_fir_sapling.png new file mode 100644 index 0000000..70dc5f1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fir_sapling.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fir_top.png b/src/main/resources/assets/betternether/textures/block/mushroom_fir_top.png new file mode 100644 index 0000000..84dc592 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fir_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_fir_trapdoor.png b/src/main/resources/assets/betternether/textures/block/mushroom_fir_trapdoor.png new file mode 100644 index 0000000..42a32e9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_fir_trapdoor.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_grass_side.png b/src/main/resources/assets/betternether/textures/block/mushroom_grass_side.png new file mode 100644 index 0000000..b892612 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_grass_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_grass_top.png b/src/main/resources/assets/betternether/textures/block/mushroom_grass_top.png new file mode 100644 index 0000000..885052e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_grass_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_ladder.png b/src/main/resources/assets/betternether/textures/block/mushroom_ladder.png new file mode 100644 index 0000000..fe7c98b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_ladder.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_planks.png b/src/main/resources/assets/betternether/textures/block/mushroom_planks.png new file mode 100644 index 0000000..a084e09 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_planks.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_plate.png b/src/main/resources/assets/betternether/textures/block/mushroom_plate.png new file mode 100644 index 0000000..a9d5d67 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_plate.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_stem_side.png b/src/main/resources/assets/betternether/textures/block/mushroom_stem_side.png new file mode 100644 index 0000000..c557536 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_stem_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_stem_top.png b/src/main/resources/assets/betternether/textures/block/mushroom_stem_top.png new file mode 100644 index 0000000..295c341 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_stem_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/mushroom_trapdoor.png b/src/main/resources/assets/betternether/textures/block/mushroom_trapdoor.png new file mode 100644 index 0000000..cf65803 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/mushroom_trapdoor.png differ diff --git a/src/main/resources/assets/betternether/textures/block/neon_equisetum.png b/src/main/resources/assets/betternether/textures/block/neon_equisetum.png new file mode 100644 index 0000000..9d6e06b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/neon_equisetum.png differ diff --git a/src/main/resources/assets/betternether/textures/block/neon_equisetum_bottom.png b/src/main/resources/assets/betternether/textures/block/neon_equisetum_bottom.png new file mode 100644 index 0000000..626f55c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/neon_equisetum_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/neon_equisetum_bottom_e.png b/src/main/resources/assets/betternether/textures/block/neon_equisetum_bottom_e.png new file mode 100644 index 0000000..533ea55 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/neon_equisetum_bottom_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/neon_equisetum_e.png b/src/main/resources/assets/betternether/textures/block/neon_equisetum_e.png new file mode 100644 index 0000000..9d6e06b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/neon_equisetum_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/neon_equisetum_middle.png b/src/main/resources/assets/betternether/textures/block/neon_equisetum_middle.png new file mode 100644 index 0000000..b452734 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/neon_equisetum_middle.png differ diff --git a/src/main/resources/assets/betternether/textures/block/neon_equisetum_middle_2.png b/src/main/resources/assets/betternether/textures/block/neon_equisetum_middle_2.png new file mode 100644 index 0000000..13fc4e6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/neon_equisetum_middle_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/neon_equisetum_middle_2_e.png b/src/main/resources/assets/betternether/textures/block/neon_equisetum_middle_2_e.png new file mode 100644 index 0000000..13fc4e6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/neon_equisetum_middle_2_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/neon_equisetum_middle_e.png b/src/main/resources/assets/betternether/textures/block/neon_equisetum_middle_e.png new file mode 100644 index 0000000..b452734 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/neon_equisetum_middle_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/neon_equisetum_stem.png b/src/main/resources/assets/betternether/textures/block/neon_equisetum_stem.png new file mode 100644 index 0000000..70b56c5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/neon_equisetum_stem.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_brick_post.png b/src/main/resources/assets/betternether/textures/block/nether_brick_post.png new file mode 100644 index 0000000..7876d44 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_brick_post.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_brick_tile_large.png b/src/main/resources/assets/betternether/textures/block/nether_brick_tile_large.png new file mode 100644 index 0000000..da8d8d4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_brick_tile_large.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_brick_tile_slab_side.png b/src/main/resources/assets/betternether/textures/block/nether_brick_tile_slab_side.png new file mode 100644 index 0000000..d4e0690 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_brick_tile_slab_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_brick_tile_small.png b/src/main/resources/assets/betternether/textures/block/nether_brick_tile_small.png new file mode 100644 index 0000000..67b9662 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_brick_tile_small.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_brick_wall_side.png b/src/main/resources/assets/betternether/textures/block/nether_brick_wall_side.png new file mode 100644 index 0000000..83a9fc0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_brick_wall_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_brick_wall_top_ew.png b/src/main/resources/assets/betternether/textures/block/nether_brick_wall_top_ew.png new file mode 100644 index 0000000..0c17ec2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_brick_wall_top_ew.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_brick_wall_top_ns.png b/src/main/resources/assets/betternether/textures/block/nether_brick_wall_top_ns.png new file mode 100644 index 0000000..27e3a22 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_brick_wall_top_ns.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_lapis_ore.png b/src/main/resources/assets/betternether/textures/block/nether_lapis_ore.png new file mode 100644 index 0000000..5fd012e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_lapis_ore.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_moss_side.png b/src/main/resources/assets/betternether/textures/block/nether_moss_side.png new file mode 100644 index 0000000..3355d06 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_moss_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_moss_top.png b/src/main/resources/assets/betternether/textures/block/nether_moss_top.png new file mode 100644 index 0000000..521679c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_moss_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_mycelium_side.png b/src/main/resources/assets/betternether/textures/block/nether_mycelium_side.png new file mode 100644 index 0000000..54f8097 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_mycelium_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_mycelium_side_blue.png b/src/main/resources/assets/betternether/textures/block/nether_mycelium_side_blue.png new file mode 100644 index 0000000..4d5ee9e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_mycelium_side_blue.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_mycelium_top.png b/src/main/resources/assets/betternether/textures/block/nether_mycelium_top.png new file mode 100644 index 0000000..9b88936 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_mycelium_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_mycelium_top_blue.png b/src/main/resources/assets/betternether/textures/block/nether_mycelium_top_blue.png new file mode 100644 index 0000000..0b53a6a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_mycelium_top_blue.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_ruby_block.png b/src/main/resources/assets/betternether/textures/block/nether_ruby_block.png new file mode 100644 index 0000000..98a7174 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_ruby_block.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_ruby_ore.png b/src/main/resources/assets/betternether/textures/block/nether_ruby_ore.png new file mode 100644 index 0000000..f1ead0e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_ruby_ore.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_ruby_slab_side.png b/src/main/resources/assets/betternether/textures/block/nether_ruby_slab_side.png new file mode 100644 index 0000000..116b41b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_ruby_slab_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_door_bottom.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_door_bottom.png new file mode 100644 index 0000000..f9638aa Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_door_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_door_side.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_door_side.png new file mode 100644 index 0000000..c4b3ba0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_door_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_door_top.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_door_top.png new file mode 100644 index 0000000..b3cbac9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_door_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_1.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_1.png new file mode 100644 index 0000000..f2d1781 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_1_e.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_1_e.png new file mode 100644 index 0000000..f2d1781 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_1_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_2.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_2.png new file mode 100644 index 0000000..3d1921e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_2_e.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_2_e.png new file mode 100644 index 0000000..3d1921e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_2_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_3.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_3.png new file mode 100644 index 0000000..3aa2a69 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_3.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_3_e.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_3_e.png new file mode 100644 index 0000000..3aa2a69 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_flowers_3_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_ladder.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_ladder.png new file mode 100644 index 0000000..9a750e9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_ladder.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_leaves.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_leaves.png new file mode 100644 index 0000000..a1b81c1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_leaves.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_leaves_2.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_leaves_2.png new file mode 100644 index 0000000..4653c4d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_leaves_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_leaves_side.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_leaves_side.png new file mode 100644 index 0000000..0383fee Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_leaves_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_log_side.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_log_side.png new file mode 100644 index 0000000..f160723 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_log_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_log_top.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_log_top.png new file mode 100644 index 0000000..69ef0dd Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_log_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_planks.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_planks.png new file mode 100644 index 0000000..7b215af Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_planks.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_sapling.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_sapling.png new file mode 100644 index 0000000..8166b67 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_sapling.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_sapling_e.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_sapling_e.png new file mode 100644 index 0000000..7232da0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_sapling_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/nether_sakura_trapdoor.png b/src/main/resources/assets/betternether/textures/block/nether_sakura_trapdoor.png new file mode 100644 index 0000000..b5e915d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/nether_sakura_trapdoor.png differ diff --git a/src/main/resources/assets/betternether/textures/block/netherite_fire_bowl_side.png b/src/main/resources/assets/betternether/textures/block/netherite_fire_bowl_side.png new file mode 100644 index 0000000..f5fcc70 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/netherite_fire_bowl_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/netherite_fire_bowl_top.png b/src/main/resources/assets/betternether/textures/block/netherite_fire_bowl_top.png new file mode 100644 index 0000000..a11ff84 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/netherite_fire_bowl_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/netherite_fire_bowl_top_soul.png b/src/main/resources/assets/betternether/textures/block/netherite_fire_bowl_top_soul.png new file mode 100644 index 0000000..3fcbba3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/netherite_fire_bowl_top_soul.png differ diff --git a/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_off.png b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_off.png new file mode 100644 index 0000000..0d4691f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_off.png differ diff --git a/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_on.png b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_on.png new file mode 100644 index 0000000..1413aa6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_on.png differ diff --git a/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_on.png.mcmeta b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_on.png.mcmeta new file mode 100644 index 0000000..91aeea8 --- /dev/null +++ b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_on.png.mcmeta @@ -0,0 +1,24 @@ +{ + "animation": { + "interpolate": true, + "frametime": 8, + "frames": [ + 0, + 1, + 2, + 3, + 1, + 2, + 0, + 3, + 2, + 1, + 3, + 0, + 1, + 2, + 0, + 3 + ] + } +} diff --git a/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_on_e.png b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_on_e.png new file mode 100644 index 0000000..9268b99 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_on_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_on_e.png.mcmeta b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_on_e.png.mcmeta new file mode 100644 index 0000000..91aeea8 --- /dev/null +++ b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_front_on_e.png.mcmeta @@ -0,0 +1,24 @@ +{ + "animation": { + "interpolate": true, + "frametime": 8, + "frames": [ + 0, + 1, + 2, + 3, + 1, + 2, + 0, + 3, + 2, + 1, + 3, + 0, + 1, + 2, + 0, + 3 + ] + } +} diff --git a/src/main/resources/assets/betternether/textures/block/netherrack_furnace_side.png b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_side.png new file mode 100644 index 0000000..224b244 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/netherrack_furnace_top.png b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_top.png new file mode 100644 index 0000000..2b79f4f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/netherrack_furnace_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/ngrass_1.png b/src/main/resources/assets/betternether/textures/block/ngrass_1.png new file mode 100644 index 0000000..0a44779 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/ngrass_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/ngrass_2.png b/src/main/resources/assets/betternether/textures/block/ngrass_2.png new file mode 100644 index 0000000..2873532 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/ngrass_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/ngrass_3.png b/src/main/resources/assets/betternether/textures/block/ngrass_3.png new file mode 100644 index 0000000..5cc3146 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/ngrass_3.png differ diff --git a/src/main/resources/assets/betternether/textures/block/obsidian_bricks.png b/src/main/resources/assets/betternether/textures/block/obsidian_bricks.png new file mode 100644 index 0000000..1b33529 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/obsidian_bricks.png differ diff --git a/src/main/resources/assets/betternether/textures/block/obsidian_glass.png b/src/main/resources/assets/betternether/textures/block/obsidian_glass.png new file mode 100644 index 0000000..ac16a69 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/obsidian_glass.png differ diff --git a/src/main/resources/assets/betternether/textures/block/obsidian_tile.png b/src/main/resources/assets/betternether/textures/block/obsidian_tile.png new file mode 100644 index 0000000..b53b3c7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/obsidian_tile.png differ diff --git a/src/main/resources/assets/betternether/textures/block/obsidian_tile_small.png b/src/main/resources/assets/betternether/textures/block/obsidian_tile_small.png new file mode 100644 index 0000000..acd25f3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/obsidian_tile_small.png differ diff --git a/src/main/resources/assets/betternether/textures/block/orange_mushroom_bottom.png b/src/main/resources/assets/betternether/textures/block/orange_mushroom_bottom.png new file mode 100644 index 0000000..5811c62 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/orange_mushroom_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/orange_mushroom_side.png b/src/main/resources/assets/betternether/textures/block/orange_mushroom_side.png new file mode 100644 index 0000000..ac389fa Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/orange_mushroom_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/orange_mushroom_top.png b/src/main/resources/assets/betternether/textures/block/orange_mushroom_top.png new file mode 100644 index 0000000..8690115 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/orange_mushroom_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/pig_statue_1.png b/src/main/resources/assets/betternether/textures/block/pig_statue_1.png new file mode 100644 index 0000000..b3ae1eb Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/pig_statue_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/pig_statue_1_body.png b/src/main/resources/assets/betternether/textures/block/pig_statue_1_body.png new file mode 100644 index 0000000..86e4e7c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/pig_statue_1_body.png differ diff --git a/src/main/resources/assets/betternether/textures/block/pig_statue_1_bowl.png b/src/main/resources/assets/betternether/textures/block/pig_statue_1_bowl.png new file mode 100644 index 0000000..d372d7c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/pig_statue_1_bowl.png differ diff --git a/src/main/resources/assets/betternether/textures/block/pot_side.png b/src/main/resources/assets/betternether/textures/block/pot_side.png new file mode 100644 index 0000000..5a1a4ca Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/pot_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/pot_top.png b/src/main/resources/assets/betternether/textures/block/pot_top.png new file mode 100644 index 0000000..9d822b4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/pot_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/pot_top_bottom.png b/src/main/resources/assets/betternether/textures/block/pot_top_bottom.png new file mode 100644 index 0000000..2dd2b92 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/pot_top_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_glass.png b/src/main/resources/assets/betternether/textures/block/quartz_glass.png new file mode 100644 index 0000000..fa20066 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_glass.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_glass_framed.png b/src/main/resources/assets/betternether/textures/block/quartz_glass_framed.png new file mode 100644 index 0000000..2b7d5a8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_glass_framed.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_black.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_black.png new file mode 100644 index 0000000..e9a3cbc Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_black.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_blue.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_blue.png new file mode 100644 index 0000000..e564410 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_blue.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_brown.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_brown.png new file mode 100644 index 0000000..805d76d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_brown.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_cyan.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_cyan.png new file mode 100644 index 0000000..80059d5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_cyan.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_black.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_black.png new file mode 100644 index 0000000..6a617a4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_black.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_blue.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_blue.png new file mode 100644 index 0000000..bae3096 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_blue.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_brown.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_brown.png new file mode 100644 index 0000000..ad3e8d8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_brown.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_cyan.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_cyan.png new file mode 100644 index 0000000..0abb4a5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_cyan.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_gray.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_gray.png new file mode 100644 index 0000000..2fab64f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_gray.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_green.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_green.png new file mode 100644 index 0000000..0e372a5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_green.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_light_blue.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_light_blue.png new file mode 100644 index 0000000..9b8e20d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_light_blue.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_light_gray.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_light_gray.png new file mode 100644 index 0000000..5ece9ab Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_light_gray.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_lime.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_lime.png new file mode 100644 index 0000000..c35291b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_lime.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_magenta.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_magenta.png new file mode 100644 index 0000000..89b0883 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_magenta.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_orange.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_orange.png new file mode 100644 index 0000000..f318f57 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_orange.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_pink.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_pink.png new file mode 100644 index 0000000..832fea3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_pink.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_purple.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_purple.png new file mode 100644 index 0000000..5fb33da Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_purple.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_red.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_red.png new file mode 100644 index 0000000..5c7f663 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_red.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_white.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_white.png new file mode 100644 index 0000000..ed9ae0a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_white.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_yellow.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_yellow.png new file mode 100644 index 0000000..acc7af6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_framed_yellow.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_gray.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_gray.png new file mode 100644 index 0000000..57f5b6d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_gray.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_green.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_green.png new file mode 100644 index 0000000..ddd1a5d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_green.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_light_blue.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_light_blue.png new file mode 100644 index 0000000..4f94140 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_light_blue.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_light_gray.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_light_gray.png new file mode 100644 index 0000000..49874e1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_light_gray.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_lime.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_lime.png new file mode 100644 index 0000000..8c305a4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_lime.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_magenta.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_magenta.png new file mode 100644 index 0000000..63057ab Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_magenta.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_orange.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_orange.png new file mode 100644 index 0000000..bf61209 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_orange.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_pink.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_pink.png new file mode 100644 index 0000000..2dab2d3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_pink.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_purple.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_purple.png new file mode 100644 index 0000000..f1609ce Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_purple.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_red.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_red.png new file mode 100644 index 0000000..10f87df Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_red.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_white.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_white.png new file mode 100644 index 0000000..97948be Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_white.png differ diff --git a/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_yellow.png b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_yellow.png new file mode 100644 index 0000000..dd8c7aa Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/quartz_stained_glass_yellow.png differ diff --git a/src/main/resources/assets/betternether/textures/block/red_head.png b/src/main/resources/assets/betternether/textures/block/red_head.png new file mode 100644 index 0000000..fdf27eb Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/red_head.png differ diff --git a/src/main/resources/assets/betternether/textures/block/red_mold_bottom.png b/src/main/resources/assets/betternether/textures/block/red_mold_bottom.png new file mode 100644 index 0000000..fc54291 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/red_mold_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/red_mold_top.png b/src/main/resources/assets/betternether/textures/block/red_mold_top.png new file mode 100644 index 0000000..375cb56 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/red_mold_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/red_moss_side.png b/src/main/resources/assets/betternether/textures/block/red_moss_side.png new file mode 100644 index 0000000..d7b7ddd Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/red_moss_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/red_moss_top.png b/src/main/resources/assets/betternether/textures/block/red_moss_top.png new file mode 100644 index 0000000..71c899a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/red_moss_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/red_mushroom_mycelium.png b/src/main/resources/assets/betternether/textures/block/red_mushroom_mycelium.png new file mode 100644 index 0000000..43dcb7d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/red_mushroom_mycelium.png differ diff --git a/src/main/resources/assets/betternether/textures/block/red_mushroom_stem.png b/src/main/resources/assets/betternether/textures/block/red_mushroom_stem.png new file mode 100644 index 0000000..dea4943 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/red_mushroom_stem.png differ diff --git a/src/main/resources/assets/betternether/textures/block/reeds_block_side.png b/src/main/resources/assets/betternether/textures/block/reeds_block_side.png new file mode 100644 index 0000000..ba87830 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/reeds_block_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/reeds_block_top.png b/src/main/resources/assets/betternether/textures/block/reeds_block_top.png new file mode 100644 index 0000000..1460ab9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/reeds_block_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/reeds_door_bottom.png b/src/main/resources/assets/betternether/textures/block/reeds_door_bottom.png new file mode 100644 index 0000000..a03395f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/reeds_door_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/reeds_door_top.png b/src/main/resources/assets/betternether/textures/block/reeds_door_top.png new file mode 100644 index 0000000..828cc7e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/reeds_door_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/reeds_fence_side.png b/src/main/resources/assets/betternether/textures/block/reeds_fence_side.png new file mode 100644 index 0000000..42aeb5a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/reeds_fence_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/reeds_fence_top.png b/src/main/resources/assets/betternether/textures/block/reeds_fence_top.png new file mode 100644 index 0000000..d5a73ff Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/reeds_fence_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/reeds_ladder.png b/src/main/resources/assets/betternether/textures/block/reeds_ladder.png new file mode 100644 index 0000000..ef8d96e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/reeds_ladder.png differ diff --git a/src/main/resources/assets/betternether/textures/block/reeds_middle.png b/src/main/resources/assets/betternether/textures/block/reeds_middle.png new file mode 100644 index 0000000..109f16b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/reeds_middle.png differ diff --git a/src/main/resources/assets/betternether/textures/block/reeds_potted.png b/src/main/resources/assets/betternether/textures/block/reeds_potted.png new file mode 100644 index 0000000..235e8fa Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/reeds_potted.png differ diff --git a/src/main/resources/assets/betternether/textures/block/reeds_top.png b/src/main/resources/assets/betternether/textures/block/reeds_top.png new file mode 100644 index 0000000..0079dc0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/reeds_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/reeds_trapdoor.png b/src/main/resources/assets/betternether/textures/block/reeds_trapdoor.png new file mode 100644 index 0000000..12a4b33 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/reeds_trapdoor.png differ diff --git a/src/main/resources/assets/betternether/textures/block/roof_tile_cincinnasite.png b/src/main/resources/assets/betternether/textures/block/roof_tile_cincinnasite.png new file mode 100644 index 0000000..b3f18d5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/roof_tile_cincinnasite.png differ diff --git a/src/main/resources/assets/betternether/textures/block/roof_tile_nether_bricks.png b/src/main/resources/assets/betternether/textures/block/roof_tile_nether_bricks.png new file mode 100644 index 0000000..06e62b5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/roof_tile_nether_bricks.png differ diff --git a/src/main/resources/assets/betternether/textures/block/roof_tile_reeds.png b/src/main/resources/assets/betternether/textures/block/roof_tile_reeds.png new file mode 100644 index 0000000..90f1e33 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/roof_tile_reeds.png differ diff --git a/src/main/resources/assets/betternether/textures/block/roof_tile_stalagnate.png b/src/main/resources/assets/betternether/textures/block/roof_tile_stalagnate.png new file mode 100644 index 0000000..b572dbb Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/roof_tile_stalagnate.png differ diff --git a/src/main/resources/assets/betternether/textures/block/roof_tile_wart.png b/src/main/resources/assets/betternether/textures/block/roof_tile_wart.png new file mode 100644 index 0000000..d7dbe4b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/roof_tile_wart.png differ diff --git a/src/main/resources/assets/betternether/textures/block/roof_tile_willow.png b/src/main/resources/assets/betternether/textures/block/roof_tile_willow.png new file mode 100644 index 0000000..f3569d9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/roof_tile_willow.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_cone_bottom.png b/src/main/resources/assets/betternether/textures/block/rubeus_cone_bottom.png new file mode 100644 index 0000000..1a48d24 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_cone_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_cone_bottom_e.png b/src/main/resources/assets/betternether/textures/block/rubeus_cone_bottom_e.png new file mode 100644 index 0000000..f0b2416 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_cone_bottom_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_cone_side.png b/src/main/resources/assets/betternether/textures/block/rubeus_cone_side.png new file mode 100644 index 0000000..1939579 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_cone_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_cone_side_e.png b/src/main/resources/assets/betternether/textures/block/rubeus_cone_side_e.png new file mode 100644 index 0000000..1afab90 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_cone_side_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_cone_top.png b/src/main/resources/assets/betternether/textures/block/rubeus_cone_top.png new file mode 100644 index 0000000..0f5d80f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_cone_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_door_bottom.png b/src/main/resources/assets/betternether/textures/block/rubeus_door_bottom.png new file mode 100644 index 0000000..c172c7b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_door_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_door_top.png b/src/main/resources/assets/betternether/textures/block/rubeus_door_top.png new file mode 100644 index 0000000..ef63a22 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_door_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_ladder.png b/src/main/resources/assets/betternether/textures/block/rubeus_ladder.png new file mode 100644 index 0000000..57803e8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_ladder.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_leaves.png b/src/main/resources/assets/betternether/textures/block/rubeus_leaves.png new file mode 100644 index 0000000..b702d3b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_leaves.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_log_side.png b/src/main/resources/assets/betternether/textures/block/rubeus_log_side.png new file mode 100644 index 0000000..6933bbc Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_log_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_log_side_blend.png b/src/main/resources/assets/betternether/textures/block/rubeus_log_side_blend.png new file mode 100644 index 0000000..eec37f3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_log_side_blend.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_log_top.png b/src/main/resources/assets/betternether/textures/block/rubeus_log_top.png new file mode 100644 index 0000000..747149c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_log_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_planks.png b/src/main/resources/assets/betternether/textures/block/rubeus_planks.png new file mode 100644 index 0000000..cacf60d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_planks.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_sapling.png b/src/main/resources/assets/betternether/textures/block/rubeus_sapling.png new file mode 100644 index 0000000..12834ee Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_sapling.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_trapdoor.png b/src/main/resources/assets/betternether/textures/block/rubeus_trapdoor.png new file mode 100644 index 0000000..cc5671a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_trapdoor.png differ diff --git a/src/main/resources/assets/betternether/textures/block/rubeus_trapdoor_side.png b/src/main/resources/assets/betternether/textures/block/rubeus_trapdoor_side.png new file mode 100644 index 0000000..1a2eb23 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/rubeus_trapdoor_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/sepia_bone_grass_1.png b/src/main/resources/assets/betternether/textures/block/sepia_bone_grass_1.png new file mode 100644 index 0000000..2f7ca0d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/sepia_bone_grass_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/sepia_bone_grass_2.png b/src/main/resources/assets/betternether/textures/block/sepia_bone_grass_2.png new file mode 100644 index 0000000..f15c0d9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/sepia_bone_grass_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/sepia_bone_grass_3.png b/src/main/resources/assets/betternether/textures/block/sepia_bone_grass_3.png new file mode 100644 index 0000000..66b0e4c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/sepia_bone_grass_3.png differ diff --git a/src/main/resources/assets/betternether/textures/block/sepia_mushroom_grass_side.png b/src/main/resources/assets/betternether/textures/block/sepia_mushroom_grass_side.png new file mode 100644 index 0000000..7ce87c5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/sepia_mushroom_grass_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/sepia_mushroom_grass_top.png b/src/main/resources/assets/betternether/textures/block/sepia_mushroom_grass_top.png new file mode 100644 index 0000000..e6afa0c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/sepia_mushroom_grass_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/smoker_stem.png b/src/main/resources/assets/betternether/textures/block/smoker_stem.png new file mode 100644 index 0000000..df41c9a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/smoker_stem.png differ diff --git a/src/main/resources/assets/betternether/textures/block/smoker_stem_e.png b/src/main/resources/assets/betternether/textures/block/smoker_stem_e.png new file mode 100644 index 0000000..c4bead5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/smoker_stem_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/smoker_top.png b/src/main/resources/assets/betternether/textures/block/smoker_top.png new file mode 100644 index 0000000..ebd0a49 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/smoker_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_grass_01.png b/src/main/resources/assets/betternether/textures/block/soul_grass_01.png new file mode 100644 index 0000000..dc4e9ef Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_grass_01.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_grass_02.png b/src/main/resources/assets/betternether/textures/block/soul_grass_02.png new file mode 100644 index 0000000..8367d22 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_grass_02.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_lily_big_bottom.png b/src/main/resources/assets/betternether/textures/block/soul_lily_big_bottom.png new file mode 100644 index 0000000..a7bec98 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_lily_big_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_lily_big_middle.png b/src/main/resources/assets/betternether/textures/block/soul_lily_big_middle.png new file mode 100644 index 0000000..88544ab Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_lily_big_middle.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_lily_big_top_corner.png b/src/main/resources/assets/betternether/textures/block/soul_lily_big_top_corner.png new file mode 100644 index 0000000..5ead18e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_lily_big_top_corner.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_lily_big_top_side.png b/src/main/resources/assets/betternether/textures/block/soul_lily_big_top_side.png new file mode 100644 index 0000000..5a786e3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_lily_big_top_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_lily_leaf_bottom_medium.png b/src/main/resources/assets/betternether/textures/block/soul_lily_leaf_bottom_medium.png new file mode 100644 index 0000000..e98b806 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_lily_leaf_bottom_medium.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_lily_leaf_top_medium.png b/src/main/resources/assets/betternether/textures/block/soul_lily_leaf_top_medium.png new file mode 100644 index 0000000..0f3c329 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_lily_leaf_top_medium.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_lily_sapling.png b/src/main/resources/assets/betternether/textures/block/soul_lily_sapling.png new file mode 100644 index 0000000..0b28a36 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_lily_sapling.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_lily_small.png b/src/main/resources/assets/betternether/textures/block/soul_lily_small.png new file mode 100644 index 0000000..c28ddf9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_lily_small.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_lily_stem_bottom_medium.png b/src/main/resources/assets/betternether/textures/block/soul_lily_stem_bottom_medium.png new file mode 100644 index 0000000..a2d3d37 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_lily_stem_bottom_medium.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_sandstone.png b/src/main/resources/assets/betternether/textures/block/soul_sandstone.png new file mode 100644 index 0000000..9853f34 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_sandstone.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_sandstone_bottom.png b/src/main/resources/assets/betternether/textures/block/soul_sandstone_bottom.png new file mode 100644 index 0000000..f3e97d1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_sandstone_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_sandstone_chiseled.png b/src/main/resources/assets/betternether/textures/block/soul_sandstone_chiseled.png new file mode 100644 index 0000000..2879924 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_sandstone_chiseled.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_sandstone_cut.png b/src/main/resources/assets/betternether/textures/block/soul_sandstone_cut.png new file mode 100644 index 0000000..ff8577e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_sandstone_cut.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_sandstone_cut_slabs.png b/src/main/resources/assets/betternether/textures/block/soul_sandstone_cut_slabs.png new file mode 100644 index 0000000..f8a5e21 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_sandstone_cut_slabs.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_sandstone_slabs.png b/src/main/resources/assets/betternether/textures/block/soul_sandstone_slabs.png new file mode 100644 index 0000000..5afae76 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_sandstone_slabs.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_sandstone_top.png b/src/main/resources/assets/betternether/textures/block/soul_sandstone_top.png new file mode 100644 index 0000000..f290396 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_sandstone_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_sandstone_wall.png b/src/main/resources/assets/betternether/textures/block/soul_sandstone_wall.png new file mode 100644 index 0000000..1b087d4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_sandstone_wall.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_vein_1.png b/src/main/resources/assets/betternether/textures/block/soul_vein_1.png new file mode 100644 index 0000000..a8bb958 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_vein_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_vein_2.png b/src/main/resources/assets/betternether/textures/block/soul_vein_2.png new file mode 100644 index 0000000..736f662 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_vein_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_vein_3.png b/src/main/resources/assets/betternether/textures/block/soul_vein_3.png new file mode 100644 index 0000000..7c9b608 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_vein_3.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soul_vein_4.png b/src/main/resources/assets/betternether/textures/block/soul_vein_4.png new file mode 100644 index 0000000..80130e3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soul_vein_4.png differ diff --git a/src/main/resources/assets/betternether/textures/block/soup.png b/src/main/resources/assets/betternether/textures/block/soup.png new file mode 100644 index 0000000..171979f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/soup.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_bark_side.png b/src/main/resources/assets/betternether/textures/block/stalagnate_bark_side.png new file mode 100644 index 0000000..7bd3aef Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_bark_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_bark_top.png b/src/main/resources/assets/betternether/textures/block/stalagnate_bark_top.png new file mode 100644 index 0000000..699cdc2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_bark_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_ladder.png b/src/main/resources/assets/betternether/textures/block/stalagnate_ladder.png new file mode 100644 index 0000000..2999b37 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_ladder.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_planks.png b/src/main/resources/assets/betternether/textures/block/stalagnate_planks.png new file mode 100644 index 0000000..a02db77 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_planks.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_planks_door_bottom.png b/src/main/resources/assets/betternether/textures/block/stalagnate_planks_door_bottom.png new file mode 100644 index 0000000..dc3e35a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_planks_door_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_planks_door_top.png b/src/main/resources/assets/betternether/textures/block/stalagnate_planks_door_top.png new file mode 100644 index 0000000..ac0d843 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_planks_door_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_planks_trapdoor.png b/src/main/resources/assets/betternether/textures/block/stalagnate_planks_trapdoor.png new file mode 100644 index 0000000..e270054 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_planks_trapdoor.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_roots.png b/src/main/resources/assets/betternether/textures/block/stalagnate_roots.png new file mode 100644 index 0000000..a2da3ac Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_roots.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_seed.png b/src/main/resources/assets/betternether/textures/block/stalagnate_seed.png new file mode 100644 index 0000000..7afd0a6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_seed.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_top.png b/src/main/resources/assets/betternether/textures/block/stalagnate_top.png new file mode 100644 index 0000000..183da34 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_bottom.png b/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_bottom.png new file mode 100644 index 0000000..0eb5512 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_leaves.png b/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_leaves.png new file mode 100644 index 0000000..16a80c4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_leaves.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_leaves_2.png b/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_leaves_2.png new file mode 100644 index 0000000..43a36a2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_leaves_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_middle.png b/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_middle.png new file mode 100644 index 0000000..c2df555 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_middle.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_middle_2.png b/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_middle_2.png new file mode 100644 index 0000000..ad4bb05 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_middle_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_top.png b/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_top.png new file mode 100644 index 0000000..3980e96 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/stalagnate_trunk_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_anchor_tree_side_1.png b/src/main/resources/assets/betternether/textures/block/striped_log_anchor_tree_side_1.png new file mode 100644 index 0000000..2994961 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_anchor_tree_side_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_anchor_tree_side_2.png b/src/main/resources/assets/betternether/textures/block/striped_log_anchor_tree_side_2.png new file mode 100644 index 0000000..3b89e2c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_anchor_tree_side_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_anchor_tree_side_3.png b/src/main/resources/assets/betternether/textures/block/striped_log_anchor_tree_side_3.png new file mode 100644 index 0000000..40c07e0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_anchor_tree_side_3.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_anchor_tree_top.png b/src/main/resources/assets/betternether/textures/block/striped_log_anchor_tree_top.png new file mode 100644 index 0000000..b826149 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_anchor_tree_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_mushroom_fir_side.png b/src/main/resources/assets/betternether/textures/block/striped_log_mushroom_fir_side.png new file mode 100644 index 0000000..0673eba Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_mushroom_fir_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_mushroom_fir_top.png b/src/main/resources/assets/betternether/textures/block/striped_log_mushroom_fir_top.png new file mode 100644 index 0000000..218ac62 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_mushroom_fir_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_nether_sakura_side.png b/src/main/resources/assets/betternether/textures/block/striped_log_nether_sakura_side.png new file mode 100644 index 0000000..d5b4ebb Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_nether_sakura_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_nether_sakura_top.png b/src/main/resources/assets/betternether/textures/block/striped_log_nether_sakura_top.png new file mode 100644 index 0000000..5705f49 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_nether_sakura_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_stalagnate_side.png b/src/main/resources/assets/betternether/textures/block/striped_log_stalagnate_side.png new file mode 100644 index 0000000..f6579a4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_stalagnate_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_stalagnate_top.png b/src/main/resources/assets/betternether/textures/block/striped_log_stalagnate_top.png new file mode 100644 index 0000000..b621152 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_stalagnate_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_wart_side.png b/src/main/resources/assets/betternether/textures/block/striped_log_wart_side.png new file mode 100644 index 0000000..94632ed Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_wart_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_wart_top.png b/src/main/resources/assets/betternether/textures/block/striped_log_wart_top.png new file mode 100644 index 0000000..ec31ff7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_wart_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_willow_side.png b/src/main/resources/assets/betternether/textures/block/striped_log_willow_side.png new file mode 100644 index 0000000..154c1ac Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_willow_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_log_willow_top.png b/src/main/resources/assets/betternether/textures/block/striped_log_willow_top.png new file mode 100644 index 0000000..bb4c521 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_log_willow_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_rubeus_log_side.png b/src/main/resources/assets/betternether/textures/block/striped_rubeus_log_side.png new file mode 100644 index 0000000..e72b113 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_rubeus_log_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/striped_rubeus_log_top.png b/src/main/resources/assets/betternether/textures/block/striped_rubeus_log_top.png new file mode 100644 index 0000000..8c5bbcd Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/striped_rubeus_log_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/swamp_grass_1.png b/src/main/resources/assets/betternether/textures/block/swamp_grass_1.png new file mode 100644 index 0000000..af4d09f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/swamp_grass_1.png differ diff --git a/src/main/resources/assets/betternether/textures/block/swamp_grass_2.png b/src/main/resources/assets/betternether/textures/block/swamp_grass_2.png new file mode 100644 index 0000000..c6e3b12 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/swamp_grass_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/swamp_grass_3.png b/src/main/resources/assets/betternether/textures/block/swamp_grass_3.png new file mode 100644 index 0000000..486d1e9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/swamp_grass_3.png differ diff --git a/src/main/resources/assets/betternether/textures/block/swampland_grass.png b/src/main/resources/assets/betternether/textures/block/swampland_grass.png new file mode 100644 index 0000000..e81852d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/swampland_grass.png differ diff --git a/src/main/resources/assets/betternether/textures/block/swampland_grass_side.png b/src/main/resources/assets/betternether/textures/block/swampland_grass_side.png new file mode 100644 index 0000000..ca4379b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/swampland_grass_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/taburet_cincinnasite_side.png b/src/main/resources/assets/betternether/textures/block/taburet_cincinnasite_side.png new file mode 100644 index 0000000..d46fdef Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/taburet_cincinnasite_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/veined_sand_side.png b/src/main/resources/assets/betternether/textures/block/veined_sand_side.png new file mode 100644 index 0000000..3a5cf2a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/veined_sand_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/veined_sand_top.png b/src/main/resources/assets/betternether/textures/block/veined_sand_top.png new file mode 100644 index 0000000..af00d23 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/veined_sand_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/warped_ladder.png b/src/main/resources/assets/betternether/textures/block/warped_ladder.png new file mode 100644 index 0000000..f3f2400 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/warped_ladder.png differ diff --git a/src/main/resources/assets/betternether/textures/block/wart_bark.png b/src/main/resources/assets/betternether/textures/block/wart_bark.png new file mode 100644 index 0000000..216fbf1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/wart_bark.png differ diff --git a/src/main/resources/assets/betternether/textures/block/wart_door_bottom.png b/src/main/resources/assets/betternether/textures/block/wart_door_bottom.png new file mode 100644 index 0000000..f23482d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/wart_door_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/wart_door_side.png b/src/main/resources/assets/betternether/textures/block/wart_door_side.png new file mode 100644 index 0000000..3fd363e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/wart_door_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/wart_door_top.png b/src/main/resources/assets/betternether/textures/block/wart_door_top.png new file mode 100644 index 0000000..42587e9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/wart_door_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/wart_ladder.png b/src/main/resources/assets/betternether/textures/block/wart_ladder.png new file mode 100644 index 0000000..d6edb8b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/wart_ladder.png differ diff --git a/src/main/resources/assets/betternether/textures/block/wart_log_top.png b/src/main/resources/assets/betternether/textures/block/wart_log_top.png new file mode 100644 index 0000000..ce23d06 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/wart_log_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/wart_planks.png b/src/main/resources/assets/betternether/textures/block/wart_planks.png new file mode 100644 index 0000000..0dd4b02 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/wart_planks.png differ diff --git a/src/main/resources/assets/betternether/textures/block/wart_trapdoor.png b/src/main/resources/assets/betternether/textures/block/wart_trapdoor.png new file mode 100644 index 0000000..6a5123f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/wart_trapdoor.png differ diff --git a/src/main/resources/assets/betternether/textures/block/whispering_gourd_bottom.png b/src/main/resources/assets/betternether/textures/block/whispering_gourd_bottom.png new file mode 100644 index 0000000..c8929b2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/whispering_gourd_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/whispering_gourd_fruit.png b/src/main/resources/assets/betternether/textures/block/whispering_gourd_fruit.png new file mode 100644 index 0000000..3c553f6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/whispering_gourd_fruit.png differ diff --git a/src/main/resources/assets/betternether/textures/block/whispering_gourd_lantern.png b/src/main/resources/assets/betternether/textures/block/whispering_gourd_lantern.png new file mode 100644 index 0000000..e013fc9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/whispering_gourd_lantern.png differ diff --git a/src/main/resources/assets/betternether/textures/block/whispering_gourd_leaf.png b/src/main/resources/assets/betternether/textures/block/whispering_gourd_leaf.png new file mode 100644 index 0000000..b4f5da1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/whispering_gourd_leaf.png differ diff --git a/src/main/resources/assets/betternether/textures/block/whispering_gourd_side.png b/src/main/resources/assets/betternether/textures/block/whispering_gourd_side.png new file mode 100644 index 0000000..30b4a19 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/whispering_gourd_side.png differ diff --git a/src/main/resources/assets/betternether/textures/block/whispering_gourd_top.png b/src/main/resources/assets/betternether/textures/block/whispering_gourd_top.png new file mode 100644 index 0000000..ad19483 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/whispering_gourd_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/whispering_gourd_vine.png b/src/main/resources/assets/betternether/textures/block/whispering_gourd_vine.png new file mode 100644 index 0000000..c13d0c4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/whispering_gourd_vine.png differ diff --git a/src/main/resources/assets/betternether/textures/block/whispering_gourd_vine_end.png b/src/main/resources/assets/betternether/textures/block/whispering_gourd_vine_end.png new file mode 100644 index 0000000..487a403 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/whispering_gourd_vine_end.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_bark.png b/src/main/resources/assets/betternether/textures/block/willow_bark.png new file mode 100644 index 0000000..81436f7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_bark.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_bark_bottom.png b/src/main/resources/assets/betternether/textures/block/willow_bark_bottom.png new file mode 100644 index 0000000..ce15c40 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_bark_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_bark_end.png b/src/main/resources/assets/betternether/textures/block/willow_bark_end.png new file mode 100644 index 0000000..de3c672 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_bark_end.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_bark_end_e.png b/src/main/resources/assets/betternether/textures/block/willow_bark_end_e.png new file mode 100644 index 0000000..8e00ab9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_bark_end_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_bark_mossy.png b/src/main/resources/assets/betternether/textures/block/willow_bark_mossy.png new file mode 100644 index 0000000..24e152a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_bark_mossy.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_door_bottom.png b/src/main/resources/assets/betternether/textures/block/willow_door_bottom.png new file mode 100644 index 0000000..d307c7e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_door_bottom.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_door_top.png b/src/main/resources/assets/betternether/textures/block/willow_door_top.png new file mode 100644 index 0000000..2b0a160 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_door_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_ladder.png b/src/main/resources/assets/betternether/textures/block/willow_ladder.png new file mode 100644 index 0000000..3f5ee76 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_ladder.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_leaves.png b/src/main/resources/assets/betternether/textures/block/willow_leaves.png new file mode 100644 index 0000000..5bb4566 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_leaves.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_leaves_end.png b/src/main/resources/assets/betternether/textures/block/willow_leaves_end.png new file mode 100644 index 0000000..8f0c10c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_leaves_end.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_leaves_full.png b/src/main/resources/assets/betternether/textures/block/willow_leaves_full.png new file mode 100644 index 0000000..32ac9b6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_leaves_full.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_leaves_top.png b/src/main/resources/assets/betternether/textures/block/willow_leaves_top.png new file mode 100644 index 0000000..602ff77 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_leaves_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_log_top.png b/src/main/resources/assets/betternether/textures/block/willow_log_top.png new file mode 100644 index 0000000..cbf3f24 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_log_top.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_log_top_2.png b/src/main/resources/assets/betternether/textures/block/willow_log_top_2.png new file mode 100644 index 0000000..025c4f4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_log_top_2.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_planks.png b/src/main/resources/assets/betternether/textures/block/willow_planks.png new file mode 100644 index 0000000..a3c0d08 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_planks.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_potted_branch.png b/src/main/resources/assets/betternether/textures/block/willow_potted_branch.png new file mode 100644 index 0000000..e2a677b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_potted_branch.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_potted_branch_e.png b/src/main/resources/assets/betternether/textures/block/willow_potted_branch_e.png new file mode 100644 index 0000000..7c3a1e2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_potted_branch_e.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_sapling.png b/src/main/resources/assets/betternether/textures/block/willow_sapling.png new file mode 100644 index 0000000..9bbc748 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_sapling.png differ diff --git a/src/main/resources/assets/betternether/textures/block/willow_trapdoor.png b/src/main/resources/assets/betternether/textures/block/willow_trapdoor.png new file mode 100644 index 0000000..4e608e4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/block/willow_trapdoor.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_anchor_tree.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_anchor_tree.png new file mode 100644 index 0000000..eb0d32c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_anchor_tree.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_anchor_tree_left.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_anchor_tree_left.png new file mode 100644 index 0000000..82ca0c1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_anchor_tree_left.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_anchor_tree_right.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_anchor_tree_right.png new file mode 100644 index 0000000..33ec4c4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_anchor_tree_right.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_crimson.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_crimson.png new file mode 100644 index 0000000..c93cc94 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_crimson.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_crimson_left.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_crimson_left.png new file mode 100644 index 0000000..0158c00 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_crimson_left.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_crimson_right.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_crimson_right.png new file mode 100644 index 0000000..0620565 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_crimson_right.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom.png new file mode 100644 index 0000000..eac629e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_fir.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_fir.png new file mode 100644 index 0000000..5a08e20 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_fir.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_fir_left.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_fir_left.png new file mode 100644 index 0000000..86df139 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_fir_left.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_fir_right.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_fir_right.png new file mode 100644 index 0000000..f2eb36b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_fir_right.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_left.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_left.png new file mode 100644 index 0000000..eb55194 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_left.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_right.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_right.png new file mode 100644 index 0000000..dabbb27 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_mushroom_right.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_nether_sakura.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_nether_sakura.png new file mode 100644 index 0000000..d1f9fae Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_nether_sakura.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_nether_sakura_left.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_nether_sakura_left.png new file mode 100644 index 0000000..9583a76 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_nether_sakura_left.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_nether_sakura_right.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_nether_sakura_right.png new file mode 100644 index 0000000..761c666 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_nether_sakura_right.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_reed.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_reed.png new file mode 100644 index 0000000..2894117 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_reed.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_reed_left.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_reed_left.png new file mode 100644 index 0000000..a7cc07e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_reed_left.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_reed_right.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_reed_right.png new file mode 100644 index 0000000..53cbf3f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_reed_right.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_rubeus.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_rubeus.png new file mode 100644 index 0000000..7ed1dcd Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_rubeus.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_rubeus_left.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_rubeus_left.png new file mode 100644 index 0000000..452d2bc Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_rubeus_left.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_rubeus_right.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_rubeus_right.png new file mode 100644 index 0000000..7949c89 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_rubeus_right.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_stalagnate.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_stalagnate.png new file mode 100644 index 0000000..89bfe3d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_stalagnate.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_stalagnate_left.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_stalagnate_left.png new file mode 100644 index 0000000..bc632f7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_stalagnate_left.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_stalagnate_right.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_stalagnate_right.png new file mode 100644 index 0000000..53c1012 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_stalagnate_right.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_warped.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_warped.png new file mode 100644 index 0000000..ab72fe3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_warped.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_warped_left.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_warped_left.png new file mode 100644 index 0000000..52ca6aa Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_warped_left.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_warped_right.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_warped_right.png new file mode 100644 index 0000000..3c60e74 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_warped_right.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_wart.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_wart.png new file mode 100644 index 0000000..5325653 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_wart.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_wart_left.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_wart_left.png new file mode 100644 index 0000000..c5965fb Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_wart_left.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_wart_right.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_wart_right.png new file mode 100644 index 0000000..bc00f90 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_wart_right.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_willow.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_willow.png new file mode 100644 index 0000000..c1954c2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_willow.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_willow_left.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_willow_left.png new file mode 100644 index 0000000..894ae82 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_willow_left.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/chest/chest_willow_right.png b/src/main/resources/assets/betternether/textures/entity/chest/chest_willow_right.png new file mode 100644 index 0000000..dc89098 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/chest/chest_willow_right.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/firefly.png b/src/main/resources/assets/betternether/textures/entity/firefly.png new file mode 100644 index 0000000..81f22b7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/firefly.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/flying_pig.png b/src/main/resources/assets/betternether/textures/entity/flying_pig.png new file mode 100644 index 0000000..f859c10 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/flying_pig.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/flying_pig_warted.png b/src/main/resources/assets/betternether/textures/entity/flying_pig_warted.png new file mode 100644 index 0000000..d53024d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/flying_pig_warted.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/jellyfish.png b/src/main/resources/assets/betternether/textures/entity/jellyfish.png new file mode 100644 index 0000000..7371f96 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/jellyfish.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/jungle_skeleton.png b/src/main/resources/assets/betternether/textures/entity/jungle_skeleton.png new file mode 100644 index 0000000..31c8812 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/jungle_skeleton.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/naga.png b/src/main/resources/assets/betternether/textures/entity/naga.png new file mode 100644 index 0000000..925638d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/naga.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/naga_projectile.png b/src/main/resources/assets/betternether/textures/entity/naga_projectile.png new file mode 100644 index 0000000..1bb158c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/naga_projectile.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/signs/sign_anchor_tree.png b/src/main/resources/assets/betternether/textures/entity/signs/sign_anchor_tree.png new file mode 100644 index 0000000..b5fb0d0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/signs/sign_anchor_tree.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/signs/sign_mushroom.png b/src/main/resources/assets/betternether/textures/entity/signs/sign_mushroom.png new file mode 100644 index 0000000..3367713 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/signs/sign_mushroom.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/signs/sign_mushroom_fir.png b/src/main/resources/assets/betternether/textures/entity/signs/sign_mushroom_fir.png new file mode 100644 index 0000000..38795a2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/signs/sign_mushroom_fir.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/signs/sign_nether_sakura.png b/src/main/resources/assets/betternether/textures/entity/signs/sign_nether_sakura.png new file mode 100644 index 0000000..edc25ea Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/signs/sign_nether_sakura.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/signs/sign_reed.png b/src/main/resources/assets/betternether/textures/entity/signs/sign_reed.png new file mode 100644 index 0000000..988316e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/signs/sign_reed.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/signs/sign_rubeus.png b/src/main/resources/assets/betternether/textures/entity/signs/sign_rubeus.png new file mode 100644 index 0000000..8d5113c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/signs/sign_rubeus.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/signs/sign_stalagnate.png b/src/main/resources/assets/betternether/textures/entity/signs/sign_stalagnate.png new file mode 100644 index 0000000..e09634e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/signs/sign_stalagnate.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/signs/sign_wart.png b/src/main/resources/assets/betternether/textures/entity/signs/sign_wart.png new file mode 100644 index 0000000..4a5d05b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/signs/sign_wart.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/signs/sign_willow.png b/src/main/resources/assets/betternether/textures/entity/signs/sign_willow.png new file mode 100644 index 0000000..2db4f9d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/signs/sign_willow.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/skull.png b/src/main/resources/assets/betternether/textures/entity/skull.png new file mode 100644 index 0000000..7de214c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/skull.png differ diff --git a/src/main/resources/assets/betternether/textures/entity/skull_glow.png b/src/main/resources/assets/betternether/textures/entity/skull_glow.png new file mode 100644 index 0000000..ee6befb Binary files /dev/null and b/src/main/resources/assets/betternether/textures/entity/skull_glow.png differ diff --git a/src/main/resources/assets/betternether/textures/item/agave_medicine.png b/src/main/resources/assets/betternether/textures/item/agave_medicine.png new file mode 100644 index 0000000..804c370 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/agave_medicine.png differ diff --git a/src/main/resources/assets/betternether/textures/item/agave_seed.png b/src/main/resources/assets/betternether/textures/item/agave_seed.png new file mode 100644 index 0000000..66a5b45 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/agave_seed.png differ diff --git a/src/main/resources/assets/betternether/textures/item/anchor_tree_door.png b/src/main/resources/assets/betternether/textures/item/anchor_tree_door.png new file mode 100644 index 0000000..c89dbbd Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/anchor_tree_door.png differ diff --git a/src/main/resources/assets/betternether/textures/item/basalt_stalactite.png b/src/main/resources/assets/betternether/textures/item/basalt_stalactite.png new file mode 100644 index 0000000..f0fcc29 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/basalt_stalactite.png differ diff --git a/src/main/resources/assets/betternether/textures/item/black_apple.png b/src/main/resources/assets/betternether/textures/item/black_apple.png new file mode 100644 index 0000000..d3b1453 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/black_apple.png differ diff --git a/src/main/resources/assets/betternether/textures/item/black_apple_seed.png b/src/main/resources/assets/betternether/textures/item/black_apple_seed.png new file mode 100644 index 0000000..cd93c93 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/black_apple_seed.png differ diff --git a/src/main/resources/assets/betternether/textures/item/blackstone_stalactite.png b/src/main/resources/assets/betternether/textures/item/blackstone_stalactite.png new file mode 100644 index 0000000..51ad7a9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/blackstone_stalactite.png differ diff --git a/src/main/resources/assets/betternether/textures/item/bone_cin_door.png b/src/main/resources/assets/betternether/textures/item/bone_cin_door.png new file mode 100644 index 0000000..d2399d1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/bone_cin_door.png differ diff --git a/src/main/resources/assets/betternether/textures/item/bone_mushroom_spore.png b/src/main/resources/assets/betternether/textures/item/bone_mushroom_spore.png new file mode 100644 index 0000000..2e0a69a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/bone_mushroom_spore.png differ diff --git a/src/main/resources/assets/betternether/textures/item/bone_reed_door.png b/src/main/resources/assets/betternether/textures/item/bone_reed_door.png new file mode 100644 index 0000000..e968c2d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/bone_reed_door.png differ diff --git a/src/main/resources/assets/betternether/textures/item/bone_stalactite.png b/src/main/resources/assets/betternether/textures/item/bone_stalactite.png new file mode 100644 index 0000000..eb5d418 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/bone_stalactite.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite.png b/src/main/resources/assets/betternether/textures/item/cincinnasite.png new file mode 100644 index 0000000..359af6d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_axe.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_axe.png new file mode 100644 index 0000000..69f1081 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_axe.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_axe_diamond.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_axe_diamond.png new file mode 100644 index 0000000..2fc6da9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_axe_diamond.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_bars.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_bars.png new file mode 100644 index 0000000..4a9fa58 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_bars.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_boots.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_boots.png new file mode 100644 index 0000000..46bb4ea Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_boots.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_chain.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_chain.png new file mode 100644 index 0000000..5e40383 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_chain.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_chestplate.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_chestplate.png new file mode 100644 index 0000000..2ba2815 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_chestplate.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_excavator.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_excavator.png new file mode 100644 index 0000000..fde4853 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_excavator.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_excavator_diamond.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_excavator_diamond.png new file mode 100644 index 0000000..fef2226 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_excavator_diamond.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_hammer.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_hammer.png new file mode 100644 index 0000000..64d80fe Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_hammer.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_hammer_diamond.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_hammer_diamond.png new file mode 100644 index 0000000..2ab4fd0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_hammer_diamond.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_helmet.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_helmet.png new file mode 100644 index 0000000..eaff3d2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_helmet.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_hoe.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_hoe.png new file mode 100644 index 0000000..3e928cc Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_hoe.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_hoe_diamond.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_hoe_diamond.png new file mode 100644 index 0000000..9934cba Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_hoe_diamond.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_ingot.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_ingot.png new file mode 100644 index 0000000..d5bdf43 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_ingot.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_leggings.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_leggings.png new file mode 100644 index 0000000..e16c7ae Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_leggings.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_pickaxe.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_pickaxe.png new file mode 100644 index 0000000..c9c6aea Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_pickaxe.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_pickaxe_diamond.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_pickaxe_diamond.png new file mode 100644 index 0000000..df4773f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_pickaxe_diamond.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_shears.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_shears.png new file mode 100644 index 0000000..7e6f661 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_shears.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_shovel.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_shovel.png new file mode 100644 index 0000000..340b739 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_shovel.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_shovel_diamond.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_shovel_diamond.png new file mode 100644 index 0000000..1b4dd51 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_shovel_diamond.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_sword.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_sword.png new file mode 100644 index 0000000..aa518d9 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_sword.png differ diff --git a/src/main/resources/assets/betternether/textures/item/cincinnasite_sword_diamond.png b/src/main/resources/assets/betternether/textures/item/cincinnasite_sword_diamond.png new file mode 100644 index 0000000..3f04b52 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/cincinnasite_sword_diamond.png differ diff --git a/src/main/resources/assets/betternether/textures/item/eye_seed.png b/src/main/resources/assets/betternether/textures/item/eye_seed.png new file mode 100644 index 0000000..bf0e890 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/eye_seed.png differ diff --git a/src/main/resources/assets/betternether/textures/item/feather_fern.png b/src/main/resources/assets/betternether/textures/item/feather_fern.png new file mode 100644 index 0000000..4385e44 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/feather_fern.png differ diff --git a/src/main/resources/assets/betternether/textures/item/flowered_vine.png b/src/main/resources/assets/betternether/textures/item/flowered_vine.png new file mode 100644 index 0000000..2ef339b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/flowered_vine.png differ diff --git a/src/main/resources/assets/betternether/textures/item/geyser.png b/src/main/resources/assets/betternether/textures/item/geyser.png new file mode 100644 index 0000000..5f71f29 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/geyser.png differ diff --git a/src/main/resources/assets/betternether/textures/item/giant_mold_sapling.png b/src/main/resources/assets/betternether/textures/item/giant_mold_sapling.png new file mode 100644 index 0000000..981171e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/giant_mold_sapling.png differ diff --git a/src/main/resources/assets/betternether/textures/item/glowstone_pile.png b/src/main/resources/assets/betternether/textures/item/glowstone_pile.png new file mode 100644 index 0000000..aae4c5a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/glowstone_pile.png differ diff --git a/src/main/resources/assets/betternether/textures/item/glowstone_stalactite.png b/src/main/resources/assets/betternether/textures/item/glowstone_stalactite.png new file mode 100644 index 0000000..3d6e519 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/glowstone_stalactite.png differ diff --git a/src/main/resources/assets/betternether/textures/item/golden_lumabus_seed.png b/src/main/resources/assets/betternether/textures/item/golden_lumabus_seed.png new file mode 100644 index 0000000..5f61f17 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/golden_lumabus_seed.png differ diff --git a/src/main/resources/assets/betternether/textures/item/golden_vine.png b/src/main/resources/assets/betternether/textures/item/golden_vine.png new file mode 100644 index 0000000..5f55d52 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/golden_vine.png differ diff --git a/src/main/resources/assets/betternether/textures/item/gray_mold.png b/src/main/resources/assets/betternether/textures/item/gray_mold.png new file mode 100644 index 0000000..ac6f305 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/gray_mold.png differ diff --git a/src/main/resources/assets/betternether/textures/item/herbal_medicine.png b/src/main/resources/assets/betternether/textures/item/herbal_medicine.png new file mode 100644 index 0000000..ae2f58d Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/herbal_medicine.png differ diff --git a/src/main/resources/assets/betternether/textures/item/hook_mushroom_food.png b/src/main/resources/assets/betternether/textures/item/hook_mushroom_food.png new file mode 100644 index 0000000..7fe1000 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/hook_mushroom_food.png differ diff --git a/src/main/resources/assets/betternether/textures/item/ink_bush_seed.png b/src/main/resources/assets/betternether/textures/item/ink_bush_seed.png new file mode 100644 index 0000000..f410405 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/ink_bush_seed.png differ diff --git a/src/main/resources/assets/betternether/textures/item/jellyfish_mushroom_sapling.png b/src/main/resources/assets/betternether/textures/item/jellyfish_mushroom_sapling.png new file mode 100644 index 0000000..321965e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/jellyfish_mushroom_sapling.png differ diff --git a/src/main/resources/assets/betternether/textures/item/jungle_moss.png b/src/main/resources/assets/betternether/textures/item/jungle_moss.png new file mode 100644 index 0000000..5ff38de Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/jungle_moss.png differ diff --git a/src/main/resources/assets/betternether/textures/item/lapis_pile.png b/src/main/resources/assets/betternether/textures/item/lapis_pile.png new file mode 100644 index 0000000..b90a4fa Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/lapis_pile.png differ diff --git a/src/main/resources/assets/betternether/textures/item/lucis_spore.png b/src/main/resources/assets/betternether/textures/item/lucis_spore.png new file mode 100644 index 0000000..31ede5a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/lucis_spore.png differ diff --git a/src/main/resources/assets/betternether/textures/item/lumabus_seed.png b/src/main/resources/assets/betternether/textures/item/lumabus_seed.png new file mode 100644 index 0000000..690fd92 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/lumabus_seed.png differ diff --git a/src/main/resources/assets/betternether/textures/item/magma_flower_seed.png b/src/main/resources/assets/betternether/textures/item/magma_flower_seed.png new file mode 100644 index 0000000..9800ed3 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/magma_flower_seed.png differ diff --git a/src/main/resources/assets/betternether/textures/item/moss_cover.png b/src/main/resources/assets/betternether/textures/item/moss_cover.png new file mode 100644 index 0000000..2e958cc Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/moss_cover.png differ diff --git a/src/main/resources/assets/betternether/textures/item/mushroom_door.png b/src/main/resources/assets/betternether/textures/item/mushroom_door.png new file mode 100644 index 0000000..6d9239c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/mushroom_door.png differ diff --git a/src/main/resources/assets/betternether/textures/item/mushroom_fir_door.png b/src/main/resources/assets/betternether/textures/item/mushroom_fir_door.png new file mode 100644 index 0000000..e17e4a1 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/mushroom_fir_door.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_brewing_stand.png b/src/main/resources/assets/betternether/textures/item/nether_brewing_stand.png new file mode 100644 index 0000000..e0a46a5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_brewing_stand.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_reed.png b/src/main/resources/assets/betternether/textures/item/nether_reed.png new file mode 100644 index 0000000..6a4bf5a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_reed.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_ruby.png b/src/main/resources/assets/betternether/textures/item/nether_ruby.png new file mode 100644 index 0000000..3a095b5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_ruby.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_ruby_axe.png b/src/main/resources/assets/betternether/textures/item/nether_ruby_axe.png new file mode 100644 index 0000000..6765172 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_ruby_axe.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_ruby_boots.png b/src/main/resources/assets/betternether/textures/item/nether_ruby_boots.png new file mode 100644 index 0000000..cd36189 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_ruby_boots.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_ruby_chestplate.png b/src/main/resources/assets/betternether/textures/item/nether_ruby_chestplate.png new file mode 100644 index 0000000..6bafe0a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_ruby_chestplate.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_ruby_excavator.png b/src/main/resources/assets/betternether/textures/item/nether_ruby_excavator.png new file mode 100644 index 0000000..572e140 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_ruby_excavator.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_ruby_hammer.png b/src/main/resources/assets/betternether/textures/item/nether_ruby_hammer.png new file mode 100644 index 0000000..4350c1c Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_ruby_hammer.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_ruby_helmet.png b/src/main/resources/assets/betternether/textures/item/nether_ruby_helmet.png new file mode 100644 index 0000000..5377295 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_ruby_helmet.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_ruby_hoe.png b/src/main/resources/assets/betternether/textures/item/nether_ruby_hoe.png new file mode 100644 index 0000000..52f0f86 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_ruby_hoe.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_ruby_leggings.png b/src/main/resources/assets/betternether/textures/item/nether_ruby_leggings.png new file mode 100644 index 0000000..4127341 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_ruby_leggings.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_ruby_pickaxe.png b/src/main/resources/assets/betternether/textures/item/nether_ruby_pickaxe.png new file mode 100644 index 0000000..6be4688 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_ruby_pickaxe.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_ruby_shovel.png b/src/main/resources/assets/betternether/textures/item/nether_ruby_shovel.png new file mode 100644 index 0000000..427eec2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_ruby_shovel.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_ruby_sword.png b/src/main/resources/assets/betternether/textures/item/nether_ruby_sword.png new file mode 100644 index 0000000..8fbdb2b Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_ruby_sword.png differ diff --git a/src/main/resources/assets/betternether/textures/item/nether_sakura_door.png b/src/main/resources/assets/betternether/textures/item/nether_sakura_door.png new file mode 100644 index 0000000..7659ff7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/nether_sakura_door.png differ diff --git a/src/main/resources/assets/betternether/textures/item/netherrack_stalactite.png b/src/main/resources/assets/betternether/textures/item/netherrack_stalactite.png new file mode 100644 index 0000000..7ad1218 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/netherrack_stalactite.png differ diff --git a/src/main/resources/assets/betternether/textures/item/ngrass_1.png b/src/main/resources/assets/betternether/textures/item/ngrass_1.png new file mode 100644 index 0000000..0a44779 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/ngrass_1.png differ diff --git a/src/main/resources/assets/betternether/textures/item/pig_statue_01.png b/src/main/resources/assets/betternether/textures/item/pig_statue_01.png new file mode 100644 index 0000000..2f929f2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/pig_statue_01.png differ diff --git a/src/main/resources/assets/betternether/textures/item/quartz_glass.png b/src/main/resources/assets/betternether/textures/item/quartz_glass.png new file mode 100644 index 0000000..cc68063 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/quartz_glass.png differ diff --git a/src/main/resources/assets/betternether/textures/item/quartz_glass_framed.png b/src/main/resources/assets/betternether/textures/item/quartz_glass_framed.png new file mode 100644 index 0000000..2b7d5a8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/quartz_glass_framed.png differ diff --git a/src/main/resources/assets/betternether/textures/item/reeds_door.png b/src/main/resources/assets/betternether/textures/item/reeds_door.png new file mode 100644 index 0000000..9bf9071 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/reeds_door.png differ diff --git a/src/main/resources/assets/betternether/textures/item/rubeus_door.png b/src/main/resources/assets/betternether/textures/item/rubeus_door.png new file mode 100644 index 0000000..ac44c8a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/rubeus_door.png differ diff --git a/src/main/resources/assets/betternether/textures/item/sign_anchor_tree.png b/src/main/resources/assets/betternether/textures/item/sign_anchor_tree.png new file mode 100644 index 0000000..d0e8bea Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/sign_anchor_tree.png differ diff --git a/src/main/resources/assets/betternether/textures/item/sign_mushroom.png b/src/main/resources/assets/betternether/textures/item/sign_mushroom.png new file mode 100644 index 0000000..a16c6c0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/sign_mushroom.png differ diff --git a/src/main/resources/assets/betternether/textures/item/sign_mushroom_fir.png b/src/main/resources/assets/betternether/textures/item/sign_mushroom_fir.png new file mode 100644 index 0000000..7f4caad Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/sign_mushroom_fir.png differ diff --git a/src/main/resources/assets/betternether/textures/item/sign_nether_sakura.png b/src/main/resources/assets/betternether/textures/item/sign_nether_sakura.png new file mode 100644 index 0000000..d8181b7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/sign_nether_sakura.png differ diff --git a/src/main/resources/assets/betternether/textures/item/sign_reed.png b/src/main/resources/assets/betternether/textures/item/sign_reed.png new file mode 100644 index 0000000..b72a86f Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/sign_reed.png differ diff --git a/src/main/resources/assets/betternether/textures/item/sign_rubeus.png b/src/main/resources/assets/betternether/textures/item/sign_rubeus.png new file mode 100644 index 0000000..2352d05 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/sign_rubeus.png differ diff --git a/src/main/resources/assets/betternether/textures/item/sign_stalagnate.png b/src/main/resources/assets/betternether/textures/item/sign_stalagnate.png new file mode 100644 index 0000000..27ce77e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/sign_stalagnate.png differ diff --git a/src/main/resources/assets/betternether/textures/item/sign_wart.png b/src/main/resources/assets/betternether/textures/item/sign_wart.png new file mode 100644 index 0000000..d40a566 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/sign_wart.png differ diff --git a/src/main/resources/assets/betternether/textures/item/sign_willow.png b/src/main/resources/assets/betternether/textures/item/sign_willow.png new file mode 100644 index 0000000..5f24d2a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/sign_willow.png differ diff --git a/src/main/resources/assets/betternether/textures/item/soul_vein.png b/src/main/resources/assets/betternether/textures/item/soul_vein.png new file mode 100644 index 0000000..99676e5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/soul_vein.png differ diff --git a/src/main/resources/assets/betternether/textures/item/stalagnate_bowl.png b/src/main/resources/assets/betternether/textures/item/stalagnate_bowl.png new file mode 100644 index 0000000..270a834 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/stalagnate_bowl.png differ diff --git a/src/main/resources/assets/betternether/textures/item/stalagnate_bowl_apple.png b/src/main/resources/assets/betternether/textures/item/stalagnate_bowl_apple.png new file mode 100644 index 0000000..32d63e2 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/stalagnate_bowl_apple.png differ diff --git a/src/main/resources/assets/betternether/textures/item/stalagnate_bowl_mushroom.png b/src/main/resources/assets/betternether/textures/item/stalagnate_bowl_mushroom.png new file mode 100644 index 0000000..1596af7 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/stalagnate_bowl_mushroom.png differ diff --git a/src/main/resources/assets/betternether/textures/item/stalagnate_bowl_wart.png b/src/main/resources/assets/betternether/textures/item/stalagnate_bowl_wart.png new file mode 100644 index 0000000..5e596a5 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/stalagnate_bowl_wart.png differ diff --git a/src/main/resources/assets/betternether/textures/item/stalagnate_planks_door.png b/src/main/resources/assets/betternether/textures/item/stalagnate_planks_door.png new file mode 100644 index 0000000..c5925f4 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/stalagnate_planks_door.png differ diff --git a/src/main/resources/assets/betternether/textures/item/stalagnate_seed.png b/src/main/resources/assets/betternether/textures/item/stalagnate_seed.png new file mode 100644 index 0000000..1fbffb8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/stalagnate_seed.png differ diff --git a/src/main/resources/assets/betternether/textures/item/wall_moss.png b/src/main/resources/assets/betternether/textures/item/wall_moss.png new file mode 100644 index 0000000..e5ba9d6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/wall_moss.png differ diff --git a/src/main/resources/assets/betternether/textures/item/wall_mushroom_brown.png b/src/main/resources/assets/betternether/textures/item/wall_mushroom_brown.png new file mode 100644 index 0000000..db803ff Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/wall_mushroom_brown.png differ diff --git a/src/main/resources/assets/betternether/textures/item/wall_mushroom_red.png b/src/main/resources/assets/betternether/textures/item/wall_mushroom_red.png new file mode 100644 index 0000000..c8bf8a6 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/wall_mushroom_red.png differ diff --git a/src/main/resources/assets/betternether/textures/item/wart_door.png b/src/main/resources/assets/betternether/textures/item/wart_door.png new file mode 100644 index 0000000..557428a Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/wart_door.png differ diff --git a/src/main/resources/assets/betternether/textures/item/whispering_gourd_seeds.png b/src/main/resources/assets/betternether/textures/item/whispering_gourd_seeds.png new file mode 100644 index 0000000..81e7e33 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/whispering_gourd_seeds.png differ diff --git a/src/main/resources/assets/betternether/textures/item/willow_door.png b/src/main/resources/assets/betternether/textures/item/willow_door.png new file mode 100644 index 0000000..39a911e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/item/willow_door.png differ diff --git a/src/main/resources/assets/betternether/textures/minimap/entities/chair.png b/src/main/resources/assets/betternether/textures/minimap/entities/chair.png new file mode 100644 index 0000000..13cb47e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/minimap/entities/chair.png differ diff --git a/src/main/resources/assets/betternether/textures/minimap/entities/firefly.png b/src/main/resources/assets/betternether/textures/minimap/entities/firefly.png new file mode 100644 index 0000000..df1d541 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/minimap/entities/firefly.png differ diff --git a/src/main/resources/assets/betternether/textures/minimap/entities/flying_pig.png b/src/main/resources/assets/betternether/textures/minimap/entities/flying_pig.png new file mode 100644 index 0000000..46f3821 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/minimap/entities/flying_pig.png differ diff --git a/src/main/resources/assets/betternether/textures/minimap/entities/hydrogen_jellyfish.png b/src/main/resources/assets/betternether/textures/minimap/entities/hydrogen_jellyfish.png new file mode 100644 index 0000000..dcc25c0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/minimap/entities/hydrogen_jellyfish.png differ diff --git a/src/main/resources/assets/betternether/textures/minimap/entities/jungle_skeleton.png b/src/main/resources/assets/betternether/textures/minimap/entities/jungle_skeleton.png new file mode 100644 index 0000000..22d1f52 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/minimap/entities/jungle_skeleton.png differ diff --git a/src/main/resources/assets/betternether/textures/minimap/entities/naga.png b/src/main/resources/assets/betternether/textures/minimap/entities/naga.png new file mode 100644 index 0000000..37ab8d8 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/minimap/entities/naga.png differ diff --git a/src/main/resources/assets/betternether/textures/minimap/entities/naga_projectile.png b/src/main/resources/assets/betternether/textures/minimap/entities/naga_projectile.png new file mode 100644 index 0000000..13cb47e Binary files /dev/null and b/src/main/resources/assets/betternether/textures/minimap/entities/naga_projectile.png differ diff --git a/src/main/resources/assets/betternether/textures/minimap/entities/skull.png b/src/main/resources/assets/betternether/textures/minimap/entities/skull.png new file mode 100644 index 0000000..425c3c0 Binary files /dev/null and b/src/main/resources/assets/betternether/textures/minimap/entities/skull.png differ diff --git a/src/main/resources/assets/minecraft/blockstates/brown_mushroom.json b/src/main/resources/assets/minecraft/blockstates/brown_mushroom.json new file mode 100644 index 0000000..3e349e5 --- /dev/null +++ b/src/main/resources/assets/minecraft/blockstates/brown_mushroom.json @@ -0,0 +1,23 @@ +{ + "variants": { + "": [ + { "model": "block/mushroom_brown_00" }, + { "model": "block/mushroom_brown_01" }, + { "model": "block/mushroom_brown_02" }, + { "model": "block/mushroom_brown_03" }, + { "model": "block/mushroom_brown_00", "y": 90 }, + { "model": "block/mushroom_brown_01", "y": 90 }, + { "model": "block/mushroom_brown_02", "y": 90 }, + { "model": "block/mushroom_brown_03", "y": 90 }, + { "model": "block/mushroom_brown_00", "y": 180 }, + { "model": "block/mushroom_brown_01", "y": 180 }, + { "model": "block/mushroom_brown_02", "y": 180 }, + { "model": "block/mushroom_brown_03", "y": 180 }, + { "model": "block/mushroom_brown_00", "y": 270 }, + { "model": "block/mushroom_brown_01", "y": 270 }, + { "model": "block/mushroom_brown_02", "y": 270 }, + { "model": "block/mushroom_brown_03", "y": 270 }, + { "model": "block/mushroom_brown_04", "y": 180 } + ] + } +} diff --git a/src/main/resources/assets/minecraft/blockstates/crimson_fungus.json b/src/main/resources/assets/minecraft/blockstates/crimson_fungus.json new file mode 100644 index 0000000..8b70530 --- /dev/null +++ b/src/main/resources/assets/minecraft/blockstates/crimson_fungus.json @@ -0,0 +1,10 @@ +{ + "variants": { + "": [ + { "model": "block/crimson_fungus" }, + { "model": "block/crimson_fungus", "y": 90 }, + { "model": "block/crimson_fungus", "y": 180 }, + { "model": "block/crimson_fungus", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/minecraft/blockstates/red_mushroom.json b/src/main/resources/assets/minecraft/blockstates/red_mushroom.json new file mode 100644 index 0000000..7193acb --- /dev/null +++ b/src/main/resources/assets/minecraft/blockstates/red_mushroom.json @@ -0,0 +1,23 @@ +{ + "variants": { + "": [ + { "model": "block/mushroom_red_00" }, + { "model": "block/mushroom_red_01" }, + { "model": "block/mushroom_red_02" }, + { "model": "block/mushroom_red_03" }, + { "model": "block/mushroom_red_00", "y": 90 }, + { "model": "block/mushroom_red_01", "y": 90 }, + { "model": "block/mushroom_red_02", "y": 90 }, + { "model": "block/mushroom_red_03", "y": 90 }, + { "model": "block/mushroom_red_00", "y": 180 }, + { "model": "block/mushroom_red_01", "y": 180 }, + { "model": "block/mushroom_red_04", "y": 180 }, + { "model": "block/mushroom_red_02", "y": 180 }, + { "model": "block/mushroom_red_03", "y": 180 }, + { "model": "block/mushroom_red_00", "y": 270 }, + { "model": "block/mushroom_red_01", "y": 270 }, + { "model": "block/mushroom_red_02", "y": 270 }, + { "model": "block/mushroom_red_03", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/minecraft/blockstates/warped_fungus.json b/src/main/resources/assets/minecraft/blockstates/warped_fungus.json new file mode 100644 index 0000000..0f7ccb9 --- /dev/null +++ b/src/main/resources/assets/minecraft/blockstates/warped_fungus.json @@ -0,0 +1,10 @@ +{ + "variants": { + "": [ + { "model": "block/warped_fungus" }, + { "model": "block/warped_fungus", "y": 90 }, + { "model": "block/warped_fungus", "y": 180 }, + { "model": "block/warped_fungus", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/minecraft/models/block/crimson_fungus.json b/src/main/resources/assets/minecraft/models/block/crimson_fungus.json new file mode 100644 index 0000000..a03d803 --- /dev/null +++ b/src/main/resources/assets/minecraft/models/block/crimson_fungus.json @@ -0,0 +1,86 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "block/crimson_fungus", + "texture": "block/crimson_fungus", + "top": "blocks/crimson_fungus_top", + "bottom": "blocks/crimson_fungus_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 5, 9 ], + "faces": { + "down": { "uv": [ 7, 11, 9, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 11, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 11, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 11, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 11, 9, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 5, 4 ], + "to": [ 12, 8, 12 ], + "faces": { + "down": { "uv": [ 4, 4, 12, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 4, 12, 12 ], "texture": "#top" }, + "north": { "uv": [ 4, 8, 12, 11 ], "texture": "#texture" }, + "south": { "uv": [ 4, 8, 12, 11 ], "texture": "#texture" }, + "west": { "uv": [ 4, 8, 12, 11 ], "texture": "#texture" }, + "east": { "uv": [ 4, 8, 12, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 6, 5 ], + "to": [ 13, 8, 11 ], + "faces": { + "down": { "uv": [ 3, 5, 13, 11 ], "texture": "#bottom" }, + "up": { "uv": [ 3, 5, 13, 11 ], "texture": "#top" }, + "north": { "uv": [ 3, 8, 13, 10 ], "texture": "#texture" }, + "south": { "uv": [ 3, 8, 13, 10 ], "texture": "#texture" }, + "west": { "uv": [ 5, 8, 11, 10 ], "texture": "#texture" }, + "east": { "uv": [ 5, 8, 11, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 6, 3 ], + "to": [ 11, 8, 13 ], + "faces": { + "down": { "uv": [ 5, 3, 11, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 5, 3, 11, 13 ], "texture": "#top" }, + "north": { "uv": [ 5, 8, 11, 10 ], "texture": "#texture" }, + "south": { "uv": [ 5, 8, 11, 10 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 13, 10 ], "texture": "#texture" }, + "east": { "uv": [ 3, 8, 13, 10 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 8, 5 ], + "to": [ 11, 11, 11 ], + "faces": { + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#top" }, + "north": { "uv": [ 11, 5, 5, 8 ], "texture": "#texture" }, + "south": { "uv": [ 5, 5, 11, 8 ], "texture": "#texture" }, + "west": { "uv": [ 5, 5, 11, 8 ], "texture": "#texture" }, + "east": { "uv": [ 5, 5, 11, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 6, 11, 6 ], + "to": [ 10, 12, 10 ], + "faces": { + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#top" }, + "north": { "uv": [ 6, 4, 10, 5 ], "texture": "#texture" }, + "south": { "uv": [ 6, 4, 10, 5 ], "texture": "#texture" }, + "west": { "uv": [ 10, 4, 6, 5 ], "texture": "#texture" }, + "east": { "uv": [ 10, 4, 6, 5 ], "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/minecraft/models/block/mushroom_brown_00.json b/src/main/resources/assets/minecraft/models/block/mushroom_brown_00.json new file mode 100644 index 0000000..7f85837 --- /dev/null +++ b/src/main/resources/assets/minecraft/models/block/mushroom_brown_00.json @@ -0,0 +1,44 @@ +{ +"__comment": "Designed by Paulevs with BDcraft Cubik PRO 0.93 Beta - http://bdcraft.net", +"textures": { + "particle": "blocks/mushroom_brown_new", + "texture": "blocks/mushroom_brown_new", + "mushroom_block_inside": "block/mushroom_block_inside" +}, +"elements": [ +{ + "from": [ 7, 0, 7 ], + "to": [ 9, 2, 9 ], + "faces": { + "down": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" } + } +}, +{ + "from": [ 5, 2, 5 ], + "to": [ 11, 5, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 5, 2, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" } + } +}, +{ + "from": [ 6, 5, 6 ], + "to": [ 10, 6, 10 ], + "faces": { + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" } + } +} +] +} \ No newline at end of file diff --git a/src/main/resources/assets/minecraft/models/block/mushroom_brown_01.json b/src/main/resources/assets/minecraft/models/block/mushroom_brown_01.json new file mode 100644 index 0000000..6124bf6 --- /dev/null +++ b/src/main/resources/assets/minecraft/models/block/mushroom_brown_01.json @@ -0,0 +1,44 @@ +{ +"__comment": "Designed by Paulevs with BDcraft Cubik PRO 0.93 Beta - http://bdcraft.net", +"textures": { + "particle": "blocks/mushroom_brown_new", + "texture": "blocks/mushroom_brown_new", + "mushroom_block_inside": "block/mushroom_block_inside" +}, +"elements": [ +{ + "from": [ 7, 0, 7 ], + "to": [ 9, 3, 9 ], + "faces": { + "down": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" } + } +}, +{ + "from": [ 5, 3, 5 ], + "to": [ 11, 6, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 5, 2, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" } + } +}, +{ + "from": [ 6, 6, 6 ], + "to": [ 10, 7, 10 ], + "faces": { + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" } + } +} +] +} \ No newline at end of file diff --git a/src/main/resources/assets/minecraft/models/block/mushroom_brown_02.json b/src/main/resources/assets/minecraft/models/block/mushroom_brown_02.json new file mode 100644 index 0000000..f6fd80e --- /dev/null +++ b/src/main/resources/assets/minecraft/models/block/mushroom_brown_02.json @@ -0,0 +1,33 @@ +{ +"__comment": "Designed by Paulevs with BDcraft Cubik PRO 0.93 Beta - http://bdcraft.net", +"textures": { + "particle": "blocks/mushroom_brown_new", + "texture": "blocks/mushroom_brown_new", + "mushroom_block_inside": "block/mushroom_block_inside" +}, +"elements": [ +{ + "from": [ 7, 0, 7 ], + "to": [ 9, 1, 9 ], + "faces": { + "down": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" } + } +}, +{ + "from": [ 6, 1, 6 ], + "to": [ 10, 3, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 11, 10, 13 ], "texture": "#texture" }, + "south": { "uv": [ 6, 11, 10, 13 ], "texture": "#texture" }, + "west": { "uv": [ 6, 11, 10, 13 ], "texture": "#texture" }, + "east": { "uv": [ 6, 11, 10, 13 ], "texture": "#texture" } + } +} +] +} \ No newline at end of file diff --git a/src/main/resources/assets/minecraft/models/block/mushroom_brown_03.json b/src/main/resources/assets/minecraft/models/block/mushroom_brown_03.json new file mode 100644 index 0000000..8f31aaf --- /dev/null +++ b/src/main/resources/assets/minecraft/models/block/mushroom_brown_03.json @@ -0,0 +1,101 @@ +{ +"__comment": "Designed by Paulevs with BDcraft Cubik PRO 0.93 Beta - http://bdcraft.net", +"textures": { + "particle": "blocks/mushroom_brown_new", + "texture": "blocks/mushroom_brown_new", + "mushroom_block_inside": "block/mushroom_block_inside" +}, +"elements": [ +{ + "from": [ 3, 0, 7 ], + "to": [ 5, 2, 9 ], + "faces": { + "down": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" } + } +}, +{ + "from": [ 1, 2, 5 ], + "to": [ 7, 5, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 5, 2, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" } + } +}, +{ + "from": [ 2, 5, 6 ], + "to": [ 6, 6, 10 ], + "faces": { + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" } + } +}, +{ + "from": [ 11, 0, 3 ], + "to": [ 13, 2, 5 ], + "faces": { + "down": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" } + } +}, +{ + "from": [ 11, 0, 12 ], + "to": [ 13, 3, 14 ], + "faces": { + "down": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" } + } +}, +{ + "from": [ 10, 2, 2 ], + "to": [ 14, 4, 6 ], + "faces": { + "down": { "uv": [ 10, 2, 14, 6 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 11, 10, 13 ], "texture": "#texture" }, + "south": { "uv": [ 6, 11, 10, 13 ], "texture": "#texture" }, + "west": { "uv": [ 6, 11, 10, 13 ], "texture": "#texture" }, + "east": { "uv": [ 6, 11, 10, 13 ], "texture": "#texture" } + } +}, +{ + "from": [ 9, 3, 10 ], + "to": [ 15, 6, 16 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 5, 2, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" } + } +}, +{ + "from": [ 10, 6, 11 ], + "to": [ 14, 7, 15 ], + "faces": { + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" } + } +} +] +} \ No newline at end of file diff --git a/src/main/resources/assets/minecraft/models/block/mushroom_brown_04.json b/src/main/resources/assets/minecraft/models/block/mushroom_brown_04.json new file mode 100644 index 0000000..6124bf6 --- /dev/null +++ b/src/main/resources/assets/minecraft/models/block/mushroom_brown_04.json @@ -0,0 +1,44 @@ +{ +"__comment": "Designed by Paulevs with BDcraft Cubik PRO 0.93 Beta - http://bdcraft.net", +"textures": { + "particle": "blocks/mushroom_brown_new", + "texture": "blocks/mushroom_brown_new", + "mushroom_block_inside": "block/mushroom_block_inside" +}, +"elements": [ +{ + "from": [ 7, 0, 7 ], + "to": [ 9, 3, 9 ], + "faces": { + "down": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" } + } +}, +{ + "from": [ 5, 3, 5 ], + "to": [ 11, 6, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 5, 2, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" } + } +}, +{ + "from": [ 6, 6, 6 ], + "to": [ 10, 7, 10 ], + "faces": { + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" } + } +} +] +} \ No newline at end of file diff --git a/src/main/resources/assets/minecraft/models/block/mushroom_red_00.json b/src/main/resources/assets/minecraft/models/block/mushroom_red_00.json new file mode 100644 index 0000000..542d33a --- /dev/null +++ b/src/main/resources/assets/minecraft/models/block/mushroom_red_00.json @@ -0,0 +1,92 @@ +{ + "__comment": "Designed by Paulevs with BDcraft Cubik PRO 0.93 Beta - http://bdcraft.net", + "textures": { + "particle": "blocks/mushroom_red_new", + "texture": "blocks/mushroom_red_new", + "mushroom_block_inside": "block/mushroom_block_inside" + }, + "elements": [ + { + "from": [ 5, 1, 5 ], + "to": [ 11, 5, 11 ], + "faces": { + "down": { "uv": [ 11, 11, 5, 5 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 5, 2, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" }, + "south": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" }, + "west": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" }, + "east": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" } + } + }, + { + "from": [ 6, 5, 6 ], + "to": [ 10, 6, 10 ], + "faces": { + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" } + } + }, + { + "from": [ 7, 0, 7 ], + "to": [ 9, 1, 9 ], + "faces": { + "down": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box5", + "from": [ 5, 2, 4 ], + "to": [ 11, 4, 5 ], + "faces": { + "down": { "uv": [ 5, 8, 11, 9 ], "texture": "#texture" }, + "up": { "uv": [ 5, 1, 11, 2 ], "texture": "#texture" }, + "north": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture" }, + "west": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" }, + "east": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box5", + "from": [ 11, 2, 5 ], + "to": [ 12, 4, 11 ], + "faces": { + "down": { "uv": [ 11, 2, 12, 8 ], "texture": "#texture" }, + "up": { "uv": [ 11, 2, 12, 8 ], "texture": "#texture" }, + "north": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" }, + "south": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box5", + "from": [ 5, 2, 11 ], + "to": [ 11, 4, 12 ], + "faces": { + "down": { "uv": [ 5, 8, 11, 9 ], "texture": "#texture" }, + "up": { "uv": [ 5, 8, 11, 9 ], "texture": "#texture" }, + "south": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture" }, + "west": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" }, + "east": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box5", + "from": [ 4, 2, 5 ], + "to": [ 5, 4, 11 ], + "faces": { + "down": { "uv": [ 4, 2, 5, 8 ], "texture": "#texture" }, + "up": { "uv": [ 4, 2, 5, 8 ], "texture": "#texture" }, + "north": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" }, + "south": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/minecraft/models/block/mushroom_red_01.json b/src/main/resources/assets/minecraft/models/block/mushroom_red_01.json new file mode 100644 index 0000000..2d14a9a --- /dev/null +++ b/src/main/resources/assets/minecraft/models/block/mushroom_red_01.json @@ -0,0 +1,92 @@ +{ + "__comment": "Designed by Paulevs with BDcraft Cubik PRO 0.93 Beta - http://bdcraft.net", + "textures": { + "particle": "blocks/mushroom_red_new", + "texture": "blocks/mushroom_red_new", + "mushroom_block_inside": "block/mushroom_block_inside" + }, + "elements": [ + { + "from": [ 5, 3, 5 ], + "to": [ 11, 7, 11 ], + "faces": { + "down": { "uv": [ 11, 11, 5, 5 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 5, 2, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" }, + "south": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" }, + "west": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" }, + "east": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" } + } + }, + { + "from": [ 6, 7, 6 ], + "to": [ 10, 8, 10 ], + "faces": { + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" } + } + }, + { + "from": [ 7, 0, 7 ], + "to": [ 9, 3, 9 ], + "faces": { + "down": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box5", + "from": [ 5, 4, 4 ], + "to": [ 11, 6, 5 ], + "faces": { + "down": { "uv": [ 5, 1, 11, 2 ], "texture": "#texture" }, + "up": { "uv": [ 5, 1, 11, 2 ], "texture": "#texture" }, + "north": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture" }, + "west": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" }, + "east": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box5", + "from": [ 4, 4, 5 ], + "to": [ 5, 6, 11 ], + "faces": { + "down": { "uv": [ 4, 2, 5, 8 ], "texture": "#texture" }, + "up": { "uv": [ 4, 2, 5, 8 ], "texture": "#texture" }, + "north": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" }, + "south": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box5", + "from": [ 11, 4, 5 ], + "to": [ 12, 6, 11 ], + "faces": { + "down": { "uv": [ 11, 2, 12, 8 ], "texture": "#texture" }, + "up": { "uv": [ 11, 2, 12, 8 ], "texture": "#texture" }, + "north": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" }, + "south": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box5", + "from": [ 5, 4, 11 ], + "to": [ 11, 6, 12 ], + "faces": { + "down": { "uv": [ 5, 8, 11, 9 ], "texture": "#texture" }, + "up": { "uv": [ 5, 8, 11, 9 ], "texture": "#texture" }, + "south": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture" }, + "west": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" }, + "east": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/minecraft/models/block/mushroom_red_02.json b/src/main/resources/assets/minecraft/models/block/mushroom_red_02.json new file mode 100644 index 0000000..a91a577 --- /dev/null +++ b/src/main/resources/assets/minecraft/models/block/mushroom_red_02.json @@ -0,0 +1,44 @@ +{ +"__comment": "Designed by Paulevs with BDcraft Cubik PRO 0.93 Beta - http://bdcraft.net", +"textures": { + "particle": "blocks/mushroom_red_new", + "texture": "blocks/mushroom_red_new", + "mushroom_block_inside": "block/mushroom_block_inside" +}, +"elements": [ +{ + "from": [ 6, 2, 6 ], + "to": [ 10, 6, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 14 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 14 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 14 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 14 ], "texture": "#texture" } + } +}, +{ + "from": [ 7, 6, 7 ], + "to": [ 9, 7, 9 ], + "faces": { + "up": { "uv": [ 7, 4, 9, 6 ], "texture": "#texture" }, + "north": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "south": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "west": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "east": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" } + } +}, +{ + "from": [ 7, 0, 7 ], + "to": [ 9, 2, 9 ], + "faces": { + "down": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" } + } +} +] +} \ No newline at end of file diff --git a/src/main/resources/assets/minecraft/models/block/mushroom_red_03.json b/src/main/resources/assets/minecraft/models/block/mushroom_red_03.json new file mode 100644 index 0000000..7ce16bf --- /dev/null +++ b/src/main/resources/assets/minecraft/models/block/mushroom_red_03.json @@ -0,0 +1,172 @@ +{ + "__comment": "Designed by Paulevs with BDcraft Cubik PRO 0.93 Beta - http://bdcraft.net", + "textures": { + "particle": "blocks/mushroom_red_new", + "texture": "blocks/mushroom_red_new", + "mushroom_block_inside": "block/mushroom_block_inside" + }, + "elements": [ + { + "from": [ 1, 1, 1 ], + "to": [ 7, 5, 7 ], + "faces": { + "down": { "uv": [ 11, 11, 5, 5 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 5, 2, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" }, + "south": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" }, + "west": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" }, + "east": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" } + } + }, + { + "from": [ 2, 5, 2 ], + "to": [ 6, 6, 6 ], + "faces": { + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" } + } + }, + { + "from": [ 3, 0, 3 ], + "to": [ 5, 1, 5 ], + "faces": { + "down": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" } + } + }, + { + "from": [ 12, 0, 8 ], + "to": [ 14, 2, 10 ], + "faces": { + "down": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" } + } + }, + { + "from": [ 3, 0, 12 ], + "to": [ 5, 2, 14 ], + "faces": { + "down": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" } + } + }, + { + "from": [ 11, 2, 7 ], + "to": [ 15, 7, 11 ], + "faces": { + "down": { "uv": [ 10, 7, 14, 11 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" } + } + }, + { + "from": [ 12, 7, 8 ], + "to": [ 14, 8, 10 ], + "faces": { + "up": { "uv": [ 7, 4, 9, 6 ], "texture": "#texture" }, + "north": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "south": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "west": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "east": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" } + } + }, + { + "from": [ 2, 2, 11 ], + "to": [ 6, 7, 15 ], + "faces": { + "down": { "uv": [ 10, 7, 14, 11 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" } + } + }, + { + "from": [ 1, 3, 10 ], + "to": [ 7, 6, 16 ], + "faces": { + "down": { "uv": [ 5, 2, 11, 8 ], "texture": "#texture" }, + "up": { "uv": [ 5, 2, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" } + } + }, + { + "from": [ 3, 7, 12 ], + "to": [ 5, 8, 14 ], + "faces": { + "up": { "uv": [ 7, 4, 9, 6 ], "texture": "#texture" }, + "north": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "south": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "west": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "east": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box12", + "from": [ 1, 2, 0 ], + "to": [ 7, 4, 1 ], + "faces": { + "down": { "uv": [ 5, 1, 11, 2 ], "texture": "#texture" }, + "up": { "uv": [ 5, 1, 11, 2 ], "texture": "#texture" }, + "north": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture", "cullface": "north" }, + "west": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" }, + "east": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box12", + "from": [ 0, 2, 1 ], + "to": [ 1, 4, 7 ], + "faces": { + "down": { "uv": [ 4, 2, 5, 8 ], "texture": "#texture" }, + "up": { "uv": [ 4, 2, 5, 8 ], "texture": "#texture" }, + "north": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" }, + "south": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture", "cullface": "west" } + } + }, + { + "__comment": "Box12", + "from": [ 7, 2, 1 ], + "to": [ 8, 4, 7 ], + "faces": { + "down": { "uv": [ 11, 2, 12, 8 ], "texture": "#texture" }, + "up": { "uv": [ 11, 2, 12, 8 ], "texture": "#texture" }, + "north": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" }, + "south": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box12", + "from": [ 1, 2, 7 ], + "to": [ 7, 4, 8 ], + "faces": { + "down": { "uv": [ 5, 8, 11, 9 ], "texture": "#texture" }, + "up": { "uv": [ 5, 8, 11, 9 ], "texture": "#texture" }, + "south": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture" }, + "west": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" }, + "east": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/minecraft/models/block/mushroom_red_04.json b/src/main/resources/assets/minecraft/models/block/mushroom_red_04.json new file mode 100644 index 0000000..7ce16bf --- /dev/null +++ b/src/main/resources/assets/minecraft/models/block/mushroom_red_04.json @@ -0,0 +1,172 @@ +{ + "__comment": "Designed by Paulevs with BDcraft Cubik PRO 0.93 Beta - http://bdcraft.net", + "textures": { + "particle": "blocks/mushroom_red_new", + "texture": "blocks/mushroom_red_new", + "mushroom_block_inside": "block/mushroom_block_inside" + }, + "elements": [ + { + "from": [ 1, 1, 1 ], + "to": [ 7, 5, 7 ], + "faces": { + "down": { "uv": [ 11, 11, 5, 5 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 5, 2, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" }, + "south": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" }, + "west": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" }, + "east": { "uv": [ 5, 11, 11, 15 ], "texture": "#texture" } + } + }, + { + "from": [ 2, 5, 2 ], + "to": [ 6, 6, 6 ], + "faces": { + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture" } + } + }, + { + "from": [ 3, 0, 3 ], + "to": [ 5, 1, 5 ], + "faces": { + "down": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" } + } + }, + { + "from": [ 12, 0, 8 ], + "to": [ 14, 2, 10 ], + "faces": { + "down": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" } + } + }, + { + "from": [ 3, 0, 12 ], + "to": [ 5, 2, 14 ], + "faces": { + "down": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 15, 9, 16 ], "texture": "#texture" } + } + }, + { + "from": [ 11, 2, 7 ], + "to": [ 15, 7, 11 ], + "faces": { + "down": { "uv": [ 10, 7, 14, 11 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" } + } + }, + { + "from": [ 12, 7, 8 ], + "to": [ 14, 8, 10 ], + "faces": { + "up": { "uv": [ 7, 4, 9, 6 ], "texture": "#texture" }, + "north": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "south": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "west": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "east": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" } + } + }, + { + "from": [ 2, 2, 11 ], + "to": [ 6, 7, 15 ], + "faces": { + "down": { "uv": [ 10, 7, 14, 11 ], "texture": "#mushroom_block_inside" }, + "up": { "uv": [ 6, 3, 10, 7 ], "texture": "#texture" }, + "north": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" }, + "south": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" }, + "east": { "uv": [ 6, 10, 10, 15 ], "texture": "#texture" } + } + }, + { + "from": [ 1, 3, 10 ], + "to": [ 7, 6, 16 ], + "faces": { + "down": { "uv": [ 5, 2, 11, 8 ], "texture": "#texture" }, + "up": { "uv": [ 5, 2, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "south": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture", "cullface": "south" }, + "west": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 11, 11, 14 ], "texture": "#texture" } + } + }, + { + "from": [ 3, 7, 12 ], + "to": [ 5, 8, 14 ], + "faces": { + "up": { "uv": [ 7, 4, 9, 6 ], "texture": "#texture" }, + "north": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "south": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "west": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" }, + "east": { "uv": [ 7, 10, 9, 11 ], "texture": "#texture" } + } + }, + { + "__comment": "Box12", + "from": [ 1, 2, 0 ], + "to": [ 7, 4, 1 ], + "faces": { + "down": { "uv": [ 5, 1, 11, 2 ], "texture": "#texture" }, + "up": { "uv": [ 5, 1, 11, 2 ], "texture": "#texture" }, + "north": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture", "cullface": "north" }, + "west": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" }, + "east": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box12", + "from": [ 0, 2, 1 ], + "to": [ 1, 4, 7 ], + "faces": { + "down": { "uv": [ 4, 2, 5, 8 ], "texture": "#texture" }, + "up": { "uv": [ 4, 2, 5, 8 ], "texture": "#texture" }, + "north": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" }, + "south": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" }, + "west": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture", "cullface": "west" } + } + }, + { + "__comment": "Box12", + "from": [ 7, 2, 1 ], + "to": [ 8, 4, 7 ], + "faces": { + "down": { "uv": [ 11, 2, 12, 8 ], "texture": "#texture" }, + "up": { "uv": [ 11, 2, 12, 8 ], "texture": "#texture" }, + "north": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" }, + "south": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" }, + "east": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box12", + "from": [ 1, 2, 7 ], + "to": [ 7, 4, 8 ], + "faces": { + "down": { "uv": [ 5, 8, 11, 9 ], "texture": "#texture" }, + "up": { "uv": [ 5, 8, 11, 9 ], "texture": "#texture" }, + "south": { "uv": [ 5, 12, 11, 14 ], "texture": "#texture" }, + "west": { "uv": [ 4, 12, 5, 14 ], "texture": "#texture" }, + "east": { "uv": [ 11, 12, 12, 14 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/minecraft/models/block/warped_fungus.json b/src/main/resources/assets/minecraft/models/block/warped_fungus.json new file mode 100644 index 0000000..6e330ae --- /dev/null +++ b/src/main/resources/assets/minecraft/models/block/warped_fungus.json @@ -0,0 +1,60 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "blocks/warped_fungus", + "texture": "blocks/warped_fungus", + "bottom": "blocks/warped_fungus_bottom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 5, 9 ], + "faces": { + "down": { "uv": [ 0, 11, 2, 13 ], "texture": "#texture", "cullface": "down" }, + "north": { "uv": [ 0, 11, 2, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 11, 2, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 11, 2, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 11, 2, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 5, 3 ], + "to": [ 12, 8, 13 ], + "faces": { + "down": { "uv": [ 4, 3, 12, 13 ], "texture": "#bottom" }, + "up": { "uv": [ 4, 1, 12, 11 ], "texture": "#texture" }, + "north": { "uv": [ 4, 13, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 4, 13, 12, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture" }, + "east": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 3, 5, 4 ], + "to": [ 13, 8, 12 ], + "faces": { + "down": { "uv": [ 3, 4, 13, 12 ], "texture": "#bottom" }, + "up": { "uv": [ 3, 2, 13, 10 ], "texture": "#texture" }, + "north": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture" }, + "west": { "uv": [ 4, 13, 12, 16 ], "texture": "#texture" }, + "east": { "uv": [ 4, 13, 12, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 4, 8, 4 ], + "to": [ 12, 9, 12 ], + "faces": { + "up": { "uv": [ 4, 2, 12, 10 ], "texture": "#texture" }, + "north": { "uv": [ 4, 12, 12, 13 ], "texture": "#texture" }, + "south": { "uv": [ 4, 12, 12, 13 ], "texture": "#texture" }, + "west": { "uv": [ 4, 12, 12, 13 ], "texture": "#texture" }, + "east": { "uv": [ 4, 12, 12, 13 ], "texture": "#texture" } + } + } + ] +} diff --git a/src/main/resources/assets/minecraft/models/item/brown_mushroom.json b/src/main/resources/assets/minecraft/models/item/brown_mushroom.json new file mode 100644 index 0000000..ab3866d --- /dev/null +++ b/src/main/resources/assets/minecraft/models/item/brown_mushroom.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "block/brown_mushroom" + } +} diff --git a/src/main/resources/assets/minecraft/models/item/red_mushroom.json b/src/main/resources/assets/minecraft/models/item/red_mushroom.json new file mode 100644 index 0000000..f03e950 --- /dev/null +++ b/src/main/resources/assets/minecraft/models/item/red_mushroom.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "block/red_mushroom" + } +} diff --git a/src/main/resources/assets/minecraft/optifine/emissive.properties b/src/main/resources/assets/minecraft/optifine/emissive.properties new file mode 100644 index 0000000..3ce7dca --- /dev/null +++ b/src/main/resources/assets/minecraft/optifine/emissive.properties @@ -0,0 +1 @@ +suffix.emissive=_e \ No newline at end of file diff --git a/src/main/resources/assets/minecraft/textures/blocks/crimson_fungus_bottom.png b/src/main/resources/assets/minecraft/textures/blocks/crimson_fungus_bottom.png new file mode 100644 index 0000000..24b057a Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/blocks/crimson_fungus_bottom.png differ diff --git a/src/main/resources/assets/minecraft/textures/blocks/crimson_fungus_top.png b/src/main/resources/assets/minecraft/textures/blocks/crimson_fungus_top.png new file mode 100644 index 0000000..3b36678 Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/blocks/crimson_fungus_top.png differ diff --git a/src/main/resources/assets/minecraft/textures/blocks/mushroom_brown_new.png b/src/main/resources/assets/minecraft/textures/blocks/mushroom_brown_new.png new file mode 100644 index 0000000..90e8a91 Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/blocks/mushroom_brown_new.png differ diff --git a/src/main/resources/assets/minecraft/textures/blocks/mushroom_red_new.png b/src/main/resources/assets/minecraft/textures/blocks/mushroom_red_new.png new file mode 100644 index 0000000..fd82cca Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/blocks/mushroom_red_new.png differ diff --git a/src/main/resources/assets/minecraft/textures/blocks/warped_fungus.png b/src/main/resources/assets/minecraft/textures/blocks/warped_fungus.png new file mode 100644 index 0000000..f18a230 Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/blocks/warped_fungus.png differ diff --git a/src/main/resources/assets/minecraft/textures/blocks/warped_fungus_bottom.png b/src/main/resources/assets/minecraft/textures/blocks/warped_fungus_bottom.png new file mode 100644 index 0000000..7735e79 Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/blocks/warped_fungus_bottom.png differ diff --git a/src/main/resources/assets/minecraft/textures/models/armor/cincinnasite_layer_0.png b/src/main/resources/assets/minecraft/textures/models/armor/cincinnasite_layer_0.png new file mode 100644 index 0000000..e31dcf8 Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/models/armor/cincinnasite_layer_0.png differ diff --git a/src/main/resources/assets/minecraft/textures/models/armor/cincinnasite_layer_1.png b/src/main/resources/assets/minecraft/textures/models/armor/cincinnasite_layer_1.png new file mode 100644 index 0000000..2150445 Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/models/armor/cincinnasite_layer_1.png differ diff --git a/src/main/resources/assets/minecraft/textures/models/armor/cincinnasite_layer_2.png b/src/main/resources/assets/minecraft/textures/models/armor/cincinnasite_layer_2.png new file mode 100644 index 0000000..055556d Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/models/armor/cincinnasite_layer_2.png differ diff --git a/src/main/resources/assets/minecraft/textures/models/armor/nether_ruby_layer_1.png b/src/main/resources/assets/minecraft/textures/models/armor/nether_ruby_layer_1.png new file mode 100644 index 0000000..6503008 Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/models/armor/nether_ruby_layer_1.png differ diff --git a/src/main/resources/assets/minecraft/textures/models/armor/nether_ruby_layer_2.png b/src/main/resources/assets/minecraft/textures/models/armor/nether_ruby_layer_2.png new file mode 100644 index 0000000..e60de5d Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/models/armor/nether_ruby_layer_2.png differ diff --git a/src/main/resources/betternether.mixins.json b/src/main/resources/betternether.mixins.json new file mode 100644 index 0000000..7109525 --- /dev/null +++ b/src/main/resources/betternether.mixins.json @@ -0,0 +1,18 @@ +{ + "required": true, + "package": "redd90.betternether.mixin", + "compatibilityLevel": "JAVA_8", + "refmap": "betternether.refmap.json", + "mixins": [ + "ChunkGeneratorMixin", + "ChunkSerializerMixin", + "DimensionTypeMixin", + "ServerWorldMixin", + "WorkbenchContainerMixin" + ], + "client": [], + "injectors": { + "defaultRequire": 1 + }, + "minVersion": "0.8" +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_bark_from_anchor_tree_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_bark_from_anchor_tree_log.json new file mode 100644 index 0000000..046e90e --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_bark_from_anchor_tree_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_bark_from_anchor_tree_log" + ] + }, + "criteria": { + "anchor_tree_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_bark_from_anchor_tree_log" + } + } + }, + "requirements": [ + [ + "anchor_tree_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_button_from_anchor_tree_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_button_from_anchor_tree_planks.json new file mode 100644 index 0000000..8a38cd6 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_button_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_button_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_button_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_door_from_anchor_tree_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_door_from_anchor_tree_planks.json new file mode 100644 index 0000000..363030c --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_door_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_door_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_door_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_fence_from_anchor_tree_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_fence_from_anchor_tree_planks.json new file mode 100644 index 0000000..b607bdd --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_fence_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_fence_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_fence_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_gate_from_anchor_tree_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_gate_from_anchor_tree_planks.json new file mode 100644 index 0000000..c95aa6d --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_gate_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_gate_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_gate_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_ladder_from_anchor_tree_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_ladder_from_anchor_tree_planks.json new file mode 100644 index 0000000..cbf548d --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_ladder_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_ladder_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_ladder_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_bark.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_bark.json new file mode 100644 index 0000000..45623e3 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_bark.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_planks_from_anchor_tree_bark" + ] + }, + "criteria": { + "anchor_tree_bark": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_bark" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_planks_from_anchor_tree_bark" + } + } + }, + "requirements": [ + [ + "anchor_tree_bark", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_log.json new file mode 100644 index 0000000..8fd3ccf --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_planks_from_anchor_tree_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_planks_from_anchor_tree_log" + ] + }, + "criteria": { + "anchor_tree_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_planks_from_anchor_tree_log" + } + } + }, + "requirements": [ + [ + "anchor_tree_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_planks_from_striped_bark_anchor_tree.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_planks_from_striped_bark_anchor_tree.json new file mode 100644 index 0000000..0b76d87 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_planks_from_striped_bark_anchor_tree.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_planks_from_striped_bark_anchor_tree" + ] + }, + "criteria": { + "striped_bark_anchor_tree": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_bark_anchor_tree" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_planks_from_striped_bark_anchor_tree" + } + } + }, + "requirements": [ + [ + "striped_bark_anchor_tree", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_planks_from_striped_log_anchor_tree.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_planks_from_striped_log_anchor_tree.json new file mode 100644 index 0000000..395ad16 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_planks_from_striped_log_anchor_tree.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_planks_from_striped_log_anchor_tree" + ] + }, + "criteria": { + "striped_log_anchor_tree": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_anchor_tree" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_planks_from_striped_log_anchor_tree" + } + } + }, + "requirements": [ + [ + "striped_log_anchor_tree", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_plate_from_anchor_tree_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_plate_from_anchor_tree_planks.json new file mode 100644 index 0000000..9d87d0b --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_plate_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_plate_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_plate_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_slab_from_anchor_tree_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_slab_from_anchor_tree_planks.json new file mode 100644 index 0000000..e0ecf01 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_slab_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_slab_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_slab_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_stairs_from_anchor_tree_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_stairs_from_anchor_tree_planks.json new file mode 100644 index 0000000..a4ff6ac --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_stairs_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_stairs_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_stairs_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_trapdoor_from_anchor_tree_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_trapdoor_from_anchor_tree_planks.json new file mode 100644 index 0000000..d8d0ccd --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/anchor_tree_trapdoor_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:anchor_tree_trapdoor_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:anchor_tree_trapdoor_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_acacia_from_acacia_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_acacia_from_acacia_slab.json new file mode 100644 index 0000000..5a652db --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_acacia_from_acacia_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_acacia_from_acacia_slab" + ] + }, + "criteria": { + "acacia_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:acacia_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_acacia_from_acacia_slab" + } + } + }, + "requirements": [ + [ + "acacia_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_anchor_tree_from_anchor_tree_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_anchor_tree_from_anchor_tree_slab.json new file mode 100644 index 0000000..4cc2505 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_anchor_tree_from_anchor_tree_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_anchor_tree_from_anchor_tree_slab" + ] + }, + "criteria": { + "anchor_tree_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_anchor_tree_from_anchor_tree_slab" + } + } + }, + "requirements": [ + [ + "anchor_tree_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_birch_from_birch_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_birch_from_birch_slab.json new file mode 100644 index 0000000..8d743b3 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_birch_from_birch_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_birch_from_birch_slab" + ] + }, + "criteria": { + "birch_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:birch_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_birch_from_birch_slab" + } + } + }, + "requirements": [ + [ + "birch_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_cincinnasite_from_cincinnasite_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_cincinnasite_from_cincinnasite_slab.json new file mode 100644 index 0000000..2cb7c78 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_cincinnasite_from_cincinnasite_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_cincinnasite_from_cincinnasite_slab" + ] + }, + "criteria": { + "cincinnasite_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_cincinnasite_from_cincinnasite_slab" + } + } + }, + "requirements": [ + [ + "cincinnasite_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_crimson_from_crimson_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_crimson_from_crimson_slab.json new file mode 100644 index 0000000..a028508 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_crimson_from_crimson_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_crimson_from_crimson_slab" + ] + }, + "criteria": { + "crimson_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_crimson_from_crimson_slab" + } + } + }, + "requirements": [ + [ + "crimson_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_dark_oak_from_dark_oak_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_dark_oak_from_dark_oak_slab.json new file mode 100644 index 0000000..3e46e01 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_dark_oak_from_dark_oak_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_dark_oak_from_dark_oak_slab" + ] + }, + "criteria": { + "dark_oak_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:dark_oak_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_dark_oak_from_dark_oak_slab" + } + } + }, + "requirements": [ + [ + "dark_oak_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_jungle_from_jungle_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_jungle_from_jungle_slab.json new file mode 100644 index 0000000..d5c2169 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_jungle_from_jungle_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_jungle_from_jungle_slab" + ] + }, + "criteria": { + "jungle_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:jungle_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_jungle_from_jungle_slab" + } + } + }, + "requirements": [ + [ + "jungle_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_mushroom_fir_from_mushroom_fir_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_mushroom_fir_from_mushroom_fir_slab.json new file mode 100644 index 0000000..7674b64 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_mushroom_fir_from_mushroom_fir_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_mushroom_fir_from_mushroom_fir_slab" + ] + }, + "criteria": { + "mushroom_fir_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_mushroom_fir_from_mushroom_fir_slab" + } + } + }, + "requirements": [ + [ + "mushroom_fir_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_mushroom_from_mushroom_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_mushroom_from_mushroom_slab.json new file mode 100644 index 0000000..752a960 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_mushroom_from_mushroom_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_mushroom_from_mushroom_slab" + ] + }, + "criteria": { + "mushroom_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_mushroom_from_mushroom_slab" + } + } + }, + "requirements": [ + [ + "mushroom_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_nether_sakura_from_nether_sakura_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_nether_sakura_from_nether_sakura_slab.json new file mode 100644 index 0000000..10e1e1b --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_nether_sakura_from_nether_sakura_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_nether_sakura_from_nether_sakura_slab" + ] + }, + "criteria": { + "nether_sakura_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_nether_sakura_from_nether_sakura_slab" + } + } + }, + "requirements": [ + [ + "nether_sakura_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_oak_from_oak_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_oak_from_oak_slab.json new file mode 100644 index 0000000..3639be0 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_oak_from_oak_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_oak_from_oak_slab" + ] + }, + "criteria": { + "oak_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:oak_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_oak_from_oak_slab" + } + } + }, + "requirements": [ + [ + "oak_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_reeds_from_reeds_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_reeds_from_reeds_slab.json new file mode 100644 index 0000000..43fe0a7 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_reeds_from_reeds_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_reeds_from_reeds_slab" + ] + }, + "criteria": { + "reeds_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_reeds_from_reeds_slab" + } + } + }, + "requirements": [ + [ + "reeds_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_rubeus_from_rubeus_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_rubeus_from_rubeus_slab.json new file mode 100644 index 0000000..acd37c2 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_rubeus_from_rubeus_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_rubeus_from_rubeus_slab" + ] + }, + "criteria": { + "rubeus_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_rubeus_from_rubeus_slab" + } + } + }, + "requirements": [ + [ + "rubeus_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_spruce_from_spruce_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_spruce_from_spruce_slab.json new file mode 100644 index 0000000..59a8d92 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_spruce_from_spruce_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_spruce_from_spruce_slab" + ] + }, + "criteria": { + "spruce_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:spruce_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_spruce_from_spruce_slab" + } + } + }, + "requirements": [ + [ + "spruce_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_stalagnate_from_stalagnate_planks_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_stalagnate_from_stalagnate_planks_slab.json new file mode 100644 index 0000000..a374d90 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_stalagnate_from_stalagnate_planks_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_stalagnate_from_stalagnate_planks_slab" + ] + }, + "criteria": { + "stalagnate_planks_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_stalagnate_from_stalagnate_planks_slab" + } + } + }, + "requirements": [ + [ + "stalagnate_planks_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_warped_from_warped_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_warped_from_warped_slab.json new file mode 100644 index 0000000..c62733d --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_warped_from_warped_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_warped_from_warped_slab" + ] + }, + "criteria": { + "warped_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_warped_from_warped_slab" + } + } + }, + "requirements": [ + [ + "warped_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_wart_from_wart_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_wart_from_wart_slab.json new file mode 100644 index 0000000..3e55e90 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_wart_from_wart_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_wart_from_wart_slab" + ] + }, + "criteria": { + "wart_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_wart_from_wart_slab" + } + } + }, + "requirements": [ + [ + "wart_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_willow_from_willow_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_willow_from_willow_slab.json new file mode 100644 index 0000000..f791bff --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bar_stool_willow_from_willow_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bar_stool_willow_from_willow_slab" + ] + }, + "criteria": { + "willow_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bar_stool_willow_from_willow_slab" + } + } + }, + "requirements": [ + [ + "willow_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_anchor_tree_from_anchor_tree_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..abda78c --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_anchor_tree_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_anchor_tree_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_crimson_from_crimson_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_crimson_from_crimson_planks.json new file mode 100644 index 0000000..cafcfec --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_crimson_from_crimson_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_crimson_from_crimson_planks" + ] + }, + "criteria": { + "crimson_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_crimson_from_crimson_planks" + } + } + }, + "requirements": [ + [ + "crimson_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_mushroom_fir_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..6175641 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_mushroom_fir_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_mushroom_fir_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_mushroom_from_mushroom_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..8a6c687 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_mushroom_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_mushroom_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_mushroom_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_nether_sakura_from_nether_sakura_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..4412b9e --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_nether_sakura_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_nether_sakura_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_reed_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_reed_from_reeds_block.json new file mode 100644 index 0000000..3fc2636 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_reed_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_reed_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_reed_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_rubeus_from_rubeus_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..b5f35c9 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_rubeus_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_rubeus_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_rubeus_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_stalagnate_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..5da5ced --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_stalagnate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_stalagnate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_warped_from_warped_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_warped_from_warped_planks.json new file mode 100644 index 0000000..7bf9f41 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_warped_from_warped_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_warped_from_warped_planks" + ] + }, + "criteria": { + "warped_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_warped_from_warped_planks" + } + } + }, + "requirements": [ + [ + "warped_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_wart_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_wart_from_wart_planks.json new file mode 100644 index 0000000..0fd5707 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_wart_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_wart_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_wart_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_willow_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_willow_from_willow_planks.json new file mode 100644 index 0000000..2b772cd --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/barrel_willow_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:barrel_willow_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:barrel_willow_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_bricks_from_polished_basalt.json b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_bricks_from_polished_basalt.json new file mode 100644 index 0000000..cd31b9f --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_bricks_from_polished_basalt.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_bricks_from_polished_basalt" + ] + }, + "criteria": { + "polished_basalt": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:polished_basalt" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_bricks_from_polished_basalt" + } + } + }, + "requirements": [ + [ + "polished_basalt", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_bricks_slab_from_basalt_bricks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_bricks_slab_from_basalt_bricks.json new file mode 100644 index 0000000..b2af3ea --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_bricks_slab_from_basalt_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_bricks_slab_from_basalt_bricks" + ] + }, + "criteria": { + "basalt_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:basalt_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_bricks_slab_from_basalt_bricks" + } + } + }, + "requirements": [ + [ + "basalt_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_bricks_stairs_from_basalt_bricks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_bricks_stairs_from_basalt_bricks.json new file mode 100644 index 0000000..586addd --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_bricks_stairs_from_basalt_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_bricks_stairs_from_basalt_bricks" + ] + }, + "criteria": { + "basalt_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:basalt_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_bricks_stairs_from_basalt_bricks" + } + } + }, + "requirements": [ + [ + "basalt_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_bricks_wall_from_basalt_bricks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_bricks_wall_from_basalt_bricks.json new file mode 100644 index 0000000..4272e9e --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_bricks_wall_from_basalt_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_bricks_wall_from_basalt_bricks" + ] + }, + "criteria": { + "basalt_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:basalt_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_bricks_wall_from_basalt_bricks" + } + } + }, + "requirements": [ + [ + "basalt_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_furnace_from_basalt.json b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_furnace_from_basalt.json new file mode 100644 index 0000000..18366ba --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_furnace_from_basalt.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_furnace_from_basalt" + ] + }, + "criteria": { + "basalt": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:basalt" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_furnace_from_basalt" + } + } + }, + "requirements": [ + [ + "basalt", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_slab_from_basalt.json b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_slab_from_basalt.json new file mode 100644 index 0000000..c84999c --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_slab_from_basalt.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_slab_from_basalt" + ] + }, + "criteria": { + "basalt": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:basalt" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_slab_from_basalt" + } + } + }, + "requirements": [ + [ + "basalt", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_stalactite_from_basalt.json b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_stalactite_from_basalt.json new file mode 100644 index 0000000..da18337 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/basalt_stalactite_from_basalt.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:basalt_stalactite_from_basalt" + ] + }, + "criteria": { + "basalt": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:basalt" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:basalt_stalactite_from_basalt" + } + } + }, + "requirements": [ + [ + "basalt", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/blackstone_furnace_from_blackstone.json b/src/main/resources/data/betternether/advancements/recipes/betternether/blackstone_furnace_from_blackstone.json new file mode 100644 index 0000000..781c655 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/blackstone_furnace_from_blackstone.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:blackstone_furnace_from_blackstone" + ] + }, + "criteria": { + "blackstone": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:blackstone" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:blackstone_furnace_from_blackstone" + } + } + }, + "requirements": [ + [ + "blackstone", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/blackstone_stalactite_from_blackstone.json b/src/main/resources/data/betternether/advancements/recipes/betternether/blackstone_stalactite_from_blackstone.json new file mode 100644 index 0000000..4bff546 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/blackstone_stalactite_from_blackstone.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:blackstone_stalactite_from_blackstone" + ] + }, + "criteria": { + "blackstone": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:blackstone" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:blackstone_stalactite_from_blackstone" + } + } + }, + "requirements": [ + [ + "blackstone", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json new file mode 100644 index 0000000..649f4c5 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:blue_obsidian_bricks_slab_from_blue_obsidian_bricks" + ] + }, + "criteria": { + "blue_obsidian_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:blue_obsidian_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:blue_obsidian_bricks_slab_from_blue_obsidian_bricks" + } + } + }, + "requirements": [ + [ + "blue_obsidian_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json new file mode 100644 index 0000000..228dfae --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:blue_obsidian_bricks_stairs_from_blue_obsidian_bricks" + ] + }, + "criteria": { + "blue_obsidian_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:blue_obsidian_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:blue_obsidian_bricks_stairs_from_blue_obsidian_bricks" + } + } + }, + "requirements": [ + [ + "blue_obsidian_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json b/src/main/resources/data/betternether/advancements/recipes/betternether/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json new file mode 100644 index 0000000..0fdb318 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:blue_obsidian_tile_slab_from_blue_obsidian_tile_small" + ] + }, + "criteria": { + "blue_obsidian_tile_small": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:blue_obsidian_tile_small" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:blue_obsidian_tile_slab_from_blue_obsidian_tile_small" + } + } + }, + "requirements": [ + [ + "blue_obsidian_tile_small", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json b/src/main/resources/data/betternether/advancements/recipes/betternether/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json new file mode 100644 index 0000000..91f6bcb --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:blue_obsidian_tile_stairs_from_blue_obsidian_tile_small" + ] + }, + "criteria": { + "blue_obsidian_tile_small": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:blue_obsidian_tile_small" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:blue_obsidian_tile_stairs_from_blue_obsidian_tile_small" + } + } + }, + "requirements": [ + [ + "blue_obsidian_tile_small", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bone_button_from_bone_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bone_button_from_bone_block.json new file mode 100644 index 0000000..19cb002 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bone_button_from_bone_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bone_button_from_bone_block" + ] + }, + "criteria": { + "bone_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:bone_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bone_button_from_bone_block" + } + } + }, + "requirements": [ + [ + "bone_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bone_plate_from_bone_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bone_plate_from_bone_block.json new file mode 100644 index 0000000..5548f48 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bone_plate_from_bone_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bone_plate_from_bone_block" + ] + }, + "criteria": { + "bone_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:bone_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bone_plate_from_bone_block" + } + } + }, + "requirements": [ + [ + "bone_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bone_slab_from_bone_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bone_slab_from_bone_block.json new file mode 100644 index 0000000..c4d21df --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bone_slab_from_bone_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bone_slab_from_bone_block" + ] + }, + "criteria": { + "bone_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:bone_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bone_slab_from_bone_block" + } + } + }, + "requirements": [ + [ + "bone_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bone_stairs_from_bone_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bone_stairs_from_bone_block.json new file mode 100644 index 0000000..abb3a34 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bone_stairs_from_bone_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bone_stairs_from_bone_block" + ] + }, + "criteria": { + "bone_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:bone_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bone_stairs_from_bone_block" + } + } + }, + "requirements": [ + [ + "bone_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bone_stalactite_from_bone_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bone_stalactite_from_bone_block.json new file mode 100644 index 0000000..c43ea76 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bone_stalactite_from_bone_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bone_stalactite_from_bone_block" + ] + }, + "criteria": { + "bone_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:bone_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bone_stalactite_from_bone_block" + } + } + }, + "requirements": [ + [ + "bone_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bone_wall_from_bone_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bone_wall_from_bone_block.json new file mode 100644 index 0000000..cb2ff57 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bone_wall_from_bone_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bone_wall_from_bone_block" + ] + }, + "criteria": { + "bone_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:bone_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bone_wall_from_bone_block" + } + } + }, + "requirements": [ + [ + "bone_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bricks_fire_bowl_from_nether_brick_tile_large.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bricks_fire_bowl_from_nether_brick_tile_large.json new file mode 100644 index 0000000..161fac3 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bricks_fire_bowl_from_nether_brick_tile_large.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bricks_fire_bowl_from_nether_brick_tile_large" + ] + }, + "criteria": { + "nether_brick_tile_large": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_brick_tile_large" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bricks_fire_bowl_from_nether_brick_tile_large" + } + } + }, + "requirements": [ + [ + "nether_brick_tile_large", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/bricks_fire_bowl_soul_from_nether_brick_tile_large.json b/src/main/resources/data/betternether/advancements/recipes/betternether/bricks_fire_bowl_soul_from_nether_brick_tile_large.json new file mode 100644 index 0000000..ba08e75 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/bricks_fire_bowl_soul_from_nether_brick_tile_large.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:bricks_fire_bowl_soul_from_nether_brick_tile_large" + ] + }, + "criteria": { + "nether_brick_tile_large": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_brick_tile_large" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:bricks_fire_bowl_soul_from_nether_brick_tile_large" + } + } + }, + "requirements": [ + [ + "nether_brick_tile_large", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_acacia_from_acacia_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_acacia_from_acacia_slab.json new file mode 100644 index 0000000..a3bd1a3 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_acacia_from_acacia_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_acacia_from_acacia_slab" + ] + }, + "criteria": { + "acacia_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:acacia_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_acacia_from_acacia_slab" + } + } + }, + "requirements": [ + [ + "acacia_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_anchor_tree_from_anchor_tree_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_anchor_tree_from_anchor_tree_slab.json new file mode 100644 index 0000000..e670974 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_anchor_tree_from_anchor_tree_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_anchor_tree_from_anchor_tree_slab" + ] + }, + "criteria": { + "anchor_tree_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_anchor_tree_from_anchor_tree_slab" + } + } + }, + "requirements": [ + [ + "anchor_tree_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_birch_from_birch_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_birch_from_birch_slab.json new file mode 100644 index 0000000..cf974fd --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_birch_from_birch_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_birch_from_birch_slab" + ] + }, + "criteria": { + "birch_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:birch_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_birch_from_birch_slab" + } + } + }, + "requirements": [ + [ + "birch_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_cincinnasite_from_cincinnasite_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_cincinnasite_from_cincinnasite_slab.json new file mode 100644 index 0000000..6b43394 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_cincinnasite_from_cincinnasite_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_cincinnasite_from_cincinnasite_slab" + ] + }, + "criteria": { + "cincinnasite_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_cincinnasite_from_cincinnasite_slab" + } + } + }, + "requirements": [ + [ + "cincinnasite_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_crimson_from_crimson_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_crimson_from_crimson_slab.json new file mode 100644 index 0000000..5790032 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_crimson_from_crimson_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_crimson_from_crimson_slab" + ] + }, + "criteria": { + "crimson_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_crimson_from_crimson_slab" + } + } + }, + "requirements": [ + [ + "crimson_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_dark_oak_from_dark_oak_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_dark_oak_from_dark_oak_slab.json new file mode 100644 index 0000000..d8fa59c --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_dark_oak_from_dark_oak_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_dark_oak_from_dark_oak_slab" + ] + }, + "criteria": { + "dark_oak_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:dark_oak_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_dark_oak_from_dark_oak_slab" + } + } + }, + "requirements": [ + [ + "dark_oak_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_jungle_from_jungle_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_jungle_from_jungle_slab.json new file mode 100644 index 0000000..4326c5d --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_jungle_from_jungle_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_jungle_from_jungle_slab" + ] + }, + "criteria": { + "jungle_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:jungle_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_jungle_from_jungle_slab" + } + } + }, + "requirements": [ + [ + "jungle_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_mushroom_fir_from_mushroom_fir_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_mushroom_fir_from_mushroom_fir_slab.json new file mode 100644 index 0000000..ed0b635 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_mushroom_fir_from_mushroom_fir_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_mushroom_fir_from_mushroom_fir_slab" + ] + }, + "criteria": { + "mushroom_fir_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_mushroom_fir_from_mushroom_fir_slab" + } + } + }, + "requirements": [ + [ + "mushroom_fir_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_mushroom_from_mushroom_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_mushroom_from_mushroom_slab.json new file mode 100644 index 0000000..6a0b25a --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_mushroom_from_mushroom_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_mushroom_from_mushroom_slab" + ] + }, + "criteria": { + "mushroom_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_mushroom_from_mushroom_slab" + } + } + }, + "requirements": [ + [ + "mushroom_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_nether_sakura_from_nether_sakura_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_nether_sakura_from_nether_sakura_slab.json new file mode 100644 index 0000000..aa60f4c --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_nether_sakura_from_nether_sakura_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_nether_sakura_from_nether_sakura_slab" + ] + }, + "criteria": { + "nether_sakura_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_nether_sakura_from_nether_sakura_slab" + } + } + }, + "requirements": [ + [ + "nether_sakura_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_oak_from_oak_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_oak_from_oak_slab.json new file mode 100644 index 0000000..aa4fef0 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_oak_from_oak_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_oak_from_oak_slab" + ] + }, + "criteria": { + "oak_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:oak_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_oak_from_oak_slab" + } + } + }, + "requirements": [ + [ + "oak_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_reeds_from_reeds_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_reeds_from_reeds_slab.json new file mode 100644 index 0000000..0f0c662 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_reeds_from_reeds_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_reeds_from_reeds_slab" + ] + }, + "criteria": { + "reeds_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_reeds_from_reeds_slab" + } + } + }, + "requirements": [ + [ + "reeds_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_rubeus_from_rubeus_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_rubeus_from_rubeus_slab.json new file mode 100644 index 0000000..aa4add7 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_rubeus_from_rubeus_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_rubeus_from_rubeus_slab" + ] + }, + "criteria": { + "rubeus_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_rubeus_from_rubeus_slab" + } + } + }, + "requirements": [ + [ + "rubeus_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_spruce_from_spruce_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_spruce_from_spruce_slab.json new file mode 100644 index 0000000..05f9217 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_spruce_from_spruce_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_spruce_from_spruce_slab" + ] + }, + "criteria": { + "spruce_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:spruce_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_spruce_from_spruce_slab" + } + } + }, + "requirements": [ + [ + "spruce_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_stalagnate_from_stalagnate_planks_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_stalagnate_from_stalagnate_planks_slab.json new file mode 100644 index 0000000..2acde93 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_stalagnate_from_stalagnate_planks_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_stalagnate_from_stalagnate_planks_slab" + ] + }, + "criteria": { + "stalagnate_planks_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_stalagnate_from_stalagnate_planks_slab" + } + } + }, + "requirements": [ + [ + "stalagnate_planks_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_warped_from_warped_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_warped_from_warped_slab.json new file mode 100644 index 0000000..8587fe0 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_warped_from_warped_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_warped_from_warped_slab" + ] + }, + "criteria": { + "warped_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_warped_from_warped_slab" + } + } + }, + "requirements": [ + [ + "warped_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_wart_from_wart_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_wart_from_wart_slab.json new file mode 100644 index 0000000..b652faf --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_wart_from_wart_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_wart_from_wart_slab" + ] + }, + "criteria": { + "wart_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_wart_from_wart_slab" + } + } + }, + "requirements": [ + [ + "wart_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chair_willow_from_willow_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_willow_from_willow_slab.json new file mode 100644 index 0000000..613ccb2 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chair_willow_from_willow_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chair_willow_from_willow_slab" + ] + }, + "criteria": { + "willow_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chair_willow_from_willow_slab" + } + } + }, + "requirements": [ + [ + "willow_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chest_anchor_tree_from_anchor_tree_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..58f875c --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_anchor_tree_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_anchor_tree_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chest_crimson_from_crimson_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_crimson_from_crimson_planks.json new file mode 100644 index 0000000..44f1108 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_crimson_from_crimson_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_crimson_from_crimson_planks" + ] + }, + "criteria": { + "crimson_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_crimson_from_crimson_planks" + } + } + }, + "requirements": [ + [ + "crimson_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chest_mushroom_fir_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..0813e25 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_mushroom_fir_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_mushroom_fir_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chest_mushroom_from_mushroom_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..88dd367 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_mushroom_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_mushroom_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_mushroom_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chest_nether_sakura_from_nether_sakura_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..b260820 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_nether_sakura_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_nether_sakura_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chest_reed_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_reed_from_reeds_block.json new file mode 100644 index 0000000..0063ca2 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_reed_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_reed_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_reed_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chest_rubeus_from_rubeus_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..99c5ba8 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_rubeus_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_rubeus_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_rubeus_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chest_stalagnate_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..337f7a7 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_stalagnate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_stalagnate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chest_warped_from_warped_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_warped_from_warped_planks.json new file mode 100644 index 0000000..14fc41b --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_warped_from_warped_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_warped_from_warped_planks" + ] + }, + "criteria": { + "warped_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_warped_from_warped_planks" + } + } + }, + "requirements": [ + [ + "warped_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chest_wart_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_wart_from_wart_planks.json new file mode 100644 index 0000000..eb370bb --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_wart_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_wart_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_wart_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/chest_willow_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_willow_from_willow_planks.json new file mode 100644 index 0000000..ae5e3ce --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/chest_willow_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:chest_willow_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:chest_willow_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_fire_bowl_from_cincinnasite_forged.json b/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_fire_bowl_from_cincinnasite_forged.json new file mode 100644 index 0000000..6d77da3 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_fire_bowl_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:cincinnasite_fire_bowl_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:cincinnasite_fire_bowl_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json b/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json new file mode 100644 index 0000000..0efd0c4 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:cincinnasite_fire_bowl_soul_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:cincinnasite_fire_bowl_soul_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_plate_from_cincinnasite_forged.json b/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_plate_from_cincinnasite_forged.json new file mode 100644 index 0000000..d03f138 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_plate_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:cincinnasite_plate_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:cincinnasite_plate_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_slab_from_cincinnasite_forged.json b/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_slab_from_cincinnasite_forged.json new file mode 100644 index 0000000..261a735 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_slab_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:cincinnasite_slab_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:cincinnasite_slab_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_stairs_from_cincinnasite_forged.json b/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_stairs_from_cincinnasite_forged.json new file mode 100644 index 0000000..46b156f --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_stairs_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:cincinnasite_stairs_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:cincinnasite_stairs_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_wall_from_cincinnasite_forged.json b/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_wall_from_cincinnasite_forged.json new file mode 100644 index 0000000..d0a89d0 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/cincinnasite_wall_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:cincinnasite_wall_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:cincinnasite_wall_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_anchor_tree_from_anchor_tree_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..6515888 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_anchor_tree_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_anchor_tree_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_crimson_from_crimson_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_crimson_from_crimson_planks.json new file mode 100644 index 0000000..1f9a8fe --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_crimson_from_crimson_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_crimson_from_crimson_planks" + ] + }, + "criteria": { + "crimson_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_crimson_from_crimson_planks" + } + } + }, + "requirements": [ + [ + "crimson_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_mushroom_fir_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..23ba714 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_mushroom_fir_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_mushroom_fir_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_mushroom_from_mushroom_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..b0ab33d --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_mushroom_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_mushroom_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_mushroom_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_nether_sakura_from_nether_sakura_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..234cd6d --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_nether_sakura_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_nether_sakura_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_reed_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_reed_from_reeds_block.json new file mode 100644 index 0000000..8545eeb --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_reed_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_reed_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_reed_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_rubeus_from_rubeus_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..02b4e9b --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_rubeus_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_rubeus_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_rubeus_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_stalagnate_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..2669bf4 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_stalagnate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_stalagnate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_warped_from_warped_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_warped_from_warped_planks.json new file mode 100644 index 0000000..bd20863 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_warped_from_warped_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_warped_from_warped_planks" + ] + }, + "criteria": { + "warped_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_warped_from_warped_planks" + } + } + }, + "requirements": [ + [ + "warped_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_wart_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_wart_from_wart_planks.json new file mode 100644 index 0000000..00754e8 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_wart_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_wart_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_wart_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_willow_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_willow_from_willow_planks.json new file mode 100644 index 0000000..3fbf3af --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/crafting_table_willow_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crafting_table_willow_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crafting_table_willow_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/crimson_ladder_from_crimson_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/crimson_ladder_from_crimson_planks.json new file mode 100644 index 0000000..22f87eb --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/crimson_ladder_from_crimson_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:crimson_ladder_from_crimson_planks" + ] + }, + "criteria": { + "crimson_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:crimson_ladder_from_crimson_planks" + } + } + }, + "requirements": [ + [ + "crimson_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/glowstone_stalactite_from_glowstone.json b/src/main/resources/data/betternether/advancements/recipes/betternether/glowstone_stalactite_from_glowstone.json new file mode 100644 index 0000000..81d3dbb --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/glowstone_stalactite_from_glowstone.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:glowstone_stalactite_from_glowstone" + ] + }, + "criteria": { + "glowstone": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:glowstone" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:glowstone_stalactite_from_glowstone" + } + } + }, + "requirements": [ + [ + "glowstone", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_button_from_mushroom_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_button_from_mushroom_planks.json new file mode 100644 index 0000000..44bc339 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_button_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_button_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_button_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_door_from_mushroom_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_door_from_mushroom_planks.json new file mode 100644 index 0000000..2f203d8 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_door_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_door_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_door_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fence_from_mushroom_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fence_from_mushroom_planks.json new file mode 100644 index 0000000..7c4a568 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fence_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fence_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fence_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_button_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_button_from_mushroom_fir_planks.json new file mode 100644 index 0000000..1f90883 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_button_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_button_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_button_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_door_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_door_from_mushroom_fir_planks.json new file mode 100644 index 0000000..a9a3af3 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_door_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_door_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_door_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_fence_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_fence_from_mushroom_fir_planks.json new file mode 100644 index 0000000..979d5cb --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_fence_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_fence_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_fence_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_gate_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_gate_from_mushroom_fir_planks.json new file mode 100644 index 0000000..dc860ec --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_gate_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_gate_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_gate_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_ladder_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_ladder_from_mushroom_fir_planks.json new file mode 100644 index 0000000..f29ae39 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_ladder_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_ladder_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_ladder_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_log_from_mushroom_fir_stem.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_log_from_mushroom_fir_stem.json new file mode 100644 index 0000000..8002d29 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_log_from_mushroom_fir_stem.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_log_from_mushroom_fir_stem" + ] + }, + "criteria": { + "mushroom_fir_stem": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_stem" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_log_from_mushroom_fir_stem" + } + } + }, + "requirements": [ + [ + "mushroom_fir_stem", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_log.json new file mode 100644 index 0000000..866c4f9 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_planks_from_mushroom_fir_log" + ] + }, + "criteria": { + "mushroom_fir_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_planks_from_mushroom_fir_log" + } + } + }, + "requirements": [ + [ + "mushroom_fir_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_stem.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_stem.json new file mode 100644 index 0000000..686ba3a --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_stem.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_planks_from_mushroom_fir_stem" + ] + }, + "criteria": { + "mushroom_fir_stem": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_stem" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_planks_from_mushroom_fir_stem" + } + } + }, + "requirements": [ + [ + "mushroom_fir_stem", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_wood.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_wood.json new file mode 100644 index 0000000..7b32c79 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_mushroom_fir_wood.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_planks_from_mushroom_fir_wood" + ] + }, + "criteria": { + "mushroom_fir_wood": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_wood" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_planks_from_mushroom_fir_wood" + } + } + }, + "requirements": [ + [ + "mushroom_fir_wood", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_striped_log_mushroom_fir.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_striped_log_mushroom_fir.json new file mode 100644 index 0000000..df3ce16 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_striped_log_mushroom_fir.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_planks_from_striped_log_mushroom_fir" + ] + }, + "criteria": { + "striped_log_mushroom_fir": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_mushroom_fir" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_planks_from_striped_log_mushroom_fir" + } + } + }, + "requirements": [ + [ + "striped_log_mushroom_fir", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_striped_wood_mushroom_fir.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_striped_wood_mushroom_fir.json new file mode 100644 index 0000000..eccb440 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_planks_from_striped_wood_mushroom_fir.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_planks_from_striped_wood_mushroom_fir" + ] + }, + "criteria": { + "striped_wood_mushroom_fir": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_wood_mushroom_fir" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_planks_from_striped_wood_mushroom_fir" + } + } + }, + "requirements": [ + [ + "striped_wood_mushroom_fir", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_plate_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_plate_from_mushroom_fir_planks.json new file mode 100644 index 0000000..a0b39b0 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_plate_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_plate_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_plate_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_slab_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_slab_from_mushroom_fir_planks.json new file mode 100644 index 0000000..413bca3 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_slab_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_slab_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_slab_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_stairs_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_stairs_from_mushroom_fir_planks.json new file mode 100644 index 0000000..11547c6 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_stairs_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_stairs_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_stairs_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_trapdoor_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_trapdoor_from_mushroom_fir_planks.json new file mode 100644 index 0000000..ecae080 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_trapdoor_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_trapdoor_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_trapdoor_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_wood_from_mushroom_fir_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_wood_from_mushroom_fir_log.json new file mode 100644 index 0000000..6ff6716 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_fir_wood_from_mushroom_fir_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_fir_wood_from_mushroom_fir_log" + ] + }, + "criteria": { + "mushroom_fir_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_fir_wood_from_mushroom_fir_log" + } + } + }, + "requirements": [ + [ + "mushroom_fir_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_gate_from_mushroom_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_gate_from_mushroom_planks.json new file mode 100644 index 0000000..d089228 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_gate_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_gate_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_gate_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_ladder_from_mushroom_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_ladder_from_mushroom_planks.json new file mode 100644 index 0000000..100902e --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_ladder_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_ladder_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_ladder_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_planks_from_mushroom_stem.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_planks_from_mushroom_stem.json new file mode 100644 index 0000000..6cfdf32 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_planks_from_mushroom_stem.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_planks_from_mushroom_stem" + ] + }, + "criteria": { + "mushroom_stem": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_stem" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_planks_from_mushroom_stem" + } + } + }, + "requirements": [ + [ + "mushroom_stem", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_plate_from_mushroom_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_plate_from_mushroom_planks.json new file mode 100644 index 0000000..ad02a7a --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_plate_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_plate_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_plate_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_slab_from_mushroom_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_slab_from_mushroom_planks.json new file mode 100644 index 0000000..10c258d --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_slab_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_slab_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_slab_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_stairs_from_mushroom_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_stairs_from_mushroom_planks.json new file mode 100644 index 0000000..2f7c3de --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_stairs_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_stairs_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_stairs_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_trapdoor_from_mushroom_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_trapdoor_from_mushroom_planks.json new file mode 100644 index 0000000..6af2693 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/mushroom_trapdoor_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:mushroom_trapdoor_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:mushroom_trapdoor_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_brick_tile_slab_from_nether_brick_tile_small.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_brick_tile_slab_from_nether_brick_tile_small.json new file mode 100644 index 0000000..dd23b3b --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_brick_tile_slab_from_nether_brick_tile_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_brick_tile_slab_from_nether_brick_tile_small" + ] + }, + "criteria": { + "nether_brick_tile_small": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_brick_tile_small" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_brick_tile_slab_from_nether_brick_tile_small" + } + } + }, + "requirements": [ + [ + "nether_brick_tile_small", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_brick_tile_stairs_from_nether_brick_tile_small.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_brick_tile_stairs_from_nether_brick_tile_small.json new file mode 100644 index 0000000..20ff83f --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_brick_tile_stairs_from_nether_brick_tile_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_brick_tile_stairs_from_nether_brick_tile_small" + ] + }, + "criteria": { + "nether_brick_tile_small": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_brick_tile_small" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_brick_tile_stairs_from_nether_brick_tile_small" + } + } + }, + "requirements": [ + [ + "nether_brick_tile_small", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_brick_wall_from_nether_brick_tile_large.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_brick_wall_from_nether_brick_tile_large.json new file mode 100644 index 0000000..80853a8 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_brick_wall_from_nether_brick_tile_large.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_brick_wall_from_nether_brick_tile_large" + ] + }, + "criteria": { + "nether_brick_tile_large": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_brick_tile_large" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_brick_wall_from_nether_brick_tile_large" + } + } + }, + "requirements": [ + [ + "nether_brick_tile_large", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_ruby_slab_from_nether_ruby_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_ruby_slab_from_nether_ruby_block.json new file mode 100644 index 0000000..65367c6 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_ruby_slab_from_nether_ruby_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_ruby_slab_from_nether_ruby_block" + ] + }, + "criteria": { + "nether_ruby_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_ruby_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_ruby_slab_from_nether_ruby_block" + } + } + }, + "requirements": [ + [ + "nether_ruby_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_ruby_stairs_from_nether_ruby_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_ruby_stairs_from_nether_ruby_block.json new file mode 100644 index 0000000..b36e780 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_ruby_stairs_from_nether_ruby_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_ruby_stairs_from_nether_ruby_block" + ] + }, + "criteria": { + "nether_ruby_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_ruby_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_ruby_stairs_from_nether_ruby_block" + } + } + }, + "requirements": [ + [ + "nether_ruby_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_bark_from_nether_sakura_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_bark_from_nether_sakura_log.json new file mode 100644 index 0000000..f812914 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_bark_from_nether_sakura_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_bark_from_nether_sakura_log" + ] + }, + "criteria": { + "nether_sakura_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_bark_from_nether_sakura_log" + } + } + }, + "requirements": [ + [ + "nether_sakura_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_button_from_nether_sakura_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_button_from_nether_sakura_planks.json new file mode 100644 index 0000000..6a977ca --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_button_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_button_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_button_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_door_from_nether_sakura_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_door_from_nether_sakura_planks.json new file mode 100644 index 0000000..8c07003 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_door_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_door_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_door_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_fence_from_nether_sakura_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_fence_from_nether_sakura_planks.json new file mode 100644 index 0000000..62c6e14 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_fence_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_fence_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_fence_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_gate_from_nether_sakura_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_gate_from_nether_sakura_planks.json new file mode 100644 index 0000000..271b839 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_gate_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_gate_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_gate_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_ladder_from_nether_sakura_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_ladder_from_nether_sakura_planks.json new file mode 100644 index 0000000..9371cdd --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_ladder_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_ladder_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_ladder_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_bark.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_bark.json new file mode 100644 index 0000000..b184feb --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_bark.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_planks_from_nether_sakura_bark" + ] + }, + "criteria": { + "nether_sakura_bark": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_bark" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_planks_from_nether_sakura_bark" + } + } + }, + "requirements": [ + [ + "nether_sakura_bark", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_log.json new file mode 100644 index 0000000..2e56d63 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_planks_from_nether_sakura_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_planks_from_nether_sakura_log" + ] + }, + "criteria": { + "nether_sakura_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_planks_from_nether_sakura_log" + } + } + }, + "requirements": [ + [ + "nether_sakura_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_planks_from_striped_bark_nether_sakura.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_planks_from_striped_bark_nether_sakura.json new file mode 100644 index 0000000..1445934 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_planks_from_striped_bark_nether_sakura.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_planks_from_striped_bark_nether_sakura" + ] + }, + "criteria": { + "striped_bark_nether_sakura": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_bark_nether_sakura" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_planks_from_striped_bark_nether_sakura" + } + } + }, + "requirements": [ + [ + "striped_bark_nether_sakura", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_planks_from_striped_log_nether_sakura.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_planks_from_striped_log_nether_sakura.json new file mode 100644 index 0000000..af7b40d --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_planks_from_striped_log_nether_sakura.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_planks_from_striped_log_nether_sakura" + ] + }, + "criteria": { + "striped_log_nether_sakura": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_nether_sakura" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_planks_from_striped_log_nether_sakura" + } + } + }, + "requirements": [ + [ + "striped_log_nether_sakura", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_plate_from_nether_sakura_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_plate_from_nether_sakura_planks.json new file mode 100644 index 0000000..3385a56 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_plate_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_plate_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_plate_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_slab_from_nether_sakura_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_slab_from_nether_sakura_planks.json new file mode 100644 index 0000000..87a55c3 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_slab_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_slab_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_slab_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_stairs_from_nether_sakura_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_stairs_from_nether_sakura_planks.json new file mode 100644 index 0000000..4b1da55 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_stairs_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_stairs_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_stairs_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_trapdoor_from_nether_sakura_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_trapdoor_from_nether_sakura_planks.json new file mode 100644 index 0000000..5547409 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/nether_sakura_trapdoor_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:nether_sakura_trapdoor_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:nether_sakura_trapdoor_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/netherite_fire_bowl_from_netherite_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/netherite_fire_bowl_from_netherite_block.json new file mode 100644 index 0000000..711f6f3 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/netherite_fire_bowl_from_netherite_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:netherite_fire_bowl_from_netherite_block" + ] + }, + "criteria": { + "netherite_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:netherite_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:netherite_fire_bowl_from_netherite_block" + } + } + }, + "requirements": [ + [ + "netherite_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/netherite_fire_bowl_soul_from_netherite_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/netherite_fire_bowl_soul_from_netherite_block.json new file mode 100644 index 0000000..b664943 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/netherite_fire_bowl_soul_from_netherite_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:netherite_fire_bowl_soul_from_netherite_block" + ] + }, + "criteria": { + "netherite_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:netherite_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:netherite_fire_bowl_soul_from_netherite_block" + } + } + }, + "requirements": [ + [ + "netherite_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/netherrack_furnace_from_netherrack.json b/src/main/resources/data/betternether/advancements/recipes/betternether/netherrack_furnace_from_netherrack.json new file mode 100644 index 0000000..661e611 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/netherrack_furnace_from_netherrack.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:netherrack_furnace_from_netherrack" + ] + }, + "criteria": { + "netherrack": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:netherrack" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:netherrack_furnace_from_netherrack" + } + } + }, + "requirements": [ + [ + "netherrack", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/netherrack_stalactite_from_netherrack.json b/src/main/resources/data/betternether/advancements/recipes/betternether/netherrack_stalactite_from_netherrack.json new file mode 100644 index 0000000..559a333 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/netherrack_stalactite_from_netherrack.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:netherrack_stalactite_from_netherrack" + ] + }, + "criteria": { + "netherrack": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:netherrack" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:netherrack_stalactite_from_netherrack" + } + } + }, + "requirements": [ + [ + "netherrack", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/obsidian_bricks_slab_from_obsidian_bricks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/obsidian_bricks_slab_from_obsidian_bricks.json new file mode 100644 index 0000000..b5d55f9 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/obsidian_bricks_slab_from_obsidian_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:obsidian_bricks_slab_from_obsidian_bricks" + ] + }, + "criteria": { + "obsidian_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:obsidian_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:obsidian_bricks_slab_from_obsidian_bricks" + } + } + }, + "requirements": [ + [ + "obsidian_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/obsidian_bricks_stairs_from_obsidian_bricks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/obsidian_bricks_stairs_from_obsidian_bricks.json new file mode 100644 index 0000000..ef6495a --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/obsidian_bricks_stairs_from_obsidian_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:obsidian_bricks_stairs_from_obsidian_bricks" + ] + }, + "criteria": { + "obsidian_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:obsidian_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:obsidian_bricks_stairs_from_obsidian_bricks" + } + } + }, + "requirements": [ + [ + "obsidian_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/obsidian_tile_slab_from_obsidian_tile_small.json b/src/main/resources/data/betternether/advancements/recipes/betternether/obsidian_tile_slab_from_obsidian_tile_small.json new file mode 100644 index 0000000..f9e248e --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/obsidian_tile_slab_from_obsidian_tile_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:obsidian_tile_slab_from_obsidian_tile_small" + ] + }, + "criteria": { + "obsidian_tile_small": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:obsidian_tile_small" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:obsidian_tile_slab_from_obsidian_tile_small" + } + } + }, + "requirements": [ + [ + "obsidian_tile_small", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/obsidian_tile_stairs_from_obsidian_tile_small.json b/src/main/resources/data/betternether/advancements/recipes/betternether/obsidian_tile_stairs_from_obsidian_tile_small.json new file mode 100644 index 0000000..6695849 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/obsidian_tile_stairs_from_obsidian_tile_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:obsidian_tile_stairs_from_obsidian_tile_small" + ] + }, + "criteria": { + "obsidian_tile_small": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:obsidian_tile_small" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:obsidian_tile_stairs_from_obsidian_tile_small" + } + } + }, + "requirements": [ + [ + "obsidian_tile_small", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_button_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_button_from_reeds_block.json new file mode 100644 index 0000000..9002040 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_button_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_button_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_button_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_door_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_door_from_reeds_block.json new file mode 100644 index 0000000..a1e9c5c --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_door_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_door_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_door_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_fence_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_fence_from_reeds_block.json new file mode 100644 index 0000000..80604ab --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_fence_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_fence_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_fence_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_gate_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_gate_from_reeds_block.json new file mode 100644 index 0000000..08b1640 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_gate_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_gate_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_gate_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_ladder_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_ladder_from_reeds_block.json new file mode 100644 index 0000000..252f6d6 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_ladder_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_ladder_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_ladder_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_plate_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_plate_from_reeds_block.json new file mode 100644 index 0000000..bc8f984 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_plate_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_plate_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_plate_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_slab_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_slab_from_reeds_block.json new file mode 100644 index 0000000..30407cc --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_slab_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_slab_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_slab_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_stairs_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_stairs_from_reeds_block.json new file mode 100644 index 0000000..c99c176 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_stairs_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_stairs_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_stairs_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_trapdoor_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_trapdoor_from_reeds_block.json new file mode 100644 index 0000000..348c111 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/reeds_trapdoor_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:reeds_trapdoor_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:reeds_trapdoor_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_cincinnasite_from_cincinnasite_forged.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_cincinnasite_from_cincinnasite_forged.json new file mode 100644 index 0000000..1929a7c --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_cincinnasite_from_cincinnasite_forged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_cincinnasite_from_cincinnasite_forged" + ] + }, + "criteria": { + "cincinnasite_forged": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_forged" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_cincinnasite_from_cincinnasite_forged" + } + } + }, + "requirements": [ + [ + "cincinnasite_forged", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json new file mode 100644 index 0000000..dbcc1a4 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite" + ] + }, + "criteria": { + "roof_tile_cincinnasite": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_cincinnasite" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite" + } + } + }, + "requirements": [ + [ + "roof_tile_cincinnasite", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json new file mode 100644 index 0000000..b3bdd67 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite" + ] + }, + "criteria": { + "roof_tile_cincinnasite": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_cincinnasite" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite" + } + } + }, + "requirements": [ + [ + "roof_tile_cincinnasite", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_nether_bricks_from_nether_bricks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_nether_bricks_from_nether_bricks.json new file mode 100644 index 0000000..277930f --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_nether_bricks_from_nether_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_nether_bricks_from_nether_bricks" + ] + }, + "criteria": { + "nether_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:nether_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_nether_bricks_from_nether_bricks" + } + } + }, + "requirements": [ + [ + "nether_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json new file mode 100644 index 0000000..0085e86 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks" + ] + }, + "criteria": { + "roof_tile_nether_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_nether_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks" + } + } + }, + "requirements": [ + [ + "roof_tile_nether_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json new file mode 100644 index 0000000..6b12a4d --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks" + ] + }, + "criteria": { + "roof_tile_nether_bricks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_nether_bricks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks" + } + } + }, + "requirements": [ + [ + "roof_tile_nether_bricks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_reeds_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_reeds_from_reeds_block.json new file mode 100644 index 0000000..98ed5f3 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_reeds_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_reeds_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_reeds_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_reeds_slab_from_roof_tile_reeds.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_reeds_slab_from_roof_tile_reeds.json new file mode 100644 index 0000000..55851c1 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_reeds_slab_from_roof_tile_reeds.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_reeds_slab_from_roof_tile_reeds" + ] + }, + "criteria": { + "roof_tile_reeds": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_reeds" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_reeds_slab_from_roof_tile_reeds" + } + } + }, + "requirements": [ + [ + "roof_tile_reeds", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_reeds_stairs_from_roof_tile_reeds.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_reeds_stairs_from_roof_tile_reeds.json new file mode 100644 index 0000000..4943e05 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_reeds_stairs_from_roof_tile_reeds.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_reeds_stairs_from_roof_tile_reeds" + ] + }, + "criteria": { + "roof_tile_reeds": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_reeds" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_reeds_stairs_from_roof_tile_reeds" + } + } + }, + "requirements": [ + [ + "roof_tile_reeds", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_stalagnate_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..1dda8b2 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_stalagnate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_stalagnate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json new file mode 100644 index 0000000..780113e --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_stalagnate_slab_from_roof_tile_stalagnate" + ] + }, + "criteria": { + "roof_tile_stalagnate": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_stalagnate" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_stalagnate_slab_from_roof_tile_stalagnate" + } + } + }, + "requirements": [ + [ + "roof_tile_stalagnate", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json new file mode 100644 index 0000000..0cfb8e7 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_stalagnate_stairs_from_roof_tile_stalagnate" + ] + }, + "criteria": { + "roof_tile_stalagnate": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_stalagnate" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_stalagnate_stairs_from_roof_tile_stalagnate" + } + } + }, + "requirements": [ + [ + "roof_tile_stalagnate", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_wart_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_wart_from_wart_planks.json new file mode 100644 index 0000000..0391f1d --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_wart_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_wart_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_wart_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_wart_slab_from_roof_tile_wart.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_wart_slab_from_roof_tile_wart.json new file mode 100644 index 0000000..cd85ba2 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_wart_slab_from_roof_tile_wart.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_wart_slab_from_roof_tile_wart" + ] + }, + "criteria": { + "roof_tile_wart": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_wart" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_wart_slab_from_roof_tile_wart" + } + } + }, + "requirements": [ + [ + "roof_tile_wart", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_wart_stairs_from_roof_tile_wart.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_wart_stairs_from_roof_tile_wart.json new file mode 100644 index 0000000..b7bc7c7 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_wart_stairs_from_roof_tile_wart.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_wart_stairs_from_roof_tile_wart" + ] + }, + "criteria": { + "roof_tile_wart": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_wart" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_wart_stairs_from_roof_tile_wart" + } + } + }, + "requirements": [ + [ + "roof_tile_wart", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_willow_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_willow_from_willow_planks.json new file mode 100644 index 0000000..e65de74 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_willow_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_willow_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_willow_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_willow_slab_from_roof_tile_willow.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_willow_slab_from_roof_tile_willow.json new file mode 100644 index 0000000..bc21149 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_willow_slab_from_roof_tile_willow.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_willow_slab_from_roof_tile_willow" + ] + }, + "criteria": { + "roof_tile_willow": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_willow" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_willow_slab_from_roof_tile_willow" + } + } + }, + "requirements": [ + [ + "roof_tile_willow", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_willow_stairs_from_roof_tile_willow.json b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_willow_stairs_from_roof_tile_willow.json new file mode 100644 index 0000000..53f2215 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/roof_tile_willow_stairs_from_roof_tile_willow.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:roof_tile_willow_stairs_from_roof_tile_willow" + ] + }, + "criteria": { + "roof_tile_willow": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:roof_tile_willow" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:roof_tile_willow_stairs_from_roof_tile_willow" + } + } + }, + "requirements": [ + [ + "roof_tile_willow", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_bark_from_rubeus_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_bark_from_rubeus_log.json new file mode 100644 index 0000000..e492cf7 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_bark_from_rubeus_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_bark_from_rubeus_log" + ] + }, + "criteria": { + "rubeus_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_bark_from_rubeus_log" + } + } + }, + "requirements": [ + [ + "rubeus_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_button_from_rubeus_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_button_from_rubeus_planks.json new file mode 100644 index 0000000..e717986 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_button_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_button_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_button_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_door_from_rubeus_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_door_from_rubeus_planks.json new file mode 100644 index 0000000..4215535 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_door_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_door_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_door_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_fence_from_rubeus_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_fence_from_rubeus_planks.json new file mode 100644 index 0000000..07f0d44 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_fence_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_fence_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_fence_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_gate_from_rubeus_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_gate_from_rubeus_planks.json new file mode 100644 index 0000000..053b79c --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_gate_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_gate_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_gate_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_ladder_from_rubeus_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_ladder_from_rubeus_planks.json new file mode 100644 index 0000000..8623511 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_ladder_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_ladder_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_ladder_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_planks_from_rubeus_bark.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_planks_from_rubeus_bark.json new file mode 100644 index 0000000..ea3c9f3 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_planks_from_rubeus_bark.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_planks_from_rubeus_bark" + ] + }, + "criteria": { + "rubeus_bark": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_bark" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_planks_from_rubeus_bark" + } + } + }, + "requirements": [ + [ + "rubeus_bark", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_planks_from_rubeus_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_planks_from_rubeus_log.json new file mode 100644 index 0000000..75cf9f6 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_planks_from_rubeus_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_planks_from_rubeus_log" + ] + }, + "criteria": { + "rubeus_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_planks_from_rubeus_log" + } + } + }, + "requirements": [ + [ + "rubeus_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_planks_from_striped_bark_rubeus.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_planks_from_striped_bark_rubeus.json new file mode 100644 index 0000000..579b7d4 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_planks_from_striped_bark_rubeus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_planks_from_striped_bark_rubeus" + ] + }, + "criteria": { + "striped_bark_rubeus": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_bark_rubeus" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_planks_from_striped_bark_rubeus" + } + } + }, + "requirements": [ + [ + "striped_bark_rubeus", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_planks_from_striped_log_rubeus.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_planks_from_striped_log_rubeus.json new file mode 100644 index 0000000..a692b7b --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_planks_from_striped_log_rubeus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_planks_from_striped_log_rubeus" + ] + }, + "criteria": { + "striped_log_rubeus": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_rubeus" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_planks_from_striped_log_rubeus" + } + } + }, + "requirements": [ + [ + "striped_log_rubeus", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_plate_from_rubeus_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_plate_from_rubeus_planks.json new file mode 100644 index 0000000..7fbc03d --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_plate_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_plate_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_plate_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_slab_from_rubeus_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_slab_from_rubeus_planks.json new file mode 100644 index 0000000..2590298 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_slab_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_slab_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_slab_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_stairs_from_rubeus_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_stairs_from_rubeus_planks.json new file mode 100644 index 0000000..58fc247 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_stairs_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_stairs_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_stairs_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_trapdoor_from_rubeus_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_trapdoor_from_rubeus_planks.json new file mode 100644 index 0000000..ebbc4b6 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/rubeus_trapdoor_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:rubeus_trapdoor_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:rubeus_trapdoor_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/sign_anchor_tree_from_anchor_tree_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..0293b86 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_anchor_tree_from_anchor_tree_planks" + ] + }, + "criteria": { + "anchor_tree_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_anchor_tree_from_anchor_tree_planks" + } + } + }, + "requirements": [ + [ + "anchor_tree_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/sign_mushroom_fir_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..8579f3a --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_mushroom_fir_from_mushroom_fir_planks" + ] + }, + "criteria": { + "mushroom_fir_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_mushroom_fir_from_mushroom_fir_planks" + } + } + }, + "requirements": [ + [ + "mushroom_fir_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/sign_mushroom_from_mushroom_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..293027f --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_mushroom_from_mushroom_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_mushroom_from_mushroom_planks" + ] + }, + "criteria": { + "mushroom_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_mushroom_from_mushroom_planks" + } + } + }, + "requirements": [ + [ + "mushroom_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/sign_nether_sakura_from_nether_sakura_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..defe31d --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_nether_sakura_from_nether_sakura_planks" + ] + }, + "criteria": { + "nether_sakura_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_nether_sakura_from_nether_sakura_planks" + } + } + }, + "requirements": [ + [ + "nether_sakura_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/sign_reed_from_reeds_block.json b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_reed_from_reeds_block.json new file mode 100644 index 0000000..278564f --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_reed_from_reeds_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_reed_from_reeds_block" + ] + }, + "criteria": { + "reeds_block": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_reed_from_reeds_block" + } + } + }, + "requirements": [ + [ + "reeds_block", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/sign_rubeus_from_rubeus_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..92a8cbf --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_rubeus_from_rubeus_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_rubeus_from_rubeus_planks" + ] + }, + "criteria": { + "rubeus_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_rubeus_from_rubeus_planks" + } + } + }, + "requirements": [ + [ + "rubeus_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/sign_stalagnate_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..58bf1a7 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_stalagnate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_stalagnate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/sign_wart_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_wart_from_wart_planks.json new file mode 100644 index 0000000..57c5abe --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_wart_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_wart_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_wart_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/sign_willow_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_willow_from_willow_planks.json new file mode 100644 index 0000000..be25fd0 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/sign_willow_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:sign_willow_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:sign_willow_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_chiseled_from_soul_sandstone_smooth.json b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_chiseled_from_soul_sandstone_smooth.json new file mode 100644 index 0000000..bfddf5d --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_chiseled_from_soul_sandstone_smooth.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_chiseled_from_soul_sandstone_smooth" + ] + }, + "criteria": { + "soul_sandstone_smooth": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_smooth" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_chiseled_from_soul_sandstone_smooth" + } + } + }, + "requirements": [ + [ + "soul_sandstone_smooth", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_cut_from_soul_sandstone.json b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_cut_from_soul_sandstone.json new file mode 100644 index 0000000..8616a24 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_cut_from_soul_sandstone.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_cut_from_soul_sandstone" + ] + }, + "criteria": { + "soul_sandstone": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_cut_from_soul_sandstone" + } + } + }, + "requirements": [ + [ + "soul_sandstone", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_cut_slab_from_soul_sandstone_cut.json b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_cut_slab_from_soul_sandstone_cut.json new file mode 100644 index 0000000..16c5836 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_cut_slab_from_soul_sandstone_cut.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_cut_slab_from_soul_sandstone_cut" + ] + }, + "criteria": { + "soul_sandstone_cut": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_cut" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_cut_slab_from_soul_sandstone_cut" + } + } + }, + "requirements": [ + [ + "soul_sandstone_cut", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json new file mode 100644 index 0000000..955bf4c --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_cut_stairs_from_soul_sandstone_cut" + ] + }, + "criteria": { + "soul_sandstone_cut": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_cut" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_cut_stairs_from_soul_sandstone_cut" + } + } + }, + "requirements": [ + [ + "soul_sandstone_cut", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_slab_from_soul_sandstone.json b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_slab_from_soul_sandstone.json new file mode 100644 index 0000000..55e20fd --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_slab_from_soul_sandstone.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_slab_from_soul_sandstone" + ] + }, + "criteria": { + "soul_sandstone": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_slab_from_soul_sandstone" + } + } + }, + "requirements": [ + [ + "soul_sandstone", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_smooth_from_soul_sandstone_cut.json b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_smooth_from_soul_sandstone_cut.json new file mode 100644 index 0000000..3ad6906 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_smooth_from_soul_sandstone_cut.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_smooth_from_soul_sandstone_cut" + ] + }, + "criteria": { + "soul_sandstone_cut": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_cut" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_smooth_from_soul_sandstone_cut" + } + } + }, + "requirements": [ + [ + "soul_sandstone_cut", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json new file mode 100644 index 0000000..a6bad61 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_smooth_slab_from_soul_sandstone_smooth" + ] + }, + "criteria": { + "soul_sandstone_smooth": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_smooth" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_smooth_slab_from_soul_sandstone_smooth" + } + } + }, + "requirements": [ + [ + "soul_sandstone_smooth", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json new file mode 100644 index 0000000..91c3cd3 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_smooth_stairs_from_soul_sandstone_smooth" + ] + }, + "criteria": { + "soul_sandstone_smooth": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_smooth" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_smooth_stairs_from_soul_sandstone_smooth" + } + } + }, + "requirements": [ + [ + "soul_sandstone_smooth", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_stairs_from_soul_sandstone.json b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_stairs_from_soul_sandstone.json new file mode 100644 index 0000000..8606f8b --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_stairs_from_soul_sandstone.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_stairs_from_soul_sandstone" + ] + }, + "criteria": { + "soul_sandstone": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_stairs_from_soul_sandstone" + } + } + }, + "requirements": [ + [ + "soul_sandstone", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_wall_from_soul_sandstone_cut.json b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_wall_from_soul_sandstone_cut.json new file mode 100644 index 0000000..6b306ff --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/soul_sandstone_wall_from_soul_sandstone_cut.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:soul_sandstone_wall_from_soul_sandstone_cut" + ] + }, + "criteria": { + "soul_sandstone_cut": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:soul_sandstone_cut" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:soul_sandstone_wall_from_soul_sandstone_cut" + } + } + }, + "requirements": [ + [ + "soul_sandstone_cut", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_bark_from_stalagnate_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_bark_from_stalagnate_log.json new file mode 100644 index 0000000..241fdcf --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_bark_from_stalagnate_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_bark_from_stalagnate_log" + ] + }, + "criteria": { + "stalagnate_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_bark_from_stalagnate_log" + } + } + }, + "requirements": [ + [ + "stalagnate_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_ladder_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_ladder_from_stalagnate_planks.json new file mode 100644 index 0000000..91706c7 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_ladder_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_ladder_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_ladder_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_log_from_stalagnate_stem.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_log_from_stalagnate_stem.json new file mode 100644 index 0000000..a73bce2 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_log_from_stalagnate_stem.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_log_from_stalagnate_stem" + ] + }, + "criteria": { + "stalagnate_stem": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_stem" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_log_from_stalagnate_stem" + } + } + }, + "requirements": [ + [ + "stalagnate_stem", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_button_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_button_from_stalagnate_planks.json new file mode 100644 index 0000000..9c6d626 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_button_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_button_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_button_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_door_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_door_from_stalagnate_planks.json new file mode 100644 index 0000000..697dd70 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_door_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_door_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_door_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_fence_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_fence_from_stalagnate_planks.json new file mode 100644 index 0000000..aecf460 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_fence_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_fence_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_fence_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_bark.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_bark.json new file mode 100644 index 0000000..c44a16b --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_bark.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_from_stalagnate_bark" + ] + }, + "criteria": { + "stalagnate_bark": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_bark" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_from_stalagnate_bark" + } + } + }, + "requirements": [ + [ + "stalagnate_bark", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_log.json new file mode 100644 index 0000000..b8fc56c --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_from_stalagnate_log" + ] + }, + "criteria": { + "stalagnate_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_from_stalagnate_log" + } + } + }, + "requirements": [ + [ + "stalagnate_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_stem.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_stem.json new file mode 100644 index 0000000..b6b8a18 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_stalagnate_stem.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_from_stalagnate_stem" + ] + }, + "criteria": { + "stalagnate_stem": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_stem" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_from_stalagnate_stem" + } + } + }, + "requirements": [ + [ + "stalagnate_stem", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_striped_bark_stalagnate.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_striped_bark_stalagnate.json new file mode 100644 index 0000000..b299f0b --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_striped_bark_stalagnate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_from_striped_bark_stalagnate" + ] + }, + "criteria": { + "striped_bark_stalagnate": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_bark_stalagnate" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_from_striped_bark_stalagnate" + } + } + }, + "requirements": [ + [ + "striped_bark_stalagnate", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_striped_log_stalagnate.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_striped_log_stalagnate.json new file mode 100644 index 0000000..a3cc591 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_from_striped_log_stalagnate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_from_striped_log_stalagnate" + ] + }, + "criteria": { + "striped_log_stalagnate": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_stalagnate" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_from_striped_log_stalagnate" + } + } + }, + "requirements": [ + [ + "striped_log_stalagnate", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_gate_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_gate_from_stalagnate_planks.json new file mode 100644 index 0000000..945c597 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_gate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_gate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_gate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_plate_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_plate_from_stalagnate_planks.json new file mode 100644 index 0000000..114ed65 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_plate_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_plate_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_plate_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_slab_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_slab_from_stalagnate_planks.json new file mode 100644 index 0000000..5c8556b --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_slab_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_slab_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_slab_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_stairs_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_stairs_from_stalagnate_planks.json new file mode 100644 index 0000000..7adab52 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_stairs_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_stairs_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_stairs_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_trapdoor_from_stalagnate_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_trapdoor_from_stalagnate_planks.json new file mode 100644 index 0000000..9fd8bdd --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/stalagnate_planks_trapdoor_from_stalagnate_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:stalagnate_planks_trapdoor_from_stalagnate_planks" + ] + }, + "criteria": { + "stalagnate_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:stalagnate_planks_trapdoor_from_stalagnate_planks" + } + } + }, + "requirements": [ + [ + "stalagnate_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_acacia_from_acacia_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_acacia_from_acacia_slab.json new file mode 100644 index 0000000..801fd44 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_acacia_from_acacia_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_acacia_from_acacia_slab" + ] + }, + "criteria": { + "acacia_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:acacia_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_acacia_from_acacia_slab" + } + } + }, + "requirements": [ + [ + "acacia_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_anchor_tree_from_anchor_tree_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_anchor_tree_from_anchor_tree_slab.json new file mode 100644 index 0000000..be389e2 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_anchor_tree_from_anchor_tree_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_anchor_tree_from_anchor_tree_slab" + ] + }, + "criteria": { + "anchor_tree_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:anchor_tree_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_anchor_tree_from_anchor_tree_slab" + } + } + }, + "requirements": [ + [ + "anchor_tree_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_birch_from_birch_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_birch_from_birch_slab.json new file mode 100644 index 0000000..bd3fc50 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_birch_from_birch_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_birch_from_birch_slab" + ] + }, + "criteria": { + "birch_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:birch_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_birch_from_birch_slab" + } + } + }, + "requirements": [ + [ + "birch_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_cincinnasite_from_cincinnasite_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_cincinnasite_from_cincinnasite_slab.json new file mode 100644 index 0000000..38c70b9 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_cincinnasite_from_cincinnasite_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_cincinnasite_from_cincinnasite_slab" + ] + }, + "criteria": { + "cincinnasite_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:cincinnasite_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_cincinnasite_from_cincinnasite_slab" + } + } + }, + "requirements": [ + [ + "cincinnasite_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_crimson_from_crimson_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_crimson_from_crimson_slab.json new file mode 100644 index 0000000..17cb67b --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_crimson_from_crimson_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_crimson_from_crimson_slab" + ] + }, + "criteria": { + "crimson_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:crimson_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_crimson_from_crimson_slab" + } + } + }, + "requirements": [ + [ + "crimson_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_dark_oak_from_dark_oak_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_dark_oak_from_dark_oak_slab.json new file mode 100644 index 0000000..0ad138e --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_dark_oak_from_dark_oak_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_dark_oak_from_dark_oak_slab" + ] + }, + "criteria": { + "dark_oak_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:dark_oak_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_dark_oak_from_dark_oak_slab" + } + } + }, + "requirements": [ + [ + "dark_oak_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_jungle_from_jungle_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_jungle_from_jungle_slab.json new file mode 100644 index 0000000..f4cf4d4 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_jungle_from_jungle_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_jungle_from_jungle_slab" + ] + }, + "criteria": { + "jungle_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:jungle_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_jungle_from_jungle_slab" + } + } + }, + "requirements": [ + [ + "jungle_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_mushroom_fir_from_mushroom_fir_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_mushroom_fir_from_mushroom_fir_slab.json new file mode 100644 index 0000000..e0665c2 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_mushroom_fir_from_mushroom_fir_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_mushroom_fir_from_mushroom_fir_slab" + ] + }, + "criteria": { + "mushroom_fir_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_fir_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_mushroom_fir_from_mushroom_fir_slab" + } + } + }, + "requirements": [ + [ + "mushroom_fir_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_mushroom_from_mushroom_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_mushroom_from_mushroom_slab.json new file mode 100644 index 0000000..76a3574 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_mushroom_from_mushroom_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_mushroom_from_mushroom_slab" + ] + }, + "criteria": { + "mushroom_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:mushroom_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_mushroom_from_mushroom_slab" + } + } + }, + "requirements": [ + [ + "mushroom_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_nether_sakura_from_nether_sakura_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_nether_sakura_from_nether_sakura_slab.json new file mode 100644 index 0000000..3824007 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_nether_sakura_from_nether_sakura_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_nether_sakura_from_nether_sakura_slab" + ] + }, + "criteria": { + "nether_sakura_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:nether_sakura_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_nether_sakura_from_nether_sakura_slab" + } + } + }, + "requirements": [ + [ + "nether_sakura_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_oak_from_oak_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_oak_from_oak_slab.json new file mode 100644 index 0000000..b5f9dc6 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_oak_from_oak_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_oak_from_oak_slab" + ] + }, + "criteria": { + "oak_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:oak_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_oak_from_oak_slab" + } + } + }, + "requirements": [ + [ + "oak_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_reeds_from_reeds_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_reeds_from_reeds_slab.json new file mode 100644 index 0000000..9c4005a --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_reeds_from_reeds_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_reeds_from_reeds_slab" + ] + }, + "criteria": { + "reeds_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:reeds_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_reeds_from_reeds_slab" + } + } + }, + "requirements": [ + [ + "reeds_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_rubeus_from_rubeus_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_rubeus_from_rubeus_slab.json new file mode 100644 index 0000000..dcd16f4 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_rubeus_from_rubeus_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_rubeus_from_rubeus_slab" + ] + }, + "criteria": { + "rubeus_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:rubeus_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_rubeus_from_rubeus_slab" + } + } + }, + "requirements": [ + [ + "rubeus_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_spruce_from_spruce_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_spruce_from_spruce_slab.json new file mode 100644 index 0000000..ceb9af2 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_spruce_from_spruce_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_spruce_from_spruce_slab" + ] + }, + "criteria": { + "spruce_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:spruce_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_spruce_from_spruce_slab" + } + } + }, + "requirements": [ + [ + "spruce_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_stalagnate_from_stalagnate_planks_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_stalagnate_from_stalagnate_planks_slab.json new file mode 100644 index 0000000..3bce566 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_stalagnate_from_stalagnate_planks_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_stalagnate_from_stalagnate_planks_slab" + ] + }, + "criteria": { + "stalagnate_planks_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:stalagnate_planks_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_stalagnate_from_stalagnate_planks_slab" + } + } + }, + "requirements": [ + [ + "stalagnate_planks_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_warped_from_warped_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_warped_from_warped_slab.json new file mode 100644 index 0000000..ab1ac6e --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_warped_from_warped_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_warped_from_warped_slab" + ] + }, + "criteria": { + "warped_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_warped_from_warped_slab" + } + } + }, + "requirements": [ + [ + "warped_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_wart_from_wart_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_wart_from_wart_slab.json new file mode 100644 index 0000000..e75e2e8 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_wart_from_wart_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_wart_from_wart_slab" + ] + }, + "criteria": { + "wart_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_wart_from_wart_slab" + } + } + }, + "requirements": [ + [ + "wart_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_willow_from_willow_slab.json b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_willow_from_willow_slab.json new file mode 100644 index 0000000..89f6665 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/taburet_willow_from_willow_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:taburet_willow_from_willow_slab" + ] + }, + "criteria": { + "willow_slab": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_slab" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:taburet_willow_from_willow_slab" + } + } + }, + "requirements": [ + [ + "willow_slab", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/warped_ladder_from_warped_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/warped_ladder_from_warped_planks.json new file mode 100644 index 0000000..bf0b192 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/warped_ladder_from_warped_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:warped_ladder_from_warped_planks" + ] + }, + "criteria": { + "warped_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:warped_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:warped_ladder_from_warped_planks" + } + } + }, + "requirements": [ + [ + "warped_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_bark_from_wart_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_bark_from_wart_log.json new file mode 100644 index 0000000..02e019e --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_bark_from_wart_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_bark_from_wart_log" + ] + }, + "criteria": { + "wart_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_bark_from_wart_log" + } + } + }, + "requirements": [ + [ + "wart_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_button_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_button_from_wart_planks.json new file mode 100644 index 0000000..08a2a9c --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_button_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_button_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_button_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_door_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_door_from_wart_planks.json new file mode 100644 index 0000000..6eed9e2 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_door_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_door_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_door_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_fence_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_fence_from_wart_planks.json new file mode 100644 index 0000000..1b8c114 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_fence_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_fence_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_fence_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_gate_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_gate_from_wart_planks.json new file mode 100644 index 0000000..bb52f74 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_gate_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_gate_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_gate_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_ladder_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_ladder_from_wart_planks.json new file mode 100644 index 0000000..6b74851 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_ladder_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_ladder_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_ladder_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_planks_from_striped_bark_wart.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_planks_from_striped_bark_wart.json new file mode 100644 index 0000000..86df51a --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_planks_from_striped_bark_wart.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_planks_from_striped_bark_wart" + ] + }, + "criteria": { + "striped_bark_wart": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_bark_wart" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_planks_from_striped_bark_wart" + } + } + }, + "requirements": [ + [ + "striped_bark_wart", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_planks_from_striped_log_wart.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_planks_from_striped_log_wart.json new file mode 100644 index 0000000..5f69857 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_planks_from_striped_log_wart.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_planks_from_striped_log_wart" + ] + }, + "criteria": { + "striped_log_wart": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_wart" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_planks_from_striped_log_wart" + } + } + }, + "requirements": [ + [ + "striped_log_wart", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_planks_from_wart_bark.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_planks_from_wart_bark.json new file mode 100644 index 0000000..d035427 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_planks_from_wart_bark.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_planks_from_wart_bark" + ] + }, + "criteria": { + "wart_bark": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_bark" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_planks_from_wart_bark" + } + } + }, + "requirements": [ + [ + "wart_bark", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_planks_from_wart_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_planks_from_wart_log.json new file mode 100644 index 0000000..916bc74 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_planks_from_wart_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_planks_from_wart_log" + ] + }, + "criteria": { + "wart_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_planks_from_wart_log" + } + } + }, + "requirements": [ + [ + "wart_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_plate_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_plate_from_wart_planks.json new file mode 100644 index 0000000..a1725dd --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_plate_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_plate_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_plate_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_slab_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_slab_from_wart_planks.json new file mode 100644 index 0000000..8fd4365 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_slab_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_slab_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_slab_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_stairs_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_stairs_from_wart_planks.json new file mode 100644 index 0000000..cefe131 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_stairs_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_stairs_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_stairs_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/wart_trapdoor_from_wart_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_trapdoor_from_wart_planks.json new file mode 100644 index 0000000..c9ce761 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/wart_trapdoor_from_wart_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:wart_trapdoor_from_wart_planks" + ] + }, + "criteria": { + "wart_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:wart_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:wart_trapdoor_from_wart_planks" + } + } + }, + "requirements": [ + [ + "wart_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_bark_from_willow_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_bark_from_willow_log.json new file mode 100644 index 0000000..827a2c5 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_bark_from_willow_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_bark_from_willow_log" + ] + }, + "criteria": { + "willow_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_bark_from_willow_log" + } + } + }, + "requirements": [ + [ + "willow_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_button_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_button_from_willow_planks.json new file mode 100644 index 0000000..dc7e867 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_button_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_button_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_button_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_door_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_door_from_willow_planks.json new file mode 100644 index 0000000..5ce543c --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_door_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_door_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_door_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_fence_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_fence_from_willow_planks.json new file mode 100644 index 0000000..519f1b7 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_fence_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_fence_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_fence_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_gate_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_gate_from_willow_planks.json new file mode 100644 index 0000000..77da375 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_gate_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_gate_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_gate_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_ladder_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_ladder_from_willow_planks.json new file mode 100644 index 0000000..e6349b6 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_ladder_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_ladder_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_ladder_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_planks_from_striped_bark_willow.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_planks_from_striped_bark_willow.json new file mode 100644 index 0000000..771ef81 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_planks_from_striped_bark_willow.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_planks_from_striped_bark_willow" + ] + }, + "criteria": { + "striped_bark_willow": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_bark_willow" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_planks_from_striped_bark_willow" + } + } + }, + "requirements": [ + [ + "striped_bark_willow", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_planks_from_striped_log_willow.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_planks_from_striped_log_willow.json new file mode 100644 index 0000000..36ee260 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_planks_from_striped_log_willow.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_planks_from_striped_log_willow" + ] + }, + "criteria": { + "striped_log_willow": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:striped_log_willow" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_planks_from_striped_log_willow" + } + } + }, + "requirements": [ + [ + "striped_log_willow", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_planks_from_willow_bark.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_planks_from_willow_bark.json new file mode 100644 index 0000000..746188f --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_planks_from_willow_bark.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_planks_from_willow_bark" + ] + }, + "criteria": { + "willow_bark": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_bark" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_planks_from_willow_bark" + } + } + }, + "requirements": [ + [ + "willow_bark", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_planks_from_willow_log.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_planks_from_willow_log.json new file mode 100644 index 0000000..8c40c4a --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_planks_from_willow_log.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_planks_from_willow_log" + ] + }, + "criteria": { + "willow_log": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_log" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_planks_from_willow_log" + } + } + }, + "requirements": [ + [ + "willow_log", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_plate_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_plate_from_willow_planks.json new file mode 100644 index 0000000..bc9ba23 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_plate_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_plate_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_plate_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_slab_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_slab_from_willow_planks.json new file mode 100644 index 0000000..e078eae --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_slab_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_slab_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_slab_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_stairs_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_stairs_from_willow_planks.json new file mode 100644 index 0000000..4de0515 --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_stairs_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_stairs_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_stairs_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/advancements/recipes/betternether/willow_trapdoor_from_willow_planks.json b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_trapdoor_from_willow_planks.json new file mode 100644 index 0000000..e5ecfee --- /dev/null +++ b/src/main/resources/data/betternether/advancements/recipes/betternether/willow_trapdoor_from_willow_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "minecraft:willow_trapdoor_from_willow_planks" + ] + }, + "criteria": { + "willow_planks": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "betternether:willow_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "minecraft:willow_trapdoor_from_willow_planks" + } + } + }, + "requirements": [ + [ + "willow_planks", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/black_apple.json b/src/main/resources/data/betternether/loot_tables/blocks/black_apple.json new file mode 100644 index 0000000..e1a1861 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/black_apple.json @@ -0,0 +1,42 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:black_apple" + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:black_apple", + "properties": { + "age": "3" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:black_apple_seed" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/bone_mushroom.json b/src/main/resources/data/betternether/loot_tables/blocks/bone_mushroom.json new file mode 100644 index 0000000..3fa013b --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/bone_mushroom.json @@ -0,0 +1,82 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "minecraft:bone_meal", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 3 + } + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:bone_mushroom", + "properties": { + "age": "2" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:bone_mushroom", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 2 + } + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:bone_mushroom", + "properties": { + "age": "2" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:bone_mushroom" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/brown_large_mushroom.json b/src/main/resources/data/betternether/loot_tables/blocks/brown_large_mushroom.json new file mode 100644 index 0000000..84dd3ca --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/brown_large_mushroom.json @@ -0,0 +1,65 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "betternether:mushroom_stem", + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:brown_large_mushroom", + "properties": { + "shape": "middle" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "type": "minecraft:item", + "name": "betternether:mushroom_stem", + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:brown_large_mushroom", + "properties": { + "shape": "bottom" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "type": "minecraft:item", + "name": "minecraft:brown_mushroom", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 3 + } + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/cincinnasite_forge.json b/src/main/resources/data/betternether/loot_tables/blocks/cincinnasite_forge.json new file mode 100644 index 0000000..2086ac9 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/cincinnasite_forge.json @@ -0,0 +1,25 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:copy_name", + "source": "block_entity" + } + ], + "name": "betternether:cincinnasite_forge" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/eyeball.json b/src/main/resources/data/betternether/loot_tables/blocks/eyeball.json new file mode 100644 index 0000000..37bd155 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/eyeball.json @@ -0,0 +1,53 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "minecraft:slime_ball", + "functions": [ + { + "function": "set_count", + "count": { + "min": 2, + "max": 4 + } + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:eye_seed", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 2 + } + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/eyeball_small.json b/src/main/resources/data/betternether/loot_tables/blocks/eyeball_small.json new file mode 100644 index 0000000..f475926 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/eyeball_small.json @@ -0,0 +1,44 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "minecraft:slime_ball", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 2 + } + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:eye_seed" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/feather_fern.json b/src/main/resources/data/betternether/loot_tables/blocks/feather_fern.json new file mode 100644 index 0000000..838b907 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/feather_fern.json @@ -0,0 +1,82 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "minecraft:feather", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 4 + } + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:feather_fern", + "properties": { + "age": "3" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:feather_fern", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 2 + } + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:feather_fern", + "properties": { + "age": "3" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:feather_fern" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/giant_mold.json b/src/main/resources/data/betternether/loot_tables/blocks/giant_mold.json new file mode 100644 index 0000000..7e43740 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/giant_mold.json @@ -0,0 +1,74 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "betternether:giant_mold_sapling", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 3 + } + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:giant_mold", + "properties": { + "shape": "top" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "type": "minecraft:item", + "name": "betternether:mushroom_stem" + } + ] + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:string", + "functions": [ + { + "function": "set_count", + "count": { + "min": 2, + "max": 8 + } + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:giant_mold", + "properties": { + "shape": "top" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/ink_bush.json b/src/main/resources/data/betternether/loot_tables/blocks/ink_bush.json new file mode 100644 index 0000000..19a76fa --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/ink_bush.json @@ -0,0 +1,51 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:ink_bush_seed", + "functions": [ + { + "function": "set_count", + "count": { + "min": 2, + "max": 4 + } + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:ink_bush", + "properties": { + "age": "3" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:ink_bush_seed" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/magma_flower.json b/src/main/resources/data/betternether/loot_tables/blocks/magma_flower.json new file mode 100644 index 0000000..93f5b9e --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/magma_flower.json @@ -0,0 +1,82 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "minecraft:magma_cream", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 4 + } + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:magma_flower", + "properties": { + "age": "3" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:magma_flower", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 2 + } + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:magma_flower", + "properties": { + "age": "3" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:magma_flower" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/mushroom_fir.json b/src/main/resources/data/betternether/loot_tables/blocks/mushroom_fir.json new file mode 100644 index 0000000..eabc8a0 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/mushroom_fir.json @@ -0,0 +1,76 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "betternether:mushroom_fir_stem", + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:mushroom_fir", + "properties": { + "shape": "bottom" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "type": "minecraft:item", + "name": "betternether:mushroom_fir_stem", + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:mushroom_fir", + "properties": { + "shape": "middle" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "type": "minecraft:item", + "name": "betternether:mushroom_fir_stem", + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:mushroom_fir", + "properties": { + "shape": "top" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "type": "minecraft:item", + "name": "betternether:mushroom_fir_sapling", + "functions": [ + { + "function": "set_count", + "count": { + "min": 0, + "max": 2 + } + } + ] + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/nether_brewing_stand.json b/src/main/resources/data/betternether/loot_tables/blocks/nether_brewing_stand.json new file mode 100644 index 0000000..d297d4c --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/nether_brewing_stand.json @@ -0,0 +1,25 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:copy_name", + "source": "block_entity" + } + ], + "name": "betternether:nether_brewing_stand" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/orange_mushroom.json b/src/main/resources/data/betternether/loot_tables/blocks/orange_mushroom.json new file mode 100644 index 0000000..ba2baf8 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/orange_mushroom.json @@ -0,0 +1,113 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "minecraft:orange_dye", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 3 + } + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:orange_mushroom", + "properties": { + "age": "3" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "minecraft:purple_dye", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 3 + } + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:orange_mushroom", + "properties": { + "age": "3" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:orange_mushroom", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 2 + } + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:orange_mushroom", + "properties": { + "age": "3" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:orange_mushroom" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/pig_statue_respawner.json b/src/main/resources/data/betternether/loot_tables/blocks/pig_statue_respawner.json new file mode 100644 index 0000000..23ff0f3 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/pig_statue_respawner.json @@ -0,0 +1,27 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:pig_statue_respawner" + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:pig_statue_respawner", + "properties": { + "top": "false" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_black.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_black.json new file mode 100644 index 0000000..941bf14 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_black.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_black" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_blue.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_blue.json new file mode 100644 index 0000000..10efc8a --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_blue.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_blue" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_brown.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_brown.json new file mode 100644 index 0000000..09c720e --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_brown.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_brown" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_cyan.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_cyan.json new file mode 100644 index 0000000..4c52846 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_cyan.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_cyan" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_gray.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_gray.json new file mode 100644 index 0000000..97de36f --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_gray.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_gray" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_green.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_green.json new file mode 100644 index 0000000..abea551 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_green.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_green" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_light_blue.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_light_blue.json new file mode 100644 index 0000000..f98a479 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_light_blue.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_light_blue" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_light_gray.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_light_gray.json new file mode 100644 index 0000000..a6e3f3a --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_light_gray.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_light_gray" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_lime.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_lime.json new file mode 100644 index 0000000..0bf74bf --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_lime.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_lime" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_magenta.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_magenta.json new file mode 100644 index 0000000..6f51864 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_magenta.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_magenta" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_orange.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_orange.json new file mode 100644 index 0000000..923dc02 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_orange.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_orange" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_pink.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_pink.json new file mode 100644 index 0000000..8e85558 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_pink.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_pink" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_purple.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_purple.json new file mode 100644 index 0000000..597cf5b --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_purple.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_purple" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_red.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_red.json new file mode 100644 index 0000000..3fcabad --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_red.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_red" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_white.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_white.json new file mode 100644 index 0000000..9ccf5ef --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_white.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_white" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_yellow.json b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_yellow.json new file mode 100644 index 0000000..b3ab67f --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/quartz_glass_pane_yellow.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "betternether:quartz_glass_pane_yellow" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] +} diff --git a/src/main/resources/data/betternether/loot_tables/blocks/red_large_mushroom.json b/src/main/resources/data/betternether/loot_tables/blocks/red_large_mushroom.json new file mode 100644 index 0000000..77f9562 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/red_large_mushroom.json @@ -0,0 +1,44 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "minecraft:red_mushroom", + "functions": [ + { + "function": "set_count", + "count": { + "min": 2, + "max": 4 + } + } + ], + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "betternether:red_large_mushroom", + "properties": { + "shape": "top" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "type": "minecraft:item", + "name": "betternether:mushroom_stem" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/rubeus_leaves.json b/src/main/resources/data/betternether/loot_tables/blocks/rubeus_leaves.json new file mode 100644 index 0000000..92b2ea1 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/rubeus_leaves.json @@ -0,0 +1,128 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ], + "name": "betternether:rubeus_leaves" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + }, + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.05, + 0.0625, + 0.083333336, + 0.1 + ] + } + ], + "name": "betternether:rubeus_sapling" + } + ] + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.02, + 0.022222223, + 0.025, + 0.033333335, + 0.1 + ] + } + ], + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 1.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:stick" + } + ], + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "item": "minecraft:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/stalagnate.json b/src/main/resources/data/betternether/loot_tables/blocks/stalagnate.json new file mode 100644 index 0000000..860460e --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/stalagnate.json @@ -0,0 +1,41 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:stalagnate_stem" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:stalagnate_seed", + "conditions": [ + { + "condition": "random_chance", + "chance": 0.25 + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/veined_sand.json b/src/main/resources/data/betternether/loot_tables/blocks/veined_sand.json new file mode 100644 index 0000000..822b26a --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/veined_sand.json @@ -0,0 +1,20 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "minecraft:soul_sand" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/wart_roots.json b/src/main/resources/data/betternether/loot_tables/blocks/wart_roots.json new file mode 100644 index 0000000..0262f26 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/wart_roots.json @@ -0,0 +1,20 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:wart_log" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/willow_leaves.json b/src/main/resources/data/betternether/loot_tables/blocks/willow_leaves.json new file mode 100644 index 0000000..667baab --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/willow_leaves.json @@ -0,0 +1,119 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ], + "name": "betternether:willow_leaves" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "random_chance", + "chance": 0.1 + } + ], + "name": "betternether:willow_sapling" + } + ] + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.02, + 0.022222223, + 0.025, + 0.033333335, + 0.1 + ] + } + ], + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 1, + "max": 2, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:stick" + } + ], + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "item": "minecraft:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/blocks/willow_trunk.json b/src/main/resources/data/betternether/loot_tables/blocks/willow_trunk.json new file mode 100644 index 0000000..e1c49eb --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/blocks/willow_trunk.json @@ -0,0 +1,20 @@ +{ + "type": "block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "weight": 1, + "name": "betternether:willow_log" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/chests/ghast_hive.json b/src/main/resources/data/betternether/loot_tables/chests/ghast_hive.json new file mode 100644 index 0000000..84f453b --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/chests/ghast_hive.json @@ -0,0 +1,149 @@ +{ + "type": "minecraft:chest", + "pools": [ + { + "rolls": 10, + "entries": [ + { + "type": "item", + "weight": 40, + "name": "minecraft:diamond", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 2 + } + } + ] + }, + { + "type": "item", + "weight": 10, + "name": "minecraft:skeleton_skull", + "functions": [ + { + "function": "set_count", + "count": 1 + } + ] + }, + { + "type": "item", + "weight": 5, + "name": "minecraft:wither_skeleton_skull", + "functions": [ + { + "function": "set_count", + "count": 1 + } + ] + }, + { + "type": "item", + "weight": 300, + "name": "minecraft:brown_mushroom", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 3 + } + } + ] + }, + { + "type": "item", + "weight": 300, + "name": "minecraft:red_mushroom", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 3 + } + } + ] + }, + { + "type": "item", + "weight": 300, + "name": "minecraft:bone", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 3 + } + } + ] + }, + { + "type": "item", + "weight": 200, + "name": "minecraft:quartz", + "functions": [ + { + "function": "set_count", + "count": { + "min": 2, + "max": 4 + } + } + ] + }, + { + "type": "item", + "weight": 40, + "name": "minecraft:ghast_tear", + "functions": [ + { + "function": "set_count", + "count": 1 + } + ] + }, + { + "type": "item", + "weight": 100, + "name": "minecraft:gold_ingot", + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 3 + } + } + ] + }, + { + "type": "item", + "weight": 50, + "name": "minecraft:golden_apple", + "functions": [ + { + "function": "set_count", + "count": 1 + } + ] + }, + { + "type": "item", + "weight": 100, + "name": "betternether:black_apple", + "functions": [ + { + "function": "set_count", + "count": 1 + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/entities/firefly.json b/src/main/resources/data/betternether/loot_tables/entities/firefly.json new file mode 100644 index 0000000..040d959 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/entities/firefly.json @@ -0,0 +1,31 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 0.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:looting_enchant", + "count": { + "min": 0.0, + "max": 1.0 + } + } + ], + "name": "minecraft:glowstone_dust" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/entities/flying_pig.json b/src/main/resources/data/betternether/loot_tables/entities/flying_pig.json new file mode 100644 index 0000000..7d43625 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/entities/flying_pig.json @@ -0,0 +1,31 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 0.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:looting_enchant", + "count": { + "min": 0.0, + "max": 1.0 + } + } + ], + "name": "minecraft:porkchop" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/entities/jungle_skeleton.json b/src/main/resources/data/betternether/loot_tables/entities/jungle_skeleton.json new file mode 100644 index 0000000..e1ccc2f --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/entities/jungle_skeleton.json @@ -0,0 +1,57 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 0.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:looting_enchant", + "count": { + "min": 0.0, + "max": 1.0 + } + } + ], + "name": "minecraft:arrow" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 0.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:looting_enchant", + "count": { + "min": 0.0, + "max": 1.0 + } + } + ], + "name": "minecraft:bone" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/entities/naga.json b/src/main/resources/data/betternether/loot_tables/entities/naga.json new file mode 100644 index 0000000..03ccd90 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/entities/naga.json @@ -0,0 +1,76 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": -1.0, + "max": 1.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:looting_enchant", + "count": { + "min": 0.0, + "max": 1.0 + } + } + ], + "name": "minecraft:coal" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 0.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:looting_enchant", + "count": { + "min": 0.0, + "max": 1.0 + } + } + ], + "name": "minecraft:bone" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:wither_skeleton_skull" + } + ], + "conditions": [ + { + "condition": "minecraft:killed_by_player" + }, + { + "condition": "minecraft:random_chance_with_looting", + "chance": 0.025, + "looting_multiplier": 0.01 + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/loot_tables/entities/skull.json b/src/main/resources/data/betternether/loot_tables/entities/skull.json new file mode 100644 index 0000000..03ccd90 --- /dev/null +++ b/src/main/resources/data/betternether/loot_tables/entities/skull.json @@ -0,0 +1,76 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": -1.0, + "max": 1.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:looting_enchant", + "count": { + "min": 0.0, + "max": 1.0 + } + } + ], + "name": "minecraft:coal" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 0.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:looting_enchant", + "count": { + "min": 0.0, + "max": 1.0 + } + } + ], + "name": "minecraft:bone" + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:wither_skeleton_skull" + } + ], + "conditions": [ + { + "condition": "minecraft:killed_by_player" + }, + { + "condition": "minecraft:random_chance_with_looting", + "chance": 0.025, + "looting_multiplier": 0.01 + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/patchouli_books/betternether_book/book.json b/src/main/resources/data/betternether/patchouli_books/betternether_book/book.json new file mode 100644 index 0000000..c0296eb --- /dev/null +++ b/src/main/resources/data/betternether/patchouli_books/betternether_book/book.json @@ -0,0 +1,6 @@ +{ + "name": "BOOK NAME", + "landing_text": "LANDING TEXT", + "version": 1, + "creative_tab": "betternether" +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/activator_rail.json b/src/main/resources/data/betternether/recipes/activator_rail.json new file mode 100644 index 0000000..b2aa788 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/activator_rail.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "XSX", + "X#X", + "XSX" + ], + "key": { + "#": { + "item": "minecraft:redstone_torch" + }, + "S": { + "item": "minecraft:stick" + }, + "X": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "minecraft:activator_rail", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/agave_medicine.json b/src/main/resources/data/betternether/recipes/agave_medicine.json new file mode 100644 index 0000000..1ca1ca4 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/agave_medicine.json @@ -0,0 +1 @@ +{ "type": "minecraft:crafting_shapeless", "ingredients": [ { "item": "betternether:stalagnate_bowl" }, { "item": "betternether:agave_leaf" }, { "item": "betternether:agave_leaf" }, { "item": "betternether:agave_leaf" } ], "result": { "item": "betternether:agave_medicine" } } \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_bark_from_anchor_tree_log.json b/src/main/resources/data/betternether/recipes/anchor_tree_bark_from_anchor_tree_log.json new file mode 100644 index 0000000..070a183 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_bark_from_anchor_tree_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_log" + } + }, + "result": { + "item": "betternether:anchor_tree_bark", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_button_from_anchor_tree_planks.json b/src/main/resources/data/betternether/recipes/anchor_tree_button_from_anchor_tree_planks.json new file mode 100644 index 0000000..7f8d0a5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_button_from_anchor_tree_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:anchor_tree_planks" + } + ], + "result": { + "item": "betternether:anchor_tree_button" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_door_from_anchor_tree_planks.json b/src/main/resources/data/betternether/recipes/anchor_tree_door_from_anchor_tree_planks.json new file mode 100644 index 0000000..fe416b7 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_door_from_anchor_tree_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:anchor_tree_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_fence_from_anchor_tree_planks.json b/src/main/resources/data/betternether/recipes/anchor_tree_fence_from_anchor_tree_planks.json new file mode 100644 index 0000000..6cd026b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_fence_from_anchor_tree_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:anchor_tree_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_gate_from_anchor_tree_planks.json b/src/main/resources/data/betternether/recipes/anchor_tree_gate_from_anchor_tree_planks.json new file mode 100644 index 0000000..236d4f4 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_gate_from_anchor_tree_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:anchor_tree_gate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_ladder_from_anchor_tree_planks.json b/src/main/resources/data/betternether/recipes/anchor_tree_ladder_from_anchor_tree_planks.json new file mode 100644 index 0000000..c8bf576 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_ladder_from_anchor_tree_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:anchor_tree_ladder" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_planks_from_anchor_tree_bark.json b/src/main/resources/data/betternether/recipes/anchor_tree_planks_from_anchor_tree_bark.json new file mode 100644 index 0000000..c3d7562 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_planks_from_anchor_tree_bark.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:anchor_tree_bark" + } + ], + "result": { + "item": "betternether:anchor_tree_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_planks_from_anchor_tree_log.json b/src/main/resources/data/betternether/recipes/anchor_tree_planks_from_anchor_tree_log.json new file mode 100644 index 0000000..36ba5e4 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_planks_from_anchor_tree_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:anchor_tree_log" + } + ], + "result": { + "item": "betternether:anchor_tree_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_planks_from_striped_bark_anchor_tree.json b/src/main/resources/data/betternether/recipes/anchor_tree_planks_from_striped_bark_anchor_tree.json new file mode 100644 index 0000000..f26ba77 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_planks_from_striped_bark_anchor_tree.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_bark_anchor_tree" + } + ], + "result": { + "item": "betternether:anchor_tree_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_planks_from_striped_log_anchor_tree.json b/src/main/resources/data/betternether/recipes/anchor_tree_planks_from_striped_log_anchor_tree.json new file mode 100644 index 0000000..24a76d7 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_planks_from_striped_log_anchor_tree.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_anchor_tree" + } + ], + "result": { + "item": "betternether:anchor_tree_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_plate_from_anchor_tree_planks.json b/src/main/resources/data/betternether/recipes/anchor_tree_plate_from_anchor_tree_planks.json new file mode 100644 index 0000000..991f886 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_plate_from_anchor_tree_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:anchor_tree_plate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_slab_from_anchor_tree_planks.json b/src/main/resources/data/betternether/recipes/anchor_tree_slab_from_anchor_tree_planks.json new file mode 100644 index 0000000..fee7de7 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_slab_from_anchor_tree_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:anchor_tree_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_stairs_from_anchor_tree_planks.json b/src/main/resources/data/betternether/recipes/anchor_tree_stairs_from_anchor_tree_planks.json new file mode 100644 index 0000000..8125159 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_stairs_from_anchor_tree_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:anchor_tree_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/anchor_tree_trapdoor_from_anchor_tree_planks.json b/src/main/resources/data/betternether/recipes/anchor_tree_trapdoor_from_anchor_tree_planks.json new file mode 100644 index 0000000..1cf033e --- /dev/null +++ b/src/main/resources/data/betternether/recipes/anchor_tree_trapdoor_from_anchor_tree_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:anchor_tree_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_acacia_from_acacia_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_acacia_from_acacia_slab.json new file mode 100644 index 0000000..5121361 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_acacia_from_acacia_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:acacia_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_acacia" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_anchor_tree_from_anchor_tree_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_anchor_tree_from_anchor_tree_slab.json new file mode 100644 index 0000000..ec92a29 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_anchor_tree_from_anchor_tree_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_anchor_tree" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_birch_from_birch_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_birch_from_birch_slab.json new file mode 100644 index 0000000..8ecce7d --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_birch_from_birch_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:birch_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_birch" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_cincinnasite_from_cincinnasite_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_cincinnasite_from_cincinnasite_slab.json new file mode 100644 index 0000000..b68d79a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_cincinnasite_from_cincinnasite_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_cincinnasite" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_crimson_from_crimson_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_crimson_from_crimson_slab.json new file mode 100644 index 0000000..43d238b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_crimson_from_crimson_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:crimson_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_crimson" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_dark_oak_from_dark_oak_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_dark_oak_from_dark_oak_slab.json new file mode 100644 index 0000000..02c6cd0 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_dark_oak_from_dark_oak_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:dark_oak_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_dark_oak" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_jungle_from_jungle_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_jungle_from_jungle_slab.json new file mode 100644 index 0000000..9163dfe --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_jungle_from_jungle_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:jungle_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_jungle" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_mushroom_fir_from_mushroom_fir_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_mushroom_fir_from_mushroom_fir_slab.json new file mode 100644 index 0000000..3f6d67a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_mushroom_fir_from_mushroom_fir_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_mushroom_from_mushroom_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_mushroom_from_mushroom_slab.json new file mode 100644 index 0000000..83c323d --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_mushroom_from_mushroom_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:mushroom_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_mushroom" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_nether_sakura_from_nether_sakura_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_nether_sakura_from_nether_sakura_slab.json new file mode 100644 index 0000000..65b7472 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_nether_sakura_from_nether_sakura_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_nether_sakura" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_oak_from_oak_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_oak_from_oak_slab.json new file mode 100644 index 0000000..4934895 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_oak_from_oak_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:oak_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_oak" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_reeds_from_reeds_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_reeds_from_reeds_slab.json new file mode 100644 index 0000000..a8be818 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_reeds_from_reeds_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:reeds_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_reeds" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_rubeus_from_rubeus_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_rubeus_from_rubeus_slab.json new file mode 100644 index 0000000..0f3f0d8 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_rubeus_from_rubeus_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:rubeus_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_rubeus" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_spruce_from_spruce_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_spruce_from_spruce_slab.json new file mode 100644 index 0000000..b5a4ded --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_spruce_from_spruce_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:spruce_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_spruce" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_stalagnate_from_stalagnate_planks_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_stalagnate_from_stalagnate_planks_slab.json new file mode 100644 index 0000000..4ff1935 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_stalagnate_from_stalagnate_planks_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_stalagnate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_warped_from_warped_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_warped_from_warped_slab.json new file mode 100644 index 0000000..c9558d6 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_warped_from_warped_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "minecraft:warped_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_warped" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_wart_from_wart_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_wart_from_wart_slab.json new file mode 100644 index 0000000..f1c8f08 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_wart_from_wart_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:wart_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_wart" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bar_stool_willow_from_willow_slab.json b/src/main/resources/data/betternether/recipes/bar_stool_willow_from_willow_slab.json new file mode 100644 index 0000000..51a847c --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bar_stool_willow_from_willow_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II", + "II" + ], + "key": { + "#": { + "item": "betternether:willow_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:bar_stool_willow" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/barrel_anchor_tree_from_anchor_tree_planks.json b/src/main/resources/data/betternether/recipes/barrel_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..513b180 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/barrel_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + }, + "S": { + "item": "betternether:anchor_tree_slab" + } + }, + "result": { + "item": "betternether:barrel_anchor_tree" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/barrel_crimson_from_crimson_planks.json b/src/main/resources/data/betternether/recipes/barrel_crimson_from_crimson_planks.json new file mode 100644 index 0000000..b57b37d --- /dev/null +++ b/src/main/resources/data/betternether/recipes/barrel_crimson_from_crimson_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "minecraft:crimson_planks" + }, + "S": { + "item": "minecraft:crimson_slab" + } + }, + "result": { + "item": "betternether:barrel_crimson" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/barrel_mushroom_fir_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/recipes/barrel_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..dd9a4b5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/barrel_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + }, + "S": { + "item": "betternether:mushroom_fir_slab" + } + }, + "result": { + "item": "betternether:barrel_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/barrel_mushroom_from_mushroom_planks.json b/src/main/resources/data/betternether/recipes/barrel_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..37eab79 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/barrel_mushroom_from_mushroom_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + }, + "S": { + "item": "betternether:mushroom_slab" + } + }, + "result": { + "item": "betternether:barrel_mushroom" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/barrel_nether_sakura_from_nether_sakura_planks.json b/src/main/resources/data/betternether/recipes/barrel_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..49bc61d --- /dev/null +++ b/src/main/resources/data/betternether/recipes/barrel_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + }, + "S": { + "item": "betternether:nether_sakura_slab" + } + }, + "result": { + "item": "betternether:barrel_nether_sakura" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/barrel_reed_from_reeds_block.json b/src/main/resources/data/betternether/recipes/barrel_reed_from_reeds_block.json new file mode 100644 index 0000000..94e4027 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/barrel_reed_from_reeds_block.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + }, + "S": { + "item": "betternether:reeds_slab" + } + }, + "result": { + "item": "betternether:barrel_reed" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/barrel_rubeus_from_rubeus_planks.json b/src/main/resources/data/betternether/recipes/barrel_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..7135385 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/barrel_rubeus_from_rubeus_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + }, + "S": { + "item": "betternether:rubeus_slab" + } + }, + "result": { + "item": "betternether:barrel_rubeus" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/barrel_stalagnate_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/barrel_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..482e939 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/barrel_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + }, + "S": { + "item": "betternether:stalagnate_planks_slab" + } + }, + "result": { + "item": "betternether:barrel_stalagnate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/barrel_warped_from_warped_planks.json b/src/main/resources/data/betternether/recipes/barrel_warped_from_warped_planks.json new file mode 100644 index 0000000..b53432c --- /dev/null +++ b/src/main/resources/data/betternether/recipes/barrel_warped_from_warped_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "minecraft:warped_planks" + }, + "S": { + "item": "minecraft:warped_slab" + } + }, + "result": { + "item": "betternether:barrel_warped" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/barrel_wart_from_wart_planks.json b/src/main/resources/data/betternether/recipes/barrel_wart_from_wart_planks.json new file mode 100644 index 0000000..ca9dfda --- /dev/null +++ b/src/main/resources/data/betternether/recipes/barrel_wart_from_wart_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + }, + "S": { + "item": "betternether:wart_slab" + } + }, + "result": { + "item": "betternether:barrel_wart" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/barrel_willow_from_willow_planks.json b/src/main/resources/data/betternether/recipes/barrel_willow_from_willow_planks.json new file mode 100644 index 0000000..668cfed --- /dev/null +++ b/src/main/resources/data/betternether/recipes/barrel_willow_from_willow_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#S#", + "# #", + "#S#" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + }, + "S": { + "item": "betternether:willow_slab" + } + }, + "result": { + "item": "betternether:barrel_willow" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/basalt_bricks_from_polished_basalt.json b/src/main/resources/data/betternether/recipes/basalt_bricks_from_polished_basalt.json new file mode 100644 index 0000000..21d37ce --- /dev/null +++ b/src/main/resources/data/betternether/recipes/basalt_bricks_from_polished_basalt.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:polished_basalt" + } + }, + "result": { + "item": "betternether:basalt_bricks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/basalt_bricks_slab_from_basalt_bricks.json b/src/main/resources/data/betternether/recipes/basalt_bricks_slab_from_basalt_bricks.json new file mode 100644 index 0000000..e07b19e --- /dev/null +++ b/src/main/resources/data/betternether/recipes/basalt_bricks_slab_from_basalt_bricks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:basalt_bricks" + } + }, + "result": { + "item": "betternether:basalt_bricks_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/basalt_bricks_stairs_from_basalt_bricks.json b/src/main/resources/data/betternether/recipes/basalt_bricks_stairs_from_basalt_bricks.json new file mode 100644 index 0000000..c8ffa08 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/basalt_bricks_stairs_from_basalt_bricks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:basalt_bricks" + } + }, + "result": { + "item": "betternether:basalt_bricks_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/basalt_bricks_wall_from_basalt_bricks.json b/src/main/resources/data/betternether/recipes/basalt_bricks_wall_from_basalt_bricks.json new file mode 100644 index 0000000..5dcf5c0 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/basalt_bricks_wall_from_basalt_bricks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:basalt_bricks" + } + }, + "result": { + "item": "betternether:basalt_bricks_wall", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/basalt_furnace_from_basalt.json b/src/main/resources/data/betternether/recipes/basalt_furnace_from_basalt.json new file mode 100644 index 0000000..3502144 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/basalt_furnace_from_basalt.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "minecraft:basalt" + } + }, + "result": { + "item": "betternether:basalt_furnace" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/basalt_slab_from_basalt.json b/src/main/resources/data/betternether/recipes/basalt_slab_from_basalt.json new file mode 100644 index 0000000..664d1fc --- /dev/null +++ b/src/main/resources/data/betternether/recipes/basalt_slab_from_basalt.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "minecraft:basalt" + } + }, + "result": { + "item": "betternether:basalt_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/basalt_stalactite_from_basalt.json b/src/main/resources/data/betternether/recipes/basalt_stalactite_from_basalt.json new file mode 100644 index 0000000..bf120f1 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/basalt_stalactite_from_basalt.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:basalt" + } + }, + "result": { + "item": "betternether:basalt_stalactite" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/black_apple_seed.json b/src/main/resources/data/betternether/recipes/black_apple_seed.json new file mode 100644 index 0000000..1555b97 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/black_apple_seed.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#" + ], + "key": { + "#": { + "item": "betternether:black_apple" + } + }, + "result": { + "item": "betternether:black_apple_seed", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/black_dye.json b/src/main/resources/data/betternether/recipes/black_dye.json new file mode 100644 index 0000000..6f25aac --- /dev/null +++ b/src/main/resources/data/betternether/recipes/black_dye.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "betternether:ink_bush_seed" + }, + "result": "minecraft:black_dye", + "experience": 0.0, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/blackstone_furnace_from_blackstone.json b/src/main/resources/data/betternether/recipes/blackstone_furnace_from_blackstone.json new file mode 100644 index 0000000..48b9246 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/blackstone_furnace_from_blackstone.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "minecraft:blackstone" + } + }, + "result": { + "item": "betternether:blackstone_furnace" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/blackstone_stalactite_from_blackstone.json b/src/main/resources/data/betternether/recipes/blackstone_stalactite_from_blackstone.json new file mode 100644 index 0000000..64a991f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/blackstone_stalactite_from_blackstone.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:blackstone" + } + }, + "result": { + "item": "betternether:blackstone_stalactite" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/blue_obsidian_bricks.json b/src/main/resources/data/betternether/recipes/blue_obsidian_bricks.json new file mode 100644 index 0000000..7200393 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/blue_obsidian_bricks.json @@ -0,0 +1,16 @@ +{ + "type": "crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:blue_obsidian_tile" + } + }, + "result": { + "item": "betternether:blue_obsidian_bricks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json b/src/main/resources/data/betternether/recipes/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json new file mode 100644 index 0000000..54ab456 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/blue_obsidian_bricks_slab_from_blue_obsidian_bricks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:blue_obsidian_bricks" + } + }, + "result": { + "item": "betternether:blue_obsidian_bricks_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json b/src/main/resources/data/betternether/recipes/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json new file mode 100644 index 0000000..2d72ef8 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/blue_obsidian_bricks_stairs_from_blue_obsidian_bricks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:blue_obsidian_bricks" + } + }, + "result": { + "item": "betternether:blue_obsidian_bricks_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/blue_obsidian_glass.json b/src/main/resources/data/betternether/recipes/blue_obsidian_glass.json new file mode 100644 index 0000000..4d9f290 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/blue_obsidian_glass.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "betternether:blue_obsidian" + }, + "result": "betternether:blue_obsidian_glass", + "experience": 0.0, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/blue_obsidian_glass_pane.json b/src/main/resources/data/betternether/recipes/blue_obsidian_glass_pane.json new file mode 100644 index 0000000..c3a7a41 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/blue_obsidian_glass_pane.json @@ -0,0 +1,16 @@ +{ + "type": "crafting_shaped", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:blue_obsidian_glass" + } + }, + "result": { + "item": "betternether:blue_obsidian_glass_pane", + "count": 16 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/blue_obsidian_tile.json b/src/main/resources/data/betternether/recipes/blue_obsidian_tile.json new file mode 100644 index 0000000..2fe3bf6 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/blue_obsidian_tile.json @@ -0,0 +1,16 @@ +{ + "type": "crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:blue_obsidian" + } + }, + "result": { + "item": "betternether:blue_obsidian_tile", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json b/src/main/resources/data/betternether/recipes/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json new file mode 100644 index 0000000..e763158 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/blue_obsidian_tile_slab_from_blue_obsidian_tile_small.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:blue_obsidian_tile_small" + } + }, + "result": { + "item": "betternether:blue_obsidian_tile_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/blue_obsidian_tile_small.json b/src/main/resources/data/betternether/recipes/blue_obsidian_tile_small.json new file mode 100644 index 0000000..a728039 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/blue_obsidian_tile_small.json @@ -0,0 +1,16 @@ +{ + "type": "crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:blue_obsidian_bricks" + } + }, + "result": { + "item": "betternether:blue_obsidian_tile_small", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json b/src/main/resources/data/betternether/recipes/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json new file mode 100644 index 0000000..dab5bfd --- /dev/null +++ b/src/main/resources/data/betternether/recipes/blue_obsidian_tile_stairs_from_blue_obsidian_tile_small.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:blue_obsidian_tile_small" + } + }, + "result": { + "item": "betternether:blue_obsidian_tile_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bn_bone_block.json b/src/main/resources/data/betternether/recipes/bn_bone_block.json new file mode 100644 index 0000000..c4071fc --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bn_bone_block.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:bone_block" + } + }, + "result": { + "item": "betternether:bone_block", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bone_button_from_bone_block.json b/src/main/resources/data/betternether/recipes/bone_button_from_bone_block.json new file mode 100644 index 0000000..7eb3a99 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bone_button_from_bone_block.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:bone_block" + } + ], + "result": { + "item": "betternether:bone_button" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bone_cin_door.json b/src/main/resources/data/betternether/recipes/bone_cin_door.json new file mode 100644 index 0000000..fa4a6f5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bone_cin_door.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "wooden_door", + "pattern": [ + "AB", + "BB", + "BA" + ], + "key": { + "A": { + "item": "betternether:cincinnasite_forged" + }, + "B": { + "item": "betternether:bone_block" + } + }, + "result": { + "item": "betternether:bone_cincinnasite_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bone_plate_from_bone_block.json b/src/main/resources/data/betternether/recipes/bone_plate_from_bone_block.json new file mode 100644 index 0000000..b977857 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bone_plate_from_bone_block.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:bone_block" + } + }, + "result": { + "item": "betternether:bone_plate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bone_reed_door.json b/src/main/resources/data/betternether/recipes/bone_reed_door.json new file mode 100644 index 0000000..dcf6b4a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bone_reed_door.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "wooden_door", + "pattern": [ + "AB", + "BB", + "BA" + ], + "key": { + "A": { + "item": "betternether:reeds_block" + }, + "B": { + "item": "betternether:bone_block" + } + }, + "result": { + "item": "betternether:bone_reed_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bone_slab_from_bone_block.json b/src/main/resources/data/betternether/recipes/bone_slab_from_bone_block.json new file mode 100644 index 0000000..0663df7 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bone_slab_from_bone_block.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:bone_block" + } + }, + "result": { + "item": "betternether:bone_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bone_stairs_from_bone_block.json b/src/main/resources/data/betternether/recipes/bone_stairs_from_bone_block.json new file mode 100644 index 0000000..424bdc8 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bone_stairs_from_bone_block.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:bone_block" + } + }, + "result": { + "item": "betternether:bone_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bone_stalactite_from_bone_block.json b/src/main/resources/data/betternether/recipes/bone_stalactite_from_bone_block.json new file mode 100644 index 0000000..325d579 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bone_stalactite_from_bone_block.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:bone_block" + } + }, + "result": { + "item": "betternether:bone_stalactite" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bone_tile.json b/src/main/resources/data/betternether/recipes/bone_tile.json new file mode 100644 index 0000000..aa2e2bb --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bone_tile.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#", + "#" + ], + "key": { + "#": { + "item": "betternether:bone_slab" + } + }, + "result": { + "item": "betternether:bone_tile" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bone_wall_from_bone_block.json b/src/main/resources/data/betternether/recipes/bone_wall_from_bone_block.json new file mode 100644 index 0000000..9f08509 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bone_wall_from_bone_block.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:bone_block" + } + }, + "result": { + "item": "betternether:bone_wall", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/brick_pot.json b/src/main/resources/data/betternether/recipes/brick_pot.json new file mode 100644 index 0000000..56c070a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/brick_pot.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#N#", + " # " + ], + "key": { + "#": { + "item": "minecraft:nether_brick" + }, + "N": { + "item": "minecraft:soul_sand" + } + }, + "result": { + "item": "betternether:brick_pot" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bricks_fire_bowl_from_nether_brick_tile_large.json b/src/main/resources/data/betternether/recipes/bricks_fire_bowl_from_nether_brick_tile_large.json new file mode 100644 index 0000000..cfbf0b6 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bricks_fire_bowl_from_nether_brick_tile_large.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + " # ", + "L L" + ], + "key": { + "#": { + "item": "betternether:nether_brick_tile_large" + }, + "I": { + "item": "minecraft:nether_brick" + }, + "L": { + "item": "minecraft:netherrack" + } + }, + "result": { + "item": "betternether:bricks_fire_bowl" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bricks_fire_bowl_soul_from_nether_brick_tile_large.json b/src/main/resources/data/betternether/recipes/bricks_fire_bowl_soul_from_nether_brick_tile_large.json new file mode 100644 index 0000000..19225d9 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bricks_fire_bowl_soul_from_nether_brick_tile_large.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + " # ", + "L L" + ], + "key": { + "#": { + "item": "betternether:nether_brick_tile_large" + }, + "I": { + "item": "minecraft:nether_brick" + }, + "L": { + "item": "minecraft:soul_sand" + } + }, + "result": { + "item": "betternether:bricks_fire_bowl_soul" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/bucket.json b/src/main/resources/data/betternether/recipes/bucket.json new file mode 100644 index 0000000..9f7a743 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/bucket.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "# #", + " # " + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "minecraft:bucket" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_acacia_from_acacia_slab.json b/src/main/resources/data/betternether/recipes/chair_acacia_from_acacia_slab.json new file mode 100644 index 0000000..eef975b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_acacia_from_acacia_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:acacia_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_acacia" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_anchor_tree_from_anchor_tree_slab.json b/src/main/resources/data/betternether/recipes/chair_anchor_tree_from_anchor_tree_slab.json new file mode 100644 index 0000000..bd3fab6 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_anchor_tree_from_anchor_tree_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_anchor_tree" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_birch_from_birch_slab.json b/src/main/resources/data/betternether/recipes/chair_birch_from_birch_slab.json new file mode 100644 index 0000000..7a35c87 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_birch_from_birch_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:birch_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_birch" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_cincinnasite_from_cincinnasite_slab.json b/src/main/resources/data/betternether/recipes/chair_cincinnasite_from_cincinnasite_slab.json new file mode 100644 index 0000000..8f76448 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_cincinnasite_from_cincinnasite_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_cincinnasite" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_crimson_from_crimson_slab.json b/src/main/resources/data/betternether/recipes/chair_crimson_from_crimson_slab.json new file mode 100644 index 0000000..7089ade --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_crimson_from_crimson_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:crimson_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_crimson" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_dark_oak_from_dark_oak_slab.json b/src/main/resources/data/betternether/recipes/chair_dark_oak_from_dark_oak_slab.json new file mode 100644 index 0000000..4dc5482 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_dark_oak_from_dark_oak_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:dark_oak_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_dark_oak" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_jungle_from_jungle_slab.json b/src/main/resources/data/betternether/recipes/chair_jungle_from_jungle_slab.json new file mode 100644 index 0000000..d865d2e --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_jungle_from_jungle_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:jungle_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_jungle" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_mushroom_fir_from_mushroom_fir_slab.json b/src/main/resources/data/betternether/recipes/chair_mushroom_fir_from_mushroom_fir_slab.json new file mode 100644 index 0000000..dc24d48 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_mushroom_fir_from_mushroom_fir_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_mushroom_from_mushroom_slab.json b/src/main/resources/data/betternether/recipes/chair_mushroom_from_mushroom_slab.json new file mode 100644 index 0000000..8faaac7 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_mushroom_from_mushroom_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:mushroom_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_mushroom" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_nether_sakura_from_nether_sakura_slab.json b/src/main/resources/data/betternether/recipes/chair_nether_sakura_from_nether_sakura_slab.json new file mode 100644 index 0000000..43ae25a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_nether_sakura_from_nether_sakura_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_nether_sakura" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_oak_from_oak_slab.json b/src/main/resources/data/betternether/recipes/chair_oak_from_oak_slab.json new file mode 100644 index 0000000..ce22478 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_oak_from_oak_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:oak_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_oak" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_reeds_from_reeds_slab.json b/src/main/resources/data/betternether/recipes/chair_reeds_from_reeds_slab.json new file mode 100644 index 0000000..74370c5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_reeds_from_reeds_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:reeds_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_reeds" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_rubeus_from_rubeus_slab.json b/src/main/resources/data/betternether/recipes/chair_rubeus_from_rubeus_slab.json new file mode 100644 index 0000000..f820e04 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_rubeus_from_rubeus_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:rubeus_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_rubeus" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_spruce_from_spruce_slab.json b/src/main/resources/data/betternether/recipes/chair_spruce_from_spruce_slab.json new file mode 100644 index 0000000..22bac28 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_spruce_from_spruce_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:spruce_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_spruce" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_stalagnate_from_stalagnate_planks_slab.json b/src/main/resources/data/betternether/recipes/chair_stalagnate_from_stalagnate_planks_slab.json new file mode 100644 index 0000000..50963fe --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_stalagnate_from_stalagnate_planks_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_stalagnate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_warped_from_warped_slab.json b/src/main/resources/data/betternether/recipes/chair_warped_from_warped_slab.json new file mode 100644 index 0000000..752648b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_warped_from_warped_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:warped_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_warped" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_wart_from_wart_slab.json b/src/main/resources/data/betternether/recipes/chair_wart_from_wart_slab.json new file mode 100644 index 0000000..7026d70 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_wart_from_wart_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:wart_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_wart" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chair_willow_from_willow_slab.json b/src/main/resources/data/betternether/recipes/chair_willow_from_willow_slab.json new file mode 100644 index 0000000..272dde8 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chair_willow_from_willow_slab.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I ", + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:willow_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:chair_willow" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chest_anchor_tree_from_anchor_tree_planks.json b/src/main/resources/data/betternether/recipes/chest_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..13e13bd --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chest_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:chest_anchor_tree" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chest_crimson_from_crimson_planks.json b/src/main/resources/data/betternether/recipes/chest_crimson_from_crimson_planks.json new file mode 100644 index 0000000..f9cb1aa --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chest_crimson_from_crimson_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "minecraft:crimson_planks" + } + }, + "result": { + "item": "betternether:chest_crimson" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chest_mushroom_fir_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/recipes/chest_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..15b9a4c --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chest_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:chest_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chest_mushroom_from_mushroom_planks.json b/src/main/resources/data/betternether/recipes/chest_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..f0492db --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chest_mushroom_from_mushroom_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:chest_mushroom" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chest_nether_sakura_from_nether_sakura_planks.json b/src/main/resources/data/betternether/recipes/chest_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..fd705ef --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chest_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:chest_nether_sakura" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chest_of_drawers.json b/src/main/resources/data/betternether/recipes/chest_of_drawers.json new file mode 100644 index 0000000..28d04f9 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chest_of_drawers.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "C#C", + "# #", + "C#C" + ], + "key": { + "C": { + "item": "betternether:cincinnasite_forged" + }, + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:chest_of_drawers" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chest_reed_from_reeds_block.json b/src/main/resources/data/betternether/recipes/chest_reed_from_reeds_block.json new file mode 100644 index 0000000..ac6a782 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chest_reed_from_reeds_block.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:chest_reed" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chest_rubeus_from_rubeus_planks.json b/src/main/resources/data/betternether/recipes/chest_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..81cd2c4 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chest_rubeus_from_rubeus_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:chest_rubeus" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chest_stalagnate_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/chest_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..b7c93e2 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chest_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:chest_stalagnate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chest_warped_from_warped_planks.json b/src/main/resources/data/betternether/recipes/chest_warped_from_warped_planks.json new file mode 100644 index 0000000..2d94c8e --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chest_warped_from_warped_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "minecraft:warped_planks" + } + }, + "result": { + "item": "betternether:chest_warped" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chest_wart_from_wart_planks.json b/src/main/resources/data/betternether/recipes/chest_wart_from_wart_planks.json new file mode 100644 index 0000000..a18c8df --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chest_wart_from_wart_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:chest_wart" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/chest_willow_from_willow_planks.json b/src/main/resources/data/betternether/recipes/chest_willow_from_willow_planks.json new file mode 100644 index 0000000..a05646e --- /dev/null +++ b/src/main/resources/data/betternether/recipes/chest_willow_from_willow_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:chest_willow" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_anvil.json b/src/main/resources/data/betternether/recipes/cincinnasite_anvil.json new file mode 100644 index 0000000..568709b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_anvil.json @@ -0,0 +1,19 @@ +{ + "type": "crafting_shaped", + "pattern": [ + "###", + " # ", + "BBB" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + }, + "B": { + "item": "minecraft:nether_bricks" + } + }, + "result": { + "item": "betternether:cincinnasite_anvil" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_axe.json b/src/main/resources/data/betternether/recipes/cincinnasite_axe.json new file mode 100644 index 0000000..24a192f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_axe.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "#S", + " S" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + }, + "S": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "betternether:cincinnasite_axe" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_axe_diamond.json b/src/main/resources/data/betternether/recipes/cincinnasite_axe_diamond.json new file mode 100644 index 0000000..9fab832 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_axe_diamond.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + " #", + "#P" + ], + "key": { + "#": { + "item": "minecraft:diamond" + }, + "P": { + "item": "betternether:cincinnasite_axe" + } + }, + "result": { + "item": "betternether:cincinnasite_axe_diamond" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_bars.json b/src/main/resources/data/betternether/recipes/cincinnasite_bars.json new file mode 100644 index 0000000..a1c7853 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_bars.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "# #", + "# #", + "# #" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:cincinnasite_bars", + "count": 16 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_block.json b/src/main/resources/data/betternether/recipes/cincinnasite_block.json new file mode 100644 index 0000000..1799eb2 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_block.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:cincinnasite" + } + }, + "result": { + "item": "betternether:cincinnasite_block" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_boots.json b/src/main/resources/data/betternether/recipes/cincinnasite_boots.json new file mode 100644 index 0000000..f155ae0 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_boots.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "# #", + "# #" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "betternether:cincinnasite_boots" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_brick_plate.json b/src/main/resources/data/betternether/recipes/cincinnasite_brick_plate.json new file mode 100644 index 0000000..9cb7377 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_brick_plate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + " # ", + "BBB", + " # " + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + }, + "B": { + "item": "minecraft:nether_brick" + } + }, + "result": { + "item": "betternether:cincinnasite_brick_plate", + "count": 5 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_bricks.json b/src/main/resources/data/betternether/recipes/cincinnasite_bricks.json new file mode 100644 index 0000000..c7b1986 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_bricks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#B", + "B#" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + }, + "B": { + "item": "minecraft:nether_brick" + } + }, + "result": { + "item": "betternether:cincinnasite_bricks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_bricks_pillar.json b/src/main/resources/data/betternether/recipes/cincinnasite_bricks_pillar.json new file mode 100644 index 0000000..911faa4 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_bricks_pillar.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#", + "#" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_bricks" + } + }, + "result": { + "item": "betternether:cincinnasite_bricks_pillar", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_button.json b/src/main/resources/data/betternether/recipes/cincinnasite_button.json new file mode 100644 index 0000000..5c42a0a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_button.json @@ -0,0 +1,14 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "betternether:cincinnasite_button" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_carved.json b/src/main/resources/data/betternether/recipes/cincinnasite_carved.json new file mode 100644 index 0000000..ab5117e --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_carved.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:cincinnasite_carved", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_chestplate.json b/src/main/resources/data/betternether/recipes/cincinnasite_chestplate.json new file mode 100644 index 0000000..158bbe5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_chestplate.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "# #", + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "betternether:cincinnasite_chestplate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_diamond_sword.json b/src/main/resources/data/betternether/recipes/cincinnasite_diamond_sword.json new file mode 100644 index 0000000..39de83d --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_diamond_sword.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + " D", + "D#" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_sword" + }, + "D": { + "item": "minecraft:diamond" + } + }, + "result": { + "item": "betternether:cincinnasite_sword_diamond" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_fire_bowl_from_cincinnasite_forged.json b/src/main/resources/data/betternether/recipes/cincinnasite_fire_bowl_from_cincinnasite_forged.json new file mode 100644 index 0000000..d72cda3 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_fire_bowl_from_cincinnasite_forged.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + " # ", + "L L" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + }, + "I": [], + "L": { + "item": "minecraft:netherrack" + } + }, + "result": { + "item": "betternether:cincinnasite_fire_bowl" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json b/src/main/resources/data/betternether/recipes/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json new file mode 100644 index 0000000..fde6fee --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_fire_bowl_soul_from_cincinnasite_forged.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + " # ", + "L L" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + }, + "I": [], + "L": { + "item": "minecraft:soul_sand" + } + }, + "result": { + "item": "betternether:cincinnasite_fire_bowl_soul" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_forge.json b/src/main/resources/data/betternether/recipes/cincinnasite_forge.json new file mode 100644 index 0000000..8ec1299 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_forge.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "B#B", + "# #", + "B#B" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + }, + "B": { + "item": "minecraft:nether_bricks" + } + }, + "result": { + "item": "betternether:cincinnasite_forge" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_forged.json b/src/main/resources/data/betternether/recipes/cincinnasite_forged.json new file mode 100644 index 0000000..80ecf90 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_forged.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "betternether:cincinnasite_block" + }, + "result": "betternether:cincinnasite_forged", + "experience": 0.0, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_forged_blasting.json b/src/main/resources/data/betternether/recipes/cincinnasite_forged_blasting.json new file mode 100644 index 0000000..2c30831 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_forged_blasting.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:blasting", + "ingredient": { + "item": "betternether:cincinnasite_block" + }, + "result": "betternether:cincinnasite_forged", + "experience": 0.0, + "cookingtime": 100 +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_forged_from_ingot.json b/src/main/resources/data/betternether/recipes/cincinnasite_forged_from_ingot.json new file mode 100644 index 0000000..0ee1573 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_forged_from_ingot.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "betternether:cincinnasite_forged" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_helmet.json b/src/main/resources/data/betternether/recipes/cincinnasite_helmet.json new file mode 100644 index 0000000..672e473 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_helmet.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "# #" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "betternether:cincinnasite_helmet" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_hoe.json b/src/main/resources/data/betternether/recipes/cincinnasite_hoe.json new file mode 100644 index 0000000..0f440d8 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_hoe.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + " S", + " S" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + }, + "S": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "betternether:cincinnasite_hoe" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_hoe_diamond.json b/src/main/resources/data/betternether/recipes/cincinnasite_hoe_diamond.json new file mode 100644 index 0000000..0361919 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_hoe_diamond.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + " #", + "#P" + ], + "key": { + "#": { + "item": "minecraft:diamond" + }, + "P": { + "item": "betternether:cincinnasite_hoe" + } + }, + "result": { + "item": "betternether:cincinnasite_hoe_diamond" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_ingot.json b/src/main/resources/data/betternether/recipes/cincinnasite_ingot.json new file mode 100644 index 0000000..2e17438 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_ingot.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:cincinnasite_ingot", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_ingot_from_ore.json b/src/main/resources/data/betternether/recipes/cincinnasite_ingot_from_ore.json new file mode 100644 index 0000000..ad07bf8 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_ingot_from_ore.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "betternether:cincinnasite_ore" + }, + "result": "betternether:cincinnasite_ingot", + "experience": 0.0, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_ingot_from_ore_blasting.json b/src/main/resources/data/betternether/recipes/cincinnasite_ingot_from_ore_blasting.json new file mode 100644 index 0000000..ba1c7ad --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_ingot_from_ore_blasting.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:blasting", + "ingredient": { + "item": "betternether:cincinnasite_ore" + }, + "result": "betternether:cincinnasite_ingot", + "experience": 0.0, + "cookingtime": 100 +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_ingot_from_shard.json b/src/main/resources/data/betternether/recipes/cincinnasite_ingot_from_shard.json new file mode 100644 index 0000000..2c9bc3b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_ingot_from_shard.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "betternether:cincinnasite" + }, + "result": "betternether:cincinnasite_ingot", + "experience": 0.0, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_ingot_from_shard_blasting.json b/src/main/resources/data/betternether/recipes/cincinnasite_ingot_from_shard_blasting.json new file mode 100644 index 0000000..686ac4d --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_ingot_from_shard_blasting.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:blasting", + "ingredient": { + "item": "betternether:cincinnasite" + }, + "result": "betternether:cincinnasite_ingot", + "experience": 0.0, + "cookingtime": 100 +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_lantern.json b/src/main/resources/data/betternether/recipes/cincinnasite_lantern.json new file mode 100644 index 0000000..bea6779 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_lantern.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + " # ", + "#G#", + " # " + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + }, + "G": { + "item": "minecraft:glowstone" + } + }, + "result": { + "item": "betternether:cincinnasite_lantern" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_leggings.json b/src/main/resources/data/betternether/recipes/cincinnasite_leggings.json new file mode 100644 index 0000000..73bb8f6 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_leggings.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "# #", + "# #" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "betternether:cincinnasite_leggings" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_pedestal.json b/src/main/resources/data/betternether/recipes/cincinnasite_pedestal.json new file mode 100644 index 0000000..b375d4c --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_pedestal.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:cincinnasite_pedestal", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_pickaxe.json b/src/main/resources/data/betternether/recipes/cincinnasite_pickaxe.json new file mode 100644 index 0000000..dd42525 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_pickaxe.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + " S ", + " S " + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + }, + "S": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "betternether:cincinnasite_pickaxe" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_pickaxe_diamond.json b/src/main/resources/data/betternether/recipes/cincinnasite_pickaxe_diamond.json new file mode 100644 index 0000000..0c439a7 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_pickaxe_diamond.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#P#" + ], + "key": { + "#": { + "item": "minecraft:diamond" + }, + "P": { + "item": "betternether:cincinnasite_pickaxe" + } + }, + "result": { + "item": "betternether:cincinnasite_pickaxe_diamond" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_pillar.json b/src/main/resources/data/betternether/recipes/cincinnasite_pillar.json new file mode 100644 index 0000000..63a222b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_pillar.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#", + "#" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:cincinnasite_pillar", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_plate_from_cincinnasite_forged.json b/src/main/resources/data/betternether/recipes/cincinnasite_plate_from_cincinnasite_forged.json new file mode 100644 index 0000000..9a236fb --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_plate_from_cincinnasite_forged.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:cincinnasite_plate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_pot.json b/src/main/resources/data/betternether/recipes/cincinnasite_pot.json new file mode 100644 index 0000000..e25fd4b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_pot.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#N#", + " # " + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + }, + "N": { + "item": "minecraft:soul_sand" + } + }, + "result": { + "item": "betternether:cincinnasite_pot" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_shovel.json b/src/main/resources/data/betternether/recipes/cincinnasite_shovel.json new file mode 100644 index 0000000..045bb00 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_shovel.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#", + "S", + "S" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + }, + "S": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "betternether:cincinnasite_shovel" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_shovel_diamond.json b/src/main/resources/data/betternether/recipes/cincinnasite_shovel_diamond.json new file mode 100644 index 0000000..969affe --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_shovel_diamond.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#", + "P" + ], + "key": { + "#": { + "item": "minecraft:diamond" + }, + "P": { + "item": "betternether:cincinnasite_shovel" + } + }, + "result": { + "item": "betternether:cincinnasite_shovel_diamond" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_slab_from_cincinnasite_forged.json b/src/main/resources/data/betternether/recipes/cincinnasite_slab_from_cincinnasite_forged.json new file mode 100644 index 0000000..2d2b697 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_slab_from_cincinnasite_forged.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:cincinnasite_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_stairs_from_cincinnasite_forged.json b/src/main/resources/data/betternether/recipes/cincinnasite_stairs_from_cincinnasite_forged.json new file mode 100644 index 0000000..1772dd1 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_stairs_from_cincinnasite_forged.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:cincinnasite_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_sword.json b/src/main/resources/data/betternether/recipes/cincinnasite_sword.json new file mode 100644 index 0000000..094fd5e --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_sword.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#", + "#", + "S" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + }, + "S": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "betternether:cincinnasite_sword" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_tile_large.json b/src/main/resources/data/betternether/recipes/cincinnasite_tile_large.json new file mode 100644 index 0000000..8c6832f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_tile_large.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#", + "#" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_slab" + } + }, + "result": { + "item": "betternether:cincinnasite_tile_large" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_tile_small.json b/src/main/resources/data/betternether/recipes/cincinnasite_tile_small.json new file mode 100644 index 0000000..3f5d688 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_tile_small.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_tile_large" + } + }, + "result": { + "item": "betternether:cincinnasite_tile_small", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/cincinnasite_wall_from_cincinnasite_forged.json b/src/main/resources/data/betternether/recipes/cincinnasite_wall_from_cincinnasite_forged.json new file mode 100644 index 0000000..4bb1b0a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/cincinnasite_wall_from_cincinnasite_forged.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:cincinnasite_wall", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/crafting_table_anchor_tree_from_anchor_tree_planks.json b/src/main/resources/data/betternether/recipes/crafting_table_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..c11a2a2 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/crafting_table_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + } + }, + "result": { + "item": "betternether:crafting_table_anchor_tree" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/crafting_table_crimson_from_crimson_planks.json b/src/main/resources/data/betternether/recipes/crafting_table_crimson_from_crimson_planks.json new file mode 100644 index 0000000..0fd7560 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/crafting_table_crimson_from_crimson_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:crimson_planks" + } + }, + "result": { + "item": "betternether:crafting_table_crimson" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/crafting_table_mushroom_fir_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/recipes/crafting_table_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..69eeb5f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/crafting_table_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:crafting_table_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/crafting_table_mushroom_from_mushroom_planks.json b/src/main/resources/data/betternether/recipes/crafting_table_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..baaa027 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/crafting_table_mushroom_from_mushroom_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:crafting_table_mushroom" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/crafting_table_nether_sakura_from_nether_sakura_planks.json b/src/main/resources/data/betternether/recipes/crafting_table_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..71ccf42 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/crafting_table_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:crafting_table_nether_sakura" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/crafting_table_reed_from_reeds_block.json b/src/main/resources/data/betternether/recipes/crafting_table_reed_from_reeds_block.json new file mode 100644 index 0000000..8554315 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/crafting_table_reed_from_reeds_block.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:crafting_table_reed" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/crafting_table_rubeus_from_rubeus_planks.json b/src/main/resources/data/betternether/recipes/crafting_table_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..e2c4688 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/crafting_table_rubeus_from_rubeus_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:crafting_table_rubeus" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/crafting_table_stalagnate_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/crafting_table_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..445b116 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/crafting_table_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:crafting_table_stalagnate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/crafting_table_warped_from_warped_planks.json b/src/main/resources/data/betternether/recipes/crafting_table_warped_from_warped_planks.json new file mode 100644 index 0000000..877fa6e --- /dev/null +++ b/src/main/resources/data/betternether/recipes/crafting_table_warped_from_warped_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:warped_planks" + } + }, + "result": { + "item": "betternether:crafting_table_warped" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/crafting_table_wart_from_wart_planks.json b/src/main/resources/data/betternether/recipes/crafting_table_wart_from_wart_planks.json new file mode 100644 index 0000000..c08569d --- /dev/null +++ b/src/main/resources/data/betternether/recipes/crafting_table_wart_from_wart_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:crafting_table_wart" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/crafting_table_willow_from_willow_planks.json b/src/main/resources/data/betternether/recipes/crafting_table_willow_from_willow_planks.json new file mode 100644 index 0000000..2707d79 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/crafting_table_willow_from_willow_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:crafting_table_willow" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/crimson_ladder_from_crimson_planks.json b/src/main/resources/data/betternether/recipes/crimson_ladder_from_crimson_planks.json new file mode 100644 index 0000000..716afc0 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/crimson_ladder_from_crimson_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "minecraft:crimson_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:crimson_ladder" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/detector_rail.json b/src/main/resources/data/betternether/recipes/detector_rail.json new file mode 100644 index 0000000..81b0a05 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/detector_rail.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "X X", + "X#X", + "XRX" + ], + "key": { + "R": { + "item": "minecraft:redstone" + }, + "#": { + "item": "minecraft:stone_pressure_plate" + }, + "X": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "minecraft:detector_rail", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/farmland.json b/src/main/resources/data/betternether/recipes/farmland.json new file mode 100644 index 0000000..c13a3d9 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/farmland.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#S#", + "#N#", + "#H#" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + }, + "H": { + "item": "betternether:stalagnate_planks_slab" + }, + "N": { + "item": "minecraft:netherrack" + }, + "S": { + "item": "minecraft:soul_sand" + } + }, + "result": { + "item": "betternether:farmland", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/glass_bottle.json b/src/main/resources/data/betternether/recipes/glass_bottle.json new file mode 100644 index 0000000..9a42445 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/glass_bottle.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "# #", + " # " + ], + "key": { + "#": { + "item": "betternether:quartz_glass" + } + }, + "result": { + "item": "minecraft:glass_bottle", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/glowstone_stalactite_from_glowstone.json b/src/main/resources/data/betternether/recipes/glowstone_stalactite_from_glowstone.json new file mode 100644 index 0000000..a803fee --- /dev/null +++ b/src/main/resources/data/betternether/recipes/glowstone_stalactite_from_glowstone.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:glowstone" + } + }, + "result": { + "item": "betternether:glowstone_stalactite" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/gray_dye.json b/src/main/resources/data/betternether/recipes/gray_dye.json new file mode 100644 index 0000000..ac4c0f5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/gray_dye.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#" + ], + "key": { + "#": { + "item": "betternether:gray_mold" + } + }, + "result": { + "item": "minecraft:gray_dye", + "count": 1 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/herbal_medicine.json b/src/main/resources/data/betternether/recipes/herbal_medicine.json new file mode 100644 index 0000000..2bfe5c7 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/herbal_medicine.json @@ -0,0 +1 @@ +{ "type": "minecraft:crafting_shapeless", "ingredients": [ { "item": "betternether:stalagnate_bowl" }, { "item": "betternether:agave_leaf" }, { "item": "betternether:black_apple" }, { "item": "betternether:hook_mushroom_cooked" }, { "item": "minecraft:nether_wart" } ], "result": { "item": "betternether:herbal_medicine" } } \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/hook_mushroom_cooked.json b/src/main/resources/data/betternether/recipes/hook_mushroom_cooked.json new file mode 100644 index 0000000..651a4fc --- /dev/null +++ b/src/main/resources/data/betternether/recipes/hook_mushroom_cooked.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "betternether:hook_mushroom" + }, + "result": "betternether:hook_mushroom_cooked", + "experience": 0.1, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/minecart.json b/src/main/resources/data/betternether/recipes/minecart.json new file mode 100644 index 0000000..380ff91 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/minecart.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "# #", + "###" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "minecraft:minecart" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_button_from_mushroom_planks.json b/src/main/resources/data/betternether/recipes/mushroom_button_from_mushroom_planks.json new file mode 100644 index 0000000..f3a3a30 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_button_from_mushroom_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:mushroom_planks" + } + ], + "result": { + "item": "betternether:mushroom_button" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_door_from_mushroom_planks.json b/src/main/resources/data/betternether/recipes/mushroom_door_from_mushroom_planks.json new file mode 100644 index 0000000..7943b90 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_door_from_mushroom_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:mushroom_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fence_from_mushroom_planks.json b/src/main/resources/data/betternether/recipes/mushroom_fence_from_mushroom_planks.json new file mode 100644 index 0000000..c06020f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fence_from_mushroom_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:mushroom_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_button_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/recipes/mushroom_fir_button_from_mushroom_fir_planks.json new file mode 100644 index 0000000..1119d59 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_button_from_mushroom_fir_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:mushroom_fir_planks" + } + ], + "result": { + "item": "betternether:mushroom_fir_button" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_door_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/recipes/mushroom_fir_door_from_mushroom_fir_planks.json new file mode 100644 index 0000000..8c43417 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_door_from_mushroom_fir_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:mushroom_fir_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_fence_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/recipes/mushroom_fir_fence_from_mushroom_fir_planks.json new file mode 100644 index 0000000..86ed580 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_fence_from_mushroom_fir_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:mushroom_fir_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_gate_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/recipes/mushroom_fir_gate_from_mushroom_fir_planks.json new file mode 100644 index 0000000..58cd73f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_gate_from_mushroom_fir_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:mushroom_fir_gate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_ladder_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/recipes/mushroom_fir_ladder_from_mushroom_fir_planks.json new file mode 100644 index 0000000..4f96884 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_ladder_from_mushroom_fir_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:mushroom_fir_ladder" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_log_from_mushroom_fir_stem.json b/src/main/resources/data/betternether/recipes/mushroom_fir_log_from_mushroom_fir_stem.json new file mode 100644 index 0000000..9768be0 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_log_from_mushroom_fir_stem.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_stem" + } + }, + "result": { + "item": "betternether:mushroom_fir_log" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_mushroom_fir_log.json b/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_mushroom_fir_log.json new file mode 100644 index 0000000..1841c2a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_mushroom_fir_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:mushroom_fir_log" + } + ], + "result": { + "item": "betternether:mushroom_fir_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_mushroom_fir_stem.json b/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_mushroom_fir_stem.json new file mode 100644 index 0000000..97ef411 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_mushroom_fir_stem.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:mushroom_fir_stem" + } + ], + "result": { + "item": "betternether:mushroom_fir_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_mushroom_fir_wood.json b/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_mushroom_fir_wood.json new file mode 100644 index 0000000..a7ecffd --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_mushroom_fir_wood.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:mushroom_fir_wood" + } + ], + "result": { + "item": "betternether:mushroom_fir_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_striped_log_mushroom_fir.json b/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_striped_log_mushroom_fir.json new file mode 100644 index 0000000..3f2dfcc --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_striped_log_mushroom_fir.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_mushroom_fir" + } + ], + "result": { + "item": "betternether:mushroom_fir_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_striped_wood_mushroom_fir.json b/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_striped_wood_mushroom_fir.json new file mode 100644 index 0000000..af0cbae --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_planks_from_striped_wood_mushroom_fir.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_wood_mushroom_fir" + } + ], + "result": { + "item": "betternether:mushroom_fir_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_plate_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/recipes/mushroom_fir_plate_from_mushroom_fir_planks.json new file mode 100644 index 0000000..4fba920 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_plate_from_mushroom_fir_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:mushroom_fir_plate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_slab_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/recipes/mushroom_fir_slab_from_mushroom_fir_planks.json new file mode 100644 index 0000000..165c54a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_slab_from_mushroom_fir_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:mushroom_fir_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_stairs_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/recipes/mushroom_fir_stairs_from_mushroom_fir_planks.json new file mode 100644 index 0000000..e01e185 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_stairs_from_mushroom_fir_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:mushroom_fir_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_trapdoor_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/recipes/mushroom_fir_trapdoor_from_mushroom_fir_planks.json new file mode 100644 index 0000000..3be29aa --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_trapdoor_from_mushroom_fir_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + } + }, + "result": { + "item": "betternether:mushroom_fir_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_fir_wood_from_mushroom_fir_log.json b/src/main/resources/data/betternether/recipes/mushroom_fir_wood_from_mushroom_fir_log.json new file mode 100644 index 0000000..734f8fd --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_fir_wood_from_mushroom_fir_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_log" + } + }, + "result": { + "item": "betternether:mushroom_fir_wood", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_gate_from_mushroom_planks.json b/src/main/resources/data/betternether/recipes/mushroom_gate_from_mushroom_planks.json new file mode 100644 index 0000000..32cd5e8 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_gate_from_mushroom_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:mushroom_gate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_ladder_from_mushroom_planks.json b/src/main/resources/data/betternether/recipes/mushroom_ladder_from_mushroom_planks.json new file mode 100644 index 0000000..9d86d85 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_ladder_from_mushroom_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:mushroom_ladder" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_planks_from_mushroom_stem.json b/src/main/resources/data/betternether/recipes/mushroom_planks_from_mushroom_stem.json new file mode 100644 index 0000000..9615192 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_planks_from_mushroom_stem.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:mushroom_stem" + } + ], + "result": { + "item": "betternether:mushroom_planks", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_plate_from_mushroom_planks.json b/src/main/resources/data/betternether/recipes/mushroom_plate_from_mushroom_planks.json new file mode 100644 index 0000000..a8c0f4b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_plate_from_mushroom_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:mushroom_plate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_slab_from_mushroom_planks.json b/src/main/resources/data/betternether/recipes/mushroom_slab_from_mushroom_planks.json new file mode 100644 index 0000000..52408ab --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_slab_from_mushroom_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:mushroom_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_stairs_from_mushroom_planks.json b/src/main/resources/data/betternether/recipes/mushroom_stairs_from_mushroom_planks.json new file mode 100644 index 0000000..c749db4 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_stairs_from_mushroom_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:mushroom_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/mushroom_trapdoor_from_mushroom_planks.json b/src/main/resources/data/betternether/recipes/mushroom_trapdoor_from_mushroom_planks.json new file mode 100644 index 0000000..1a06a12 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/mushroom_trapdoor_from_mushroom_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + } + }, + "result": { + "item": "betternether:mushroom_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_brewing_stand.json b/src/main/resources/data/betternether/recipes/nether_brewing_stand.json new file mode 100644 index 0000000..ea565cb --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_brewing_stand.json @@ -0,0 +1,22 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + " I ", + " S ", + "###" + ], + "key": { + "I": { + "item": "betternether:cincinnasite_ingot" + }, + "S": { + "item": "minecraft:blaze_rod" + }, + "#": { + "item": "minecraft:nether_bricks" + } + }, + "result": { + "item": "betternether:nether_brewing_stand" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_brick_tile_slab_from_nether_brick_tile_small.json b/src/main/resources/data/betternether/recipes/nether_brick_tile_slab_from_nether_brick_tile_small.json new file mode 100644 index 0000000..ac7406c --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_brick_tile_slab_from_nether_brick_tile_small.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:nether_brick_tile_small" + } + }, + "result": { + "item": "betternether:nether_brick_tile_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_brick_tile_stairs_from_nether_brick_tile_small.json b/src/main/resources/data/betternether/recipes/nether_brick_tile_stairs_from_nether_brick_tile_small.json new file mode 100644 index 0000000..c363f01 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_brick_tile_stairs_from_nether_brick_tile_small.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_brick_tile_small" + } + }, + "result": { + "item": "betternether:nether_brick_tile_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_brick_wall_from_nether_brick_tile_large.json b/src/main/resources/data/betternether/recipes/nether_brick_wall_from_nether_brick_tile_large.json new file mode 100644 index 0000000..cfbc802 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_brick_wall_from_nether_brick_tile_large.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_brick_tile_large" + } + }, + "result": { + "item": "betternether:nether_brick_wall", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_ruby_axe.json b/src/main/resources/data/betternether/recipes/nether_ruby_axe.json new file mode 100644 index 0000000..1eae3dc --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_ruby_axe.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "#S", + " S" + ], + "key": { + "#": { + "item": "betternether:nether_ruby" + }, + "S": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "betternether:nether_ruby_axe" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_ruby_block.json b/src/main/resources/data/betternether/recipes/nether_ruby_block.json new file mode 100644 index 0000000..e5222ff --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_ruby_block.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_ruby" + } + }, + "result": { + "item": "betternether:nether_ruby_block" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_ruby_boots.json b/src/main/resources/data/betternether/recipes/nether_ruby_boots.json new file mode 100644 index 0000000..788e769 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_ruby_boots.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "# #", + "# #" + ], + "key": { + "#": { + "item": "betternether:nether_ruby" + } + }, + "result": { + "item": "betternether:nether_ruby_boots" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_ruby_chestplate.json b/src/main/resources/data/betternether/recipes/nether_ruby_chestplate.json new file mode 100644 index 0000000..47b9f1d --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_ruby_chestplate.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "# #", + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_ruby" + } + }, + "result": { + "item": "betternether:nether_ruby_chestplate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_ruby_from_block.json b/src/main/resources/data/betternether/recipes/nether_ruby_from_block.json new file mode 100644 index 0000000..dad39e8 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_ruby_from_block.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#" + ], + "key": { + "#": { + "item": "betternether:nether_ruby_block" + } + }, + "result": { + "item": "betternether:nether_ruby", + "count": 9 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_ruby_helmet.json b/src/main/resources/data/betternether/recipes/nether_ruby_helmet.json new file mode 100644 index 0000000..f6f16a3 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_ruby_helmet.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "# #" + ], + "key": { + "#": { + "item": "betternether:nether_ruby" + } + }, + "result": { + "item": "betternether:nether_ruby_helmet" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_ruby_hoe.json b/src/main/resources/data/betternether/recipes/nether_ruby_hoe.json new file mode 100644 index 0000000..6e73694 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_ruby_hoe.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + " S", + " S" + ], + "key": { + "#": { + "item": "betternether:nether_ruby" + }, + "S": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "betternether:nether_ruby_hoe" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_ruby_leggings.json b/src/main/resources/data/betternether/recipes/nether_ruby_leggings.json new file mode 100644 index 0000000..5579b54 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_ruby_leggings.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "# #", + "# #" + ], + "key": { + "#": { + "item": "betternether:nether_ruby" + } + }, + "result": { + "item": "betternether:nether_ruby_leggings" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_ruby_pickaxe.json b/src/main/resources/data/betternether/recipes/nether_ruby_pickaxe.json new file mode 100644 index 0000000..a5bc4a1 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_ruby_pickaxe.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + " S ", + " S " + ], + "key": { + "#": { + "item": "betternether:nether_ruby" + }, + "S": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "betternether:nether_ruby_pickaxe" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_ruby_shovel.json b/src/main/resources/data/betternether/recipes/nether_ruby_shovel.json new file mode 100644 index 0000000..a3d14ce --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_ruby_shovel.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#", + "S", + "S" + ], + "key": { + "#": { + "item": "betternether:nether_ruby" + }, + "S": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "betternether:nether_ruby_shovel" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_ruby_slab_from_nether_ruby_block.json b/src/main/resources/data/betternether/recipes/nether_ruby_slab_from_nether_ruby_block.json new file mode 100644 index 0000000..ad3e14d --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_ruby_slab_from_nether_ruby_block.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:nether_ruby_block" + } + }, + "result": { + "item": "betternether:nether_ruby_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_ruby_stairs_from_nether_ruby_block.json b/src/main/resources/data/betternether/recipes/nether_ruby_stairs_from_nether_ruby_block.json new file mode 100644 index 0000000..de0bd91 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_ruby_stairs_from_nether_ruby_block.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_ruby_block" + } + }, + "result": { + "item": "betternether:nether_ruby_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_ruby_sword.json b/src/main/resources/data/betternether/recipes/nether_ruby_sword.json new file mode 100644 index 0000000..1b865ad --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_ruby_sword.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#", + "#", + "S" + ], + "key": { + "#": { + "item": "betternether:nether_ruby" + }, + "S": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "betternether:nether_ruby_sword" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_bark_from_nether_sakura_log.json b/src/main/resources/data/betternether/recipes/nether_sakura_bark_from_nether_sakura_log.json new file mode 100644 index 0000000..a5fc4c7 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_bark_from_nether_sakura_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_log" + } + }, + "result": { + "item": "betternether:nether_sakura_bark", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_button_from_nether_sakura_planks.json b/src/main/resources/data/betternether/recipes/nether_sakura_button_from_nether_sakura_planks.json new file mode 100644 index 0000000..eb80036 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_button_from_nether_sakura_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:nether_sakura_planks" + } + ], + "result": { + "item": "betternether:nether_sakura_button" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_door_from_nether_sakura_planks.json b/src/main/resources/data/betternether/recipes/nether_sakura_door_from_nether_sakura_planks.json new file mode 100644 index 0000000..a43f7cd --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_door_from_nether_sakura_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:nether_sakura_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_fence_from_nether_sakura_planks.json b/src/main/resources/data/betternether/recipes/nether_sakura_fence_from_nether_sakura_planks.json new file mode 100644 index 0000000..fd91e1e --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_fence_from_nether_sakura_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:nether_sakura_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_gate_from_nether_sakura_planks.json b/src/main/resources/data/betternether/recipes/nether_sakura_gate_from_nether_sakura_planks.json new file mode 100644 index 0000000..3f4fa54 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_gate_from_nether_sakura_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:nether_sakura_gate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_ladder_from_nether_sakura_planks.json b/src/main/resources/data/betternether/recipes/nether_sakura_ladder_from_nether_sakura_planks.json new file mode 100644 index 0000000..4a29dcc --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_ladder_from_nether_sakura_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:nether_sakura_ladder" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_planks_from_nether_sakura_bark.json b/src/main/resources/data/betternether/recipes/nether_sakura_planks_from_nether_sakura_bark.json new file mode 100644 index 0000000..8096ba5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_planks_from_nether_sakura_bark.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:nether_sakura_bark" + } + ], + "result": { + "item": "betternether:nether_sakura_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_planks_from_nether_sakura_log.json b/src/main/resources/data/betternether/recipes/nether_sakura_planks_from_nether_sakura_log.json new file mode 100644 index 0000000..e522c6f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_planks_from_nether_sakura_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:nether_sakura_log" + } + ], + "result": { + "item": "betternether:nether_sakura_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_planks_from_striped_bark_nether_sakura.json b/src/main/resources/data/betternether/recipes/nether_sakura_planks_from_striped_bark_nether_sakura.json new file mode 100644 index 0000000..0131a4d --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_planks_from_striped_bark_nether_sakura.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_bark_nether_sakura" + } + ], + "result": { + "item": "betternether:nether_sakura_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_planks_from_striped_log_nether_sakura.json b/src/main/resources/data/betternether/recipes/nether_sakura_planks_from_striped_log_nether_sakura.json new file mode 100644 index 0000000..75ec5e0 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_planks_from_striped_log_nether_sakura.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_nether_sakura" + } + ], + "result": { + "item": "betternether:nether_sakura_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_plate_from_nether_sakura_planks.json b/src/main/resources/data/betternether/recipes/nether_sakura_plate_from_nether_sakura_planks.json new file mode 100644 index 0000000..f77af03 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_plate_from_nether_sakura_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:nether_sakura_plate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_slab_from_nether_sakura_planks.json b/src/main/resources/data/betternether/recipes/nether_sakura_slab_from_nether_sakura_planks.json new file mode 100644 index 0000000..4635c71 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_slab_from_nether_sakura_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:nether_sakura_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_stairs_from_nether_sakura_planks.json b/src/main/resources/data/betternether/recipes/nether_sakura_stairs_from_nether_sakura_planks.json new file mode 100644 index 0000000..2d61bbe --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_stairs_from_nether_sakura_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:nether_sakura_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_sakura_trapdoor_from_nether_sakura_planks.json b/src/main/resources/data/betternether/recipes/nether_sakura_trapdoor_from_nether_sakura_planks.json new file mode 100644 index 0000000..54a2090 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_sakura_trapdoor_from_nether_sakura_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + } + }, + "result": { + "item": "betternether:nether_sakura_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_tile_large.json b/src/main/resources/data/betternether/recipes/nether_tile_large.json new file mode 100644 index 0000000..4a4548a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_tile_large.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:nether_brick_slab" + } + }, + "result": { + "item": "betternether:nether_brick_tile_large", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/nether_tile_small.json b/src/main/resources/data/betternether/recipes/nether_tile_small.json new file mode 100644 index 0000000..a32086b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/nether_tile_small.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:nether_brick_tile_large" + } + }, + "result": { + "item": "betternether:nether_brick_tile_small", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/netherite_fire_bowl_from_netherite_block.json b/src/main/resources/data/betternether/recipes/netherite_fire_bowl_from_netherite_block.json new file mode 100644 index 0000000..652bf23 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/netherite_fire_bowl_from_netherite_block.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + " # ", + "L L" + ], + "key": { + "#": { + "item": "minecraft:netherite_block" + }, + "I": { + "item": "minecraft:netherite_ingot" + }, + "L": { + "item": "minecraft:netherrack" + } + }, + "result": { + "item": "betternether:netherite_fire_bowl" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/netherite_fire_bowl_soul_from_netherite_block.json b/src/main/resources/data/betternether/recipes/netherite_fire_bowl_soul_from_netherite_block.json new file mode 100644 index 0000000..dbd0285 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/netherite_fire_bowl_soul_from_netherite_block.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + " # ", + "L L" + ], + "key": { + "#": { + "item": "minecraft:netherite_block" + }, + "I": { + "item": "minecraft:netherite_ingot" + }, + "L": { + "item": "minecraft:soul_sand" + } + }, + "result": { + "item": "betternether:netherite_fire_bowl_soul" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/netherrack_furnace_from_netherrack.json b/src/main/resources/data/betternether/recipes/netherrack_furnace_from_netherrack.json new file mode 100644 index 0000000..6a24bb3 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/netherrack_furnace_from_netherrack.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "# #", + "###" + ], + "key": { + "#": { + "item": "minecraft:netherrack" + } + }, + "result": { + "item": "betternether:netherrack_furnace" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/netherrack_stalactite_from_netherrack.json b/src/main/resources/data/betternether/recipes/netherrack_stalactite_from_netherrack.json new file mode 100644 index 0000000..53c9ec6 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/netherrack_stalactite_from_netherrack.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:netherrack" + } + }, + "result": { + "item": "betternether:netherrack_stalactite" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/obsidian_bricks.json b/src/main/resources/data/betternether/recipes/obsidian_bricks.json new file mode 100644 index 0000000..e720e72 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/obsidian_bricks.json @@ -0,0 +1,16 @@ +{ + "type": "crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:obsidian_tile" + } + }, + "result": { + "item": "betternether:obsidian_bricks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/obsidian_bricks_slab_from_obsidian_bricks.json b/src/main/resources/data/betternether/recipes/obsidian_bricks_slab_from_obsidian_bricks.json new file mode 100644 index 0000000..069215c --- /dev/null +++ b/src/main/resources/data/betternether/recipes/obsidian_bricks_slab_from_obsidian_bricks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:obsidian_bricks" + } + }, + "result": { + "item": "betternether:obsidian_bricks_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/obsidian_bricks_stairs_from_obsidian_bricks.json b/src/main/resources/data/betternether/recipes/obsidian_bricks_stairs_from_obsidian_bricks.json new file mode 100644 index 0000000..7a683f1 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/obsidian_bricks_stairs_from_obsidian_bricks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:obsidian_bricks" + } + }, + "result": { + "item": "betternether:obsidian_bricks_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/obsidian_glass.json b/src/main/resources/data/betternether/recipes/obsidian_glass.json new file mode 100644 index 0000000..c0af095 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/obsidian_glass.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "minecraft:obsidian" + }, + "result": "betternether:obsidian_glass", + "experience": 0.0, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/obsidian_glass_pane.json b/src/main/resources/data/betternether/recipes/obsidian_glass_pane.json new file mode 100644 index 0000000..99a89cd --- /dev/null +++ b/src/main/resources/data/betternether/recipes/obsidian_glass_pane.json @@ -0,0 +1,16 @@ +{ + "type": "crafting_shaped", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:obsidian_glass" + } + }, + "result": { + "item": "betternether:obsidian_glass_pane", + "count": 16 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/obsidian_tile.json b/src/main/resources/data/betternether/recipes/obsidian_tile.json new file mode 100644 index 0000000..b7a97b1 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/obsidian_tile.json @@ -0,0 +1,16 @@ +{ + "type": "crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "minecraft:obsidian" + } + }, + "result": { + "item": "betternether:obsidian_tile", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/obsidian_tile_slab_from_obsidian_tile_small.json b/src/main/resources/data/betternether/recipes/obsidian_tile_slab_from_obsidian_tile_small.json new file mode 100644 index 0000000..62d1cae --- /dev/null +++ b/src/main/resources/data/betternether/recipes/obsidian_tile_slab_from_obsidian_tile_small.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:obsidian_tile_small" + } + }, + "result": { + "item": "betternether:obsidian_tile_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/obsidian_tile_small.json b/src/main/resources/data/betternether/recipes/obsidian_tile_small.json new file mode 100644 index 0000000..321b008 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/obsidian_tile_small.json @@ -0,0 +1,16 @@ +{ + "type": "crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:obsidian_bricks" + } + }, + "result": { + "item": "betternether:obsidian_tile_small", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/obsidian_tile_stairs_from_obsidian_tile_small.json b/src/main/resources/data/betternether/recipes/obsidian_tile_stairs_from_obsidian_tile_small.json new file mode 100644 index 0000000..9600802 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/obsidian_tile_stairs_from_obsidian_tile_small.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:obsidian_tile_small" + } + }, + "result": { + "item": "betternether:obsidian_tile_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/paper.json b/src/main/resources/data/betternether/recipes/paper.json new file mode 100644 index 0000000..e1688d6 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/paper.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "minecraft:paper", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/piston.json b/src/main/resources/data/betternether/recipes/piston.json new file mode 100644 index 0000000..30fb5d0 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/piston.json @@ -0,0 +1,25 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "TTT", + "#X#", + "#R#" + ], + "key": { + "R": { + "item": "minecraft:redstone" + }, + "#": { + "item": "minecraft:cobblestone" + }, + "T": { + "tag": "minecraft:planks" + }, + "X": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "minecraft:piston" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/quartz_glass.json b/src/main/resources/data/betternether/recipes/quartz_glass.json new file mode 100644 index 0000000..eea6093 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/quartz_glass.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "minecraft:quartz" + }, + "result": "betternether:quartz_glass", + "experience": 0.0, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/quartz_glass_framed.json b/src/main/resources/data/betternether/recipes/quartz_glass_framed.json new file mode 100644 index 0000000..7172429 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/quartz_glass_framed.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "G#G", + "# #", + "G#G" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + }, + "G": { + "item": "betternether:quartz_glass" + } + }, + "result": { + "item": "betternether:quartz_glass_framed", + "count": 8 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/quartz_glass_framed_pane.json b/src/main/resources/data/betternether/recipes/quartz_glass_framed_pane.json new file mode 100644 index 0000000..fc86a6a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/quartz_glass_framed_pane.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:quartz_glass_framed" + } + }, + "result": { + "item": "betternether:quartz_glass_framed_pane", + "count": 16 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/quartz_glass_pane.json b/src/main/resources/data/betternether/recipes/quartz_glass_pane.json new file mode 100644 index 0000000..76958bc --- /dev/null +++ b/src/main/resources/data/betternether/recipes/quartz_glass_pane.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:quartz_glass" + } + }, + "result": { + "item": "betternether:quartz_glass_pane", + "count": 16 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rail.json b/src/main/resources/data/betternether/recipes/rail.json new file mode 100644 index 0000000..f4c0dbe --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rail.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "X X", + "X#X", + "X X" + ], + "key": { + "#": { + "item": "minecraft:stick" + }, + "X": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "minecraft:rail", + "count": 16 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/red_dye.json b/src/main/resources/data/betternether/recipes/red_dye.json new file mode 100644 index 0000000..8100d44 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/red_dye.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#" + ], + "key": { + "#": { + "item": "betternether:red_mold" + } + }, + "result": { + "item": "minecraft:red_dye", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/reed_block.json b/src/main/resources/data/betternether/recipes/reed_block.json new file mode 100644 index 0000000..ad67b84 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/reed_block.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "betternether:reeds_block" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/reed_from_block.json b/src/main/resources/data/betternether/recipes/reed_from_block.json new file mode 100644 index 0000000..a7ee63c --- /dev/null +++ b/src/main/resources/data/betternether/recipes/reed_from_block.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:nether_reed", + "count": 36 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/reeds_button_from_reeds_block.json b/src/main/resources/data/betternether/recipes/reeds_button_from_reeds_block.json new file mode 100644 index 0000000..509fbbf --- /dev/null +++ b/src/main/resources/data/betternether/recipes/reeds_button_from_reeds_block.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:reeds_block" + } + ], + "result": { + "item": "betternether:reeds_button" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/reeds_door_from_reeds_block.json b/src/main/resources/data/betternether/recipes/reeds_door_from_reeds_block.json new file mode 100644 index 0000000..6537120 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/reeds_door_from_reeds_block.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:reeds_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/reeds_fence_from_reeds_block.json b/src/main/resources/data/betternether/recipes/reeds_fence_from_reeds_block.json new file mode 100644 index 0000000..9245cef --- /dev/null +++ b/src/main/resources/data/betternether/recipes/reeds_fence_from_reeds_block.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:reeds_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/reeds_gate_from_reeds_block.json b/src/main/resources/data/betternether/recipes/reeds_gate_from_reeds_block.json new file mode 100644 index 0000000..894cff0 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/reeds_gate_from_reeds_block.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:reeds_gate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/reeds_ladder_from_reeds_block.json b/src/main/resources/data/betternether/recipes/reeds_ladder_from_reeds_block.json new file mode 100644 index 0000000..2b7d340 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/reeds_ladder_from_reeds_block.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:reeds_ladder" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/reeds_plate_from_reeds_block.json b/src/main/resources/data/betternether/recipes/reeds_plate_from_reeds_block.json new file mode 100644 index 0000000..82fdc62 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/reeds_plate_from_reeds_block.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:reeds_plate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/reeds_slab_from_reeds_block.json b/src/main/resources/data/betternether/recipes/reeds_slab_from_reeds_block.json new file mode 100644 index 0000000..2094bef --- /dev/null +++ b/src/main/resources/data/betternether/recipes/reeds_slab_from_reeds_block.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:reeds_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/reeds_stairs_from_reeds_block.json b/src/main/resources/data/betternether/recipes/reeds_stairs_from_reeds_block.json new file mode 100644 index 0000000..53f2d28 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/reeds_stairs_from_reeds_block.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:reeds_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/reeds_trapdoor_from_reeds_block.json b/src/main/resources/data/betternether/recipes/reeds_trapdoor_from_reeds_block.json new file mode 100644 index 0000000..e54c8fe --- /dev/null +++ b/src/main/resources/data/betternether/recipes/reeds_trapdoor_from_reeds_block.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:reeds_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_cincinnasite_from_cincinnasite_forged.json b/src/main/resources/data/betternether/recipes/roof_tile_cincinnasite_from_cincinnasite_forged.json new file mode 100644 index 0000000..8d76636 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_cincinnasite_from_cincinnasite_forged.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# #", + "###", + " # " + ], + "key": { + "#": { + "item": "betternether:cincinnasite_forged" + } + }, + "result": { + "item": "betternether:roof_tile_cincinnasite", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json b/src/main/resources/data/betternether/recipes/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json new file mode 100644 index 0000000..c884eb9 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_cincinnasite_slab_from_roof_tile_cincinnasite.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_cincinnasite" + } + }, + "result": { + "item": "betternether:roof_tile_cincinnasite_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json b/src/main/resources/data/betternether/recipes/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json new file mode 100644 index 0000000..8033334 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_cincinnasite_stairs_from_roof_tile_cincinnasite.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_cincinnasite" + } + }, + "result": { + "item": "betternether:roof_tile_cincinnasite_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_nether_bricks_from_nether_bricks.json b/src/main/resources/data/betternether/recipes/roof_tile_nether_bricks_from_nether_bricks.json new file mode 100644 index 0000000..e216bb5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_nether_bricks_from_nether_bricks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# #", + "###", + " # " + ], + "key": { + "#": { + "item": "minecraft:nether_bricks" + } + }, + "result": { + "item": "betternether:roof_tile_nether_bricks", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json b/src/main/resources/data/betternether/recipes/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json new file mode 100644 index 0000000..918fad1 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_nether_bricks_slab_from_roof_tile_nether_bricks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_nether_bricks" + } + }, + "result": { + "item": "betternether:roof_tile_nether_bricks_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json b/src/main/resources/data/betternether/recipes/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json new file mode 100644 index 0000000..acc08c0 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_nether_bricks_stairs_from_roof_tile_nether_bricks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_nether_bricks" + } + }, + "result": { + "item": "betternether:roof_tile_nether_bricks_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_reeds_from_reeds_block.json b/src/main/resources/data/betternether/recipes/roof_tile_reeds_from_reeds_block.json new file mode 100644 index 0000000..51ebdaa --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_reeds_from_reeds_block.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# #", + "###", + " # " + ], + "key": { + "#": { + "item": "betternether:reeds_block" + } + }, + "result": { + "item": "betternether:roof_tile_reeds", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_reeds_slab_from_roof_tile_reeds.json b/src/main/resources/data/betternether/recipes/roof_tile_reeds_slab_from_roof_tile_reeds.json new file mode 100644 index 0000000..d26f1cd --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_reeds_slab_from_roof_tile_reeds.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_reeds" + } + }, + "result": { + "item": "betternether:roof_tile_reeds_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_reeds_stairs_from_roof_tile_reeds.json b/src/main/resources/data/betternether/recipes/roof_tile_reeds_stairs_from_roof_tile_reeds.json new file mode 100644 index 0000000..ac0a8aa --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_reeds_stairs_from_roof_tile_reeds.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_reeds" + } + }, + "result": { + "item": "betternether:roof_tile_reeds_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_stalagnate_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/roof_tile_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..5ff2aba --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# #", + "###", + " # " + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:roof_tile_stalagnate", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json b/src/main/resources/data/betternether/recipes/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json new file mode 100644 index 0000000..fea7153 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_stalagnate_slab_from_roof_tile_stalagnate.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_stalagnate" + } + }, + "result": { + "item": "betternether:roof_tile_stalagnate_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json b/src/main/resources/data/betternether/recipes/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json new file mode 100644 index 0000000..bd772b5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_stalagnate_stairs_from_roof_tile_stalagnate.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_stalagnate" + } + }, + "result": { + "item": "betternether:roof_tile_stalagnate_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_wart_from_wart_planks.json b/src/main/resources/data/betternether/recipes/roof_tile_wart_from_wart_planks.json new file mode 100644 index 0000000..78a197a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_wart_from_wart_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# #", + "###", + " # " + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:roof_tile_wart", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_wart_slab_from_roof_tile_wart.json b/src/main/resources/data/betternether/recipes/roof_tile_wart_slab_from_roof_tile_wart.json new file mode 100644 index 0000000..90ea8cb --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_wart_slab_from_roof_tile_wart.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_wart" + } + }, + "result": { + "item": "betternether:roof_tile_wart_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_wart_stairs_from_roof_tile_wart.json b/src/main/resources/data/betternether/recipes/roof_tile_wart_stairs_from_roof_tile_wart.json new file mode 100644 index 0000000..03c36ca --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_wart_stairs_from_roof_tile_wart.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_wart" + } + }, + "result": { + "item": "betternether:roof_tile_wart_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_willow_from_willow_planks.json b/src/main/resources/data/betternether/recipes/roof_tile_willow_from_willow_planks.json new file mode 100644 index 0000000..75caee5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_willow_from_willow_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# #", + "###", + " # " + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:roof_tile_willow", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_willow_slab_from_roof_tile_willow.json b/src/main/resources/data/betternether/recipes/roof_tile_willow_slab_from_roof_tile_willow.json new file mode 100644 index 0000000..b7bf954 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_willow_slab_from_roof_tile_willow.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_willow" + } + }, + "result": { + "item": "betternether:roof_tile_willow_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/roof_tile_willow_stairs_from_roof_tile_willow.json b/src/main/resources/data/betternether/recipes/roof_tile_willow_stairs_from_roof_tile_willow.json new file mode 100644 index 0000000..8a59eef --- /dev/null +++ b/src/main/resources/data/betternether/recipes/roof_tile_willow_stairs_from_roof_tile_willow.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:roof_tile_willow" + } + }, + "result": { + "item": "betternether:roof_tile_willow_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_bark_from_rubeus_log.json b/src/main/resources/data/betternether/recipes/rubeus_bark_from_rubeus_log.json new file mode 100644 index 0000000..325d54a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_bark_from_rubeus_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:rubeus_log" + } + }, + "result": { + "item": "betternether:rubeus_bark", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_button_from_rubeus_planks.json b/src/main/resources/data/betternether/recipes/rubeus_button_from_rubeus_planks.json new file mode 100644 index 0000000..437aaa7 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_button_from_rubeus_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:rubeus_planks" + } + ], + "result": { + "item": "betternether:rubeus_button" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_door_from_rubeus_planks.json b/src/main/resources/data/betternether/recipes/rubeus_door_from_rubeus_planks.json new file mode 100644 index 0000000..51e5904 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_door_from_rubeus_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:rubeus_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_fence_from_rubeus_planks.json b/src/main/resources/data/betternether/recipes/rubeus_fence_from_rubeus_planks.json new file mode 100644 index 0000000..04e4a4d --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_fence_from_rubeus_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:rubeus_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_gate_from_rubeus_planks.json b/src/main/resources/data/betternether/recipes/rubeus_gate_from_rubeus_planks.json new file mode 100644 index 0000000..20a5458 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_gate_from_rubeus_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:rubeus_gate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_ladder_from_rubeus_planks.json b/src/main/resources/data/betternether/recipes/rubeus_ladder_from_rubeus_planks.json new file mode 100644 index 0000000..f194d38 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_ladder_from_rubeus_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:rubeus_ladder" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_planks_from_rubeus_bark.json b/src/main/resources/data/betternether/recipes/rubeus_planks_from_rubeus_bark.json new file mode 100644 index 0000000..6725932 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_planks_from_rubeus_bark.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:rubeus_bark" + } + ], + "result": { + "item": "betternether:rubeus_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_planks_from_rubeus_log.json b/src/main/resources/data/betternether/recipes/rubeus_planks_from_rubeus_log.json new file mode 100644 index 0000000..05cc09c --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_planks_from_rubeus_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:rubeus_log" + } + ], + "result": { + "item": "betternether:rubeus_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_planks_from_striped_bark_rubeus.json b/src/main/resources/data/betternether/recipes/rubeus_planks_from_striped_bark_rubeus.json new file mode 100644 index 0000000..a4ee4d7 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_planks_from_striped_bark_rubeus.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_bark_rubeus" + } + ], + "result": { + "item": "betternether:rubeus_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_planks_from_striped_log_rubeus.json b/src/main/resources/data/betternether/recipes/rubeus_planks_from_striped_log_rubeus.json new file mode 100644 index 0000000..7e6c9ab --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_planks_from_striped_log_rubeus.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_rubeus" + } + ], + "result": { + "item": "betternether:rubeus_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_plate_from_rubeus_planks.json b/src/main/resources/data/betternether/recipes/rubeus_plate_from_rubeus_planks.json new file mode 100644 index 0000000..cac95ae --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_plate_from_rubeus_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:rubeus_plate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_slab_from_rubeus_planks.json b/src/main/resources/data/betternether/recipes/rubeus_slab_from_rubeus_planks.json new file mode 100644 index 0000000..fdd78e2 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_slab_from_rubeus_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:rubeus_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_stairs_from_rubeus_planks.json b/src/main/resources/data/betternether/recipes/rubeus_stairs_from_rubeus_planks.json new file mode 100644 index 0000000..75b934a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_stairs_from_rubeus_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:rubeus_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/rubeus_trapdoor_from_rubeus_planks.json b/src/main/resources/data/betternether/recipes/rubeus_trapdoor_from_rubeus_planks.json new file mode 100644 index 0000000..dd4652f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/rubeus_trapdoor_from_rubeus_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + } + }, + "result": { + "item": "betternether:rubeus_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/shears.json b/src/main/resources/data/betternether/recipes/shears.json new file mode 100644 index 0000000..2ed217b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/shears.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + " #", + "# " + ], + "key": { + "#": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "betternether:cincinnasite_shears" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/shield.json b/src/main/resources/data/betternether/recipes/shield.json new file mode 100644 index 0000000..2581d79 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/shield.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "WoW", + "WWW", + " W " + ], + "key": { + "W": { + "tag": "minecraft:planks" + }, + "o": { + "item": "betternether:cincinnasite_ingot" + } + }, + "result": { + "item": "minecraft:shield" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/sign_anchor_tree_from_anchor_tree_planks.json b/src/main/resources/data/betternether/recipes/sign_anchor_tree_from_anchor_tree_planks.json new file mode 100644 index 0000000..881576c --- /dev/null +++ b/src/main/resources/data/betternether/recipes/sign_anchor_tree_from_anchor_tree_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:anchor_tree_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_anchor_tree" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/sign_mushroom_fir_from_mushroom_fir_planks.json b/src/main/resources/data/betternether/recipes/sign_mushroom_fir_from_mushroom_fir_planks.json new file mode 100644 index 0000000..ae08be9 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/sign_mushroom_fir_from_mushroom_fir_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/sign_mushroom_from_mushroom_planks.json b/src/main/resources/data/betternether/recipes/sign_mushroom_from_mushroom_planks.json new file mode 100644 index 0000000..f979efa --- /dev/null +++ b/src/main/resources/data/betternether/recipes/sign_mushroom_from_mushroom_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:mushroom_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_mushroom" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/sign_nether_sakura_from_nether_sakura_planks.json b/src/main/resources/data/betternether/recipes/sign_nether_sakura_from_nether_sakura_planks.json new file mode 100644 index 0000000..9cb8ed0 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/sign_nether_sakura_from_nether_sakura_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:nether_sakura_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_nether_sakura" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/sign_reed_from_reeds_block.json b/src/main/resources/data/betternether/recipes/sign_reed_from_reeds_block.json new file mode 100644 index 0000000..3f74a6b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/sign_reed_from_reeds_block.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:reeds_block" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_reed" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/sign_rubeus_from_rubeus_planks.json b/src/main/resources/data/betternether/recipes/sign_rubeus_from_rubeus_planks.json new file mode 100644 index 0000000..3e72b83 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/sign_rubeus_from_rubeus_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:rubeus_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_rubeus" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/sign_stalagnate_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/sign_stalagnate_from_stalagnate_planks.json new file mode 100644 index 0000000..4b88953 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/sign_stalagnate_from_stalagnate_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_stalagnate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/sign_wart_from_wart_planks.json b/src/main/resources/data/betternether/recipes/sign_wart_from_wart_planks.json new file mode 100644 index 0000000..4e1c17d --- /dev/null +++ b/src/main/resources/data/betternether/recipes/sign_wart_from_wart_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:wart_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_wart" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/sign_willow_from_willow_planks.json b/src/main/resources/data/betternether/recipes/sign_willow_from_willow_planks.json new file mode 100644 index 0000000..fca46a5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/sign_willow_from_willow_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###", + " I " + ], + "key": { + "#": { + "item": "betternether:willow_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:sign_willow" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/soul_sandstone.json b/src/main/resources/data/betternether/recipes/soul_sandstone.json new file mode 100644 index 0000000..d4b1958 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/soul_sandstone.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "tag": "c:soul_ground" + } + }, + "result": { + "item": "betternether:soul_sandstone", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/soul_sandstone_chiseled_from_soul_sandstone_smooth.json b/src/main/resources/data/betternether/recipes/soul_sandstone_chiseled_from_soul_sandstone_smooth.json new file mode 100644 index 0000000..e64867f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/soul_sandstone_chiseled_from_soul_sandstone_smooth.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_smooth" + } + }, + "result": { + "item": "betternether:soul_sandstone_chiseled", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/soul_sandstone_cut_from_soul_sandstone.json b/src/main/resources/data/betternether/recipes/soul_sandstone_cut_from_soul_sandstone.json new file mode 100644 index 0000000..ade6734 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/soul_sandstone_cut_from_soul_sandstone.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone" + } + }, + "result": { + "item": "betternether:soul_sandstone_cut", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/soul_sandstone_cut_slab_from_soul_sandstone_cut.json b/src/main/resources/data/betternether/recipes/soul_sandstone_cut_slab_from_soul_sandstone_cut.json new file mode 100644 index 0000000..e8eeeb5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/soul_sandstone_cut_slab_from_soul_sandstone_cut.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_cut" + } + }, + "result": { + "item": "betternether:soul_sandstone_cut_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json b/src/main/resources/data/betternether/recipes/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json new file mode 100644 index 0000000..55b4dc9 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/soul_sandstone_cut_stairs_from_soul_sandstone_cut.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_cut" + } + }, + "result": { + "item": "betternether:soul_sandstone_cut_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/soul_sandstone_slab_from_soul_sandstone.json b/src/main/resources/data/betternether/recipes/soul_sandstone_slab_from_soul_sandstone.json new file mode 100644 index 0000000..98c96ae --- /dev/null +++ b/src/main/resources/data/betternether/recipes/soul_sandstone_slab_from_soul_sandstone.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone" + } + }, + "result": { + "item": "betternether:soul_sandstone_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/soul_sandstone_smooth_from_soul_sandstone_cut.json b/src/main/resources/data/betternether/recipes/soul_sandstone_smooth_from_soul_sandstone_cut.json new file mode 100644 index 0000000..d1a0f21 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/soul_sandstone_smooth_from_soul_sandstone_cut.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_cut" + } + }, + "result": { + "item": "betternether:soul_sandstone_smooth", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json b/src/main/resources/data/betternether/recipes/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json new file mode 100644 index 0000000..5591a3b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/soul_sandstone_smooth_slab_from_soul_sandstone_smooth.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_smooth" + } + }, + "result": { + "item": "betternether:soul_sandstone_smooth_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json b/src/main/resources/data/betternether/recipes/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json new file mode 100644 index 0000000..2198171 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/soul_sandstone_smooth_stairs_from_soul_sandstone_smooth.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_smooth" + } + }, + "result": { + "item": "betternether:soul_sandstone_smooth_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/soul_sandstone_stairs_from_soul_sandstone.json b/src/main/resources/data/betternether/recipes/soul_sandstone_stairs_from_soul_sandstone.json new file mode 100644 index 0000000..2ee5c07 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/soul_sandstone_stairs_from_soul_sandstone.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone" + } + }, + "result": { + "item": "betternether:soul_sandstone_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/soul_sandstone_wall_from_soul_sandstone_cut.json b/src/main/resources/data/betternether/recipes/soul_sandstone_wall_from_soul_sandstone_cut.json new file mode 100644 index 0000000..a1c4398 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/soul_sandstone_wall_from_soul_sandstone_cut.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:soul_sandstone_cut" + } + }, + "result": { + "item": "betternether:soul_sandstone_wall", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_bark_from_stalagnate_log.json b/src/main/resources/data/betternether/recipes/stalagnate_bark_from_stalagnate_log.json new file mode 100644 index 0000000..7fb4291 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_bark_from_stalagnate_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:stalagnate_log" + } + }, + "result": { + "item": "betternether:stalagnate_bark", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_bowl.json b/src/main/resources/data/betternether/recipes/stalagnate_bowl.json new file mode 100644 index 0000000..6b1d50f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_bowl.json @@ -0,0 +1 @@ +{ "type": "minecraft:crafting_shaped", "pattern": [ "# #", " # " ], "key": { "#": { "item": "betternether:stalagnate_stem" } }, "result": { "item": "betternether:stalagnate_bowl", "count": 3 } } \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_bowl_apple.json b/src/main/resources/data/betternether/recipes/stalagnate_bowl_apple.json new file mode 100644 index 0000000..2d7c723 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_bowl_apple.json @@ -0,0 +1 @@ +{ "type": "minecraft:crafting_shaped", "pattern": [ "W", "#" ], "key": { "#": { "item": "betternether:stalagnate_bowl" }, "W": { "item": "betternether:black_apple" } }, "result": { "item": "betternether:stalagnate_bowl_apple" } } \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_bowl_mushroom.json b/src/main/resources/data/betternether/recipes/stalagnate_bowl_mushroom.json new file mode 100644 index 0000000..ccf3259 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_bowl_mushroom.json @@ -0,0 +1 @@ +{ "type": "minecraft:crafting_shapeless", "ingredients": [ { "item": "minecraft:brown_mushroom" }, { "item": "minecraft:red_mushroom" }, { "item": "betternether:stalagnate_bowl" } ], "result": { "item": "betternether:stalagnate_bowl_mushroom" } } \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_bowl_wart.json b/src/main/resources/data/betternether/recipes/stalagnate_bowl_wart.json new file mode 100644 index 0000000..b9c8dd2 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_bowl_wart.json @@ -0,0 +1 @@ +{ "type": "minecraft:crafting_shapeless", "ingredients": [ { "item": "betternether:stalagnate_bowl" }, { "item": "minecraft:nether_wart" }, { "item": "minecraft:nether_wart" }, { "item": "minecraft:nether_wart" } ], "result": { "item": "betternether:stalagnate_bowl_wart" } } \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_ladder_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/stalagnate_ladder_from_stalagnate_planks.json new file mode 100644 index 0000000..9e5fd10 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_ladder_from_stalagnate_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:stalagnate_ladder" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_log_from_stalagnate_stem.json b/src/main/resources/data/betternether/recipes/stalagnate_log_from_stalagnate_stem.json new file mode 100644 index 0000000..33879ea --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_log_from_stalagnate_stem.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:stalagnate_stem" + } + }, + "result": { + "item": "betternether:stalagnate_log" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_planks_button_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/stalagnate_planks_button_from_stalagnate_planks.json new file mode 100644 index 0000000..b4d6c37 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_planks_button_from_stalagnate_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:stalagnate_planks" + } + ], + "result": { + "item": "betternether:stalagnate_planks_button" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_planks_door_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/stalagnate_planks_door_from_stalagnate_planks.json new file mode 100644 index 0000000..7caac0f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_planks_door_from_stalagnate_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:stalagnate_planks_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_planks_fence_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/stalagnate_planks_fence_from_stalagnate_planks.json new file mode 100644 index 0000000..f0bba64 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_planks_fence_from_stalagnate_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:stalagnate_planks_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_planks_from_stalagnate_bark.json b/src/main/resources/data/betternether/recipes/stalagnate_planks_from_stalagnate_bark.json new file mode 100644 index 0000000..5420f76 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_planks_from_stalagnate_bark.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:stalagnate_bark" + } + ], + "result": { + "item": "betternether:stalagnate_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_planks_from_stalagnate_log.json b/src/main/resources/data/betternether/recipes/stalagnate_planks_from_stalagnate_log.json new file mode 100644 index 0000000..81b7d4e --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_planks_from_stalagnate_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:stalagnate_log" + } + ], + "result": { + "item": "betternether:stalagnate_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_planks_from_stalagnate_stem.json b/src/main/resources/data/betternether/recipes/stalagnate_planks_from_stalagnate_stem.json new file mode 100644 index 0000000..bd28871 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_planks_from_stalagnate_stem.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:stalagnate_stem" + } + ], + "result": { + "item": "betternether:stalagnate_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_planks_from_striped_bark_stalagnate.json b/src/main/resources/data/betternether/recipes/stalagnate_planks_from_striped_bark_stalagnate.json new file mode 100644 index 0000000..73c41a6 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_planks_from_striped_bark_stalagnate.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_bark_stalagnate" + } + ], + "result": { + "item": "betternether:stalagnate_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_planks_from_striped_log_stalagnate.json b/src/main/resources/data/betternether/recipes/stalagnate_planks_from_striped_log_stalagnate.json new file mode 100644 index 0000000..9f44a64 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_planks_from_striped_log_stalagnate.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_stalagnate" + } + ], + "result": { + "item": "betternether:stalagnate_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_planks_gate_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/stalagnate_planks_gate_from_stalagnate_planks.json new file mode 100644 index 0000000..56f4625 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_planks_gate_from_stalagnate_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:stalagnate_planks_gate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_planks_plate_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/stalagnate_planks_plate_from_stalagnate_planks.json new file mode 100644 index 0000000..d43abab --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_planks_plate_from_stalagnate_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:stalagnate_planks_plate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_planks_slab_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/stalagnate_planks_slab_from_stalagnate_planks.json new file mode 100644 index 0000000..f829606 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_planks_slab_from_stalagnate_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:stalagnate_planks_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_planks_stairs_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/stalagnate_planks_stairs_from_stalagnate_planks.json new file mode 100644 index 0000000..9f1f9df --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_planks_stairs_from_stalagnate_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:stalagnate_planks_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stalagnate_planks_trapdoor_from_stalagnate_planks.json b/src/main/resources/data/betternether/recipes/stalagnate_planks_trapdoor_from_stalagnate_planks.json new file mode 100644 index 0000000..d5fc1d0 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stalagnate_planks_trapdoor_from_stalagnate_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks" + } + }, + "result": { + "item": "betternether:stalagnate_planks_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/stick.json b/src/main/resources/data/betternether/recipes/stick.json new file mode 100644 index 0000000..61ada6f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/stick.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#", + "#" + ], + "key": { + "#": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "minecraft:stick", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/sugar.json b/src/main/resources/data/betternether/recipes/sugar.json new file mode 100644 index 0000000..e6881b1 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/sugar.json @@ -0,0 +1,14 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#" + ], + "key": { + "#": { + "item": "betternether:nether_reed" + } + }, + "result": { + "item": "minecraft:sugar" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_acacia_from_acacia_slab.json b/src/main/resources/data/betternether/recipes/taburet_acacia_from_acacia_slab.json new file mode 100644 index 0000000..28efc1f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_acacia_from_acacia_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:acacia_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_acacia" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_anchor_tree_from_anchor_tree_slab.json b/src/main/resources/data/betternether/recipes/taburet_anchor_tree_from_anchor_tree_slab.json new file mode 100644 index 0000000..c78f045 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_anchor_tree_from_anchor_tree_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:anchor_tree_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_anchor_tree" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_birch_from_birch_slab.json b/src/main/resources/data/betternether/recipes/taburet_birch_from_birch_slab.json new file mode 100644 index 0000000..a52d654 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_birch_from_birch_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:birch_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_birch" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_cincinnasite_from_cincinnasite_slab.json b/src/main/resources/data/betternether/recipes/taburet_cincinnasite_from_cincinnasite_slab.json new file mode 100644 index 0000000..c8aa4a3 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_cincinnasite_from_cincinnasite_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:cincinnasite_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_cincinnasite" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_crimson_from_crimson_slab.json b/src/main/resources/data/betternether/recipes/taburet_crimson_from_crimson_slab.json new file mode 100644 index 0000000..f99bda7 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_crimson_from_crimson_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:crimson_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_crimson" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_dark_oak_from_dark_oak_slab.json b/src/main/resources/data/betternether/recipes/taburet_dark_oak_from_dark_oak_slab.json new file mode 100644 index 0000000..b0fc1be --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_dark_oak_from_dark_oak_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:dark_oak_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_dark_oak" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_jungle_from_jungle_slab.json b/src/main/resources/data/betternether/recipes/taburet_jungle_from_jungle_slab.json new file mode 100644 index 0000000..cf10bc1 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_jungle_from_jungle_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:jungle_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_jungle" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_mushroom_fir_from_mushroom_fir_slab.json b/src/main/resources/data/betternether/recipes/taburet_mushroom_fir_from_mushroom_fir_slab.json new file mode 100644 index 0000000..7fb0e04 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_mushroom_fir_from_mushroom_fir_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:mushroom_fir_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_mushroom_fir" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_mushroom_from_mushroom_slab.json b/src/main/resources/data/betternether/recipes/taburet_mushroom_from_mushroom_slab.json new file mode 100644 index 0000000..3c58d2a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_mushroom_from_mushroom_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:mushroom_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_mushroom" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_nether_sakura_from_nether_sakura_slab.json b/src/main/resources/data/betternether/recipes/taburet_nether_sakura_from_nether_sakura_slab.json new file mode 100644 index 0000000..fdb1425 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_nether_sakura_from_nether_sakura_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:nether_sakura_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_nether_sakura" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_oak_from_oak_slab.json b/src/main/resources/data/betternether/recipes/taburet_oak_from_oak_slab.json new file mode 100644 index 0000000..e2843af --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_oak_from_oak_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:oak_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_oak" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_reeds_from_reeds_slab.json b/src/main/resources/data/betternether/recipes/taburet_reeds_from_reeds_slab.json new file mode 100644 index 0000000..2487fe2 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_reeds_from_reeds_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:reeds_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_reeds" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_rubeus_from_rubeus_slab.json b/src/main/resources/data/betternether/recipes/taburet_rubeus_from_rubeus_slab.json new file mode 100644 index 0000000..fd8dcef --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_rubeus_from_rubeus_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:rubeus_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_rubeus" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_spruce_from_spruce_slab.json b/src/main/resources/data/betternether/recipes/taburet_spruce_from_spruce_slab.json new file mode 100644 index 0000000..b75ba4c --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_spruce_from_spruce_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:spruce_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_spruce" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_stalagnate_from_stalagnate_planks_slab.json b/src/main/resources/data/betternether/recipes/taburet_stalagnate_from_stalagnate_planks_slab.json new file mode 100644 index 0000000..a9ef859 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_stalagnate_from_stalagnate_planks_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:stalagnate_planks_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_stalagnate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_warped_from_warped_slab.json b/src/main/resources/data/betternether/recipes/taburet_warped_from_warped_slab.json new file mode 100644 index 0000000..6b1a5e6 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_warped_from_warped_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "minecraft:warped_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_warped" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_wart_from_wart_slab.json b/src/main/resources/data/betternether/recipes/taburet_wart_from_wart_slab.json new file mode 100644 index 0000000..c4732a9 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_wart_from_wart_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:wart_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_wart" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/taburet_willow_from_willow_slab.json b/src/main/resources/data/betternether/recipes/taburet_willow_from_willow_slab.json new file mode 100644 index 0000000..5465229 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/taburet_willow_from_willow_slab.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "II" + ], + "key": { + "#": { + "item": "betternether:willow_slab" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:taburet_willow" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wall_moss.json b/src/main/resources/data/betternether/recipes/wall_moss.json new file mode 100644 index 0000000..e714a28 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wall_moss.json @@ -0,0 +1,14 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "#" + ], + "key": { + "#": { + "item": "betternether:nether_grass" + } + }, + "result": { + "item": "betternether:wall_moss" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/warped_ladder_from_warped_planks.json b/src/main/resources/data/betternether/recipes/warped_ladder_from_warped_planks.json new file mode 100644 index 0000000..3cded2c --- /dev/null +++ b/src/main/resources/data/betternether/recipes/warped_ladder_from_warped_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "minecraft:warped_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:warped_ladder" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_bark_from_wart_log.json b/src/main/resources/data/betternether/recipes/wart_bark_from_wart_log.json new file mode 100644 index 0000000..2ac353e --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_bark_from_wart_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:wart_log" + } + }, + "result": { + "item": "betternether:wart_bark", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_button_from_wart_planks.json b/src/main/resources/data/betternether/recipes/wart_button_from_wart_planks.json new file mode 100644 index 0000000..897577b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_button_from_wart_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:wart_planks" + } + ], + "result": { + "item": "betternether:wart_button" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_door_from_wart_planks.json b/src/main/resources/data/betternether/recipes/wart_door_from_wart_planks.json new file mode 100644 index 0000000..b70ef67 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_door_from_wart_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:wart_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_fence_from_wart_planks.json b/src/main/resources/data/betternether/recipes/wart_fence_from_wart_planks.json new file mode 100644 index 0000000..142b1ed --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_fence_from_wart_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:wart_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_gate_from_wart_planks.json b/src/main/resources/data/betternether/recipes/wart_gate_from_wart_planks.json new file mode 100644 index 0000000..7192da1 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_gate_from_wart_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:wart_gate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_ladder_from_wart_planks.json b/src/main/resources/data/betternether/recipes/wart_ladder_from_wart_planks.json new file mode 100644 index 0000000..071b0c5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_ladder_from_wart_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:wart_ladder" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_planks_from_striped_bark_wart.json b/src/main/resources/data/betternether/recipes/wart_planks_from_striped_bark_wart.json new file mode 100644 index 0000000..a8de183 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_planks_from_striped_bark_wart.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_bark_wart" + } + ], + "result": { + "item": "betternether:wart_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_planks_from_striped_log_wart.json b/src/main/resources/data/betternether/recipes/wart_planks_from_striped_log_wart.json new file mode 100644 index 0000000..fdc947c --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_planks_from_striped_log_wart.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_wart" + } + ], + "result": { + "item": "betternether:wart_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_planks_from_wart_bark.json b/src/main/resources/data/betternether/recipes/wart_planks_from_wart_bark.json new file mode 100644 index 0000000..9fa74da --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_planks_from_wart_bark.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:wart_bark" + } + ], + "result": { + "item": "betternether:wart_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_planks_from_wart_log.json b/src/main/resources/data/betternether/recipes/wart_planks_from_wart_log.json new file mode 100644 index 0000000..7f38bc5 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_planks_from_wart_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:wart_log" + } + ], + "result": { + "item": "betternether:wart_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_plate_from_wart_planks.json b/src/main/resources/data/betternether/recipes/wart_plate_from_wart_planks.json new file mode 100644 index 0000000..46a058e --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_plate_from_wart_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:wart_plate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_slab_from_wart_planks.json b/src/main/resources/data/betternether/recipes/wart_slab_from_wart_planks.json new file mode 100644 index 0000000..b06a9c2 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_slab_from_wart_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:wart_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_stairs_from_wart_planks.json b/src/main/resources/data/betternether/recipes/wart_stairs_from_wart_planks.json new file mode 100644 index 0000000..9cc6d6e --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_stairs_from_wart_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:wart_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/wart_trapdoor_from_wart_planks.json b/src/main/resources/data/betternether/recipes/wart_trapdoor_from_wart_planks.json new file mode 100644 index 0000000..9d6b648 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/wart_trapdoor_from_wart_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:wart_planks" + } + }, + "result": { + "item": "betternether:wart_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_bark_from_willow_log.json b/src/main/resources/data/betternether/recipes/willow_bark_from_willow_log.json new file mode 100644 index 0000000..8e6a866 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_bark_from_willow_log.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:willow_log" + } + }, + "result": { + "item": "betternether:willow_bark", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_button_from_willow_planks.json b/src/main/resources/data/betternether/recipes/willow_button_from_willow_planks.json new file mode 100644 index 0000000..40767b0 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_button_from_willow_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:willow_planks" + } + ], + "result": { + "item": "betternether:willow_button" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_door_from_willow_planks.json b/src/main/resources/data/betternether/recipes/willow_door_from_willow_planks.json new file mode 100644 index 0000000..a6f47d1 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_door_from_willow_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##", + "##", + "##" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:willow_door", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_fence_from_willow_planks.json b/src/main/resources/data/betternether/recipes/willow_fence_from_willow_planks.json new file mode 100644 index 0000000..1592127 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_fence_from_willow_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "#I#", + "#I#" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:willow_fence", + "count": 3 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_gate_from_willow_planks.json b/src/main/resources/data/betternether/recipes/willow_gate_from_willow_planks.json new file mode 100644 index 0000000..e5cd2d7 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_gate_from_willow_planks.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I#I", + "I#I" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:willow_gate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_ladder_from_willow_planks.json b/src/main/resources/data/betternether/recipes/willow_ladder_from_willow_planks.json new file mode 100644 index 0000000..757892b --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_ladder_from_willow_planks.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "I I", + "I#I", + "I I" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + }, + "I": { + "item": "minecraft:stick" + } + }, + "result": { + "item": "betternether:willow_ladder" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_planks_from_striped_bark_willow.json b/src/main/resources/data/betternether/recipes/willow_planks_from_striped_bark_willow.json new file mode 100644 index 0000000..149d361 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_planks_from_striped_bark_willow.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_bark_willow" + } + ], + "result": { + "item": "betternether:willow_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_planks_from_striped_log_willow.json b/src/main/resources/data/betternether/recipes/willow_planks_from_striped_log_willow.json new file mode 100644 index 0000000..9d13337 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_planks_from_striped_log_willow.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:striped_log_willow" + } + ], + "result": { + "item": "betternether:willow_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_planks_from_willow_bark.json b/src/main/resources/data/betternether/recipes/willow_planks_from_willow_bark.json new file mode 100644 index 0000000..8b716ea --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_planks_from_willow_bark.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:willow_bark" + } + ], + "result": { + "item": "betternether:willow_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_planks_from_willow_log.json b/src/main/resources/data/betternether/recipes/willow_planks_from_willow_log.json new file mode 100644 index 0000000..3a584d4 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_planks_from_willow_log.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "group": "betternether", + "ingredients": [ + { + "item": "betternether:willow_log" + } + ], + "result": { + "item": "betternether:willow_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_plate_from_willow_planks.json b/src/main/resources/data/betternether/recipes/willow_plate_from_willow_planks.json new file mode 100644 index 0000000..ec27df4 --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_plate_from_willow_planks.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "##" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:willow_plate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_slab_from_willow_planks.json b/src/main/resources/data/betternether/recipes/willow_slab_from_willow_planks.json new file mode 100644 index 0000000..bb1fafe --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_slab_from_willow_planks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:willow_slab", + "count": 6 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_stairs_from_willow_planks.json b/src/main/resources/data/betternether/recipes/willow_stairs_from_willow_planks.json new file mode 100644 index 0000000..4fbe60a --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_stairs_from_willow_planks.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:willow_stairs", + "count": 4 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/recipes/willow_trapdoor_from_willow_planks.json b/src/main/resources/data/betternether/recipes/willow_trapdoor_from_willow_planks.json new file mode 100644 index 0000000..a1b9e0f --- /dev/null +++ b/src/main/resources/data/betternether/recipes/willow_trapdoor_from_willow_planks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "betternether", + "pattern": [ + "###", + "###" + ], + "key": { + "#": { + "item": "betternether:willow_planks" + } + }, + "result": { + "item": "betternether:willow_trapdoor", + "count": 2 + } +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/structures/altar_01.nbt b/src/main/resources/data/betternether/structures/altar_01.nbt new file mode 100644 index 0000000..acd2aee Binary files /dev/null and b/src/main/resources/data/betternether/structures/altar_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/altar_02.nbt b/src/main/resources/data/betternether/structures/altar_02.nbt new file mode 100644 index 0000000..0ef2f4b Binary files /dev/null and b/src/main/resources/data/betternether/structures/altar_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/altar_03.nbt b/src/main/resources/data/betternether/structures/altar_03.nbt new file mode 100644 index 0000000..716a444 Binary files /dev/null and b/src/main/resources/data/betternether/structures/altar_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/altar_04.nbt b/src/main/resources/data/betternether/structures/altar_04.nbt new file mode 100644 index 0000000..03641c2 Binary files /dev/null and b/src/main/resources/data/betternether/structures/altar_04.nbt differ diff --git a/src/main/resources/data/betternether/structures/altar_05.nbt b/src/main/resources/data/betternether/structures/altar_05.nbt new file mode 100644 index 0000000..4db73e9 Binary files /dev/null and b/src/main/resources/data/betternether/structures/altar_05.nbt differ diff --git a/src/main/resources/data/betternether/structures/altar_06.nbt b/src/main/resources/data/betternether/structures/altar_06.nbt new file mode 100644 index 0000000..5e6d091 Binary files /dev/null and b/src/main/resources/data/betternether/structures/altar_06.nbt differ diff --git a/src/main/resources/data/betternether/structures/altar_07.nbt b/src/main/resources/data/betternether/structures/altar_07.nbt new file mode 100644 index 0000000..497e5aa Binary files /dev/null and b/src/main/resources/data/betternether/structures/altar_07.nbt differ diff --git a/src/main/resources/data/betternether/structures/altar_08.nbt b/src/main/resources/data/betternether/structures/altar_08.nbt new file mode 100644 index 0000000..deca694 Binary files /dev/null and b/src/main/resources/data/betternether/structures/altar_08.nbt differ diff --git a/src/main/resources/data/betternether/structures/bone_01.nbt b/src/main/resources/data/betternether/structures/bone_01.nbt new file mode 100644 index 0000000..7e51e20 Binary files /dev/null and b/src/main/resources/data/betternether/structures/bone_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/bone_02.nbt b/src/main/resources/data/betternether/structures/bone_02.nbt new file mode 100644 index 0000000..ff94faa Binary files /dev/null and b/src/main/resources/data/betternether/structures/bone_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/bone_03.nbt b/src/main/resources/data/betternether/structures/bone_03.nbt new file mode 100644 index 0000000..99f4485 Binary files /dev/null and b/src/main/resources/data/betternether/structures/bone_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_bridge_01.nbt b/src/main/resources/data/betternether/structures/city/city_bridge_01.nbt new file mode 100644 index 0000000..f467682 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_bridge_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_01.nbt b/src/main/resources/data/betternether/structures/city/city_building_01.nbt new file mode 100644 index 0000000..f4c8c9b Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_02.nbt b/src/main/resources/data/betternether/structures/city/city_building_02.nbt new file mode 100644 index 0000000..ddf642d Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_03.nbt b/src/main/resources/data/betternether/structures/city/city_building_03.nbt new file mode 100644 index 0000000..cb3a0eb Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_04.nbt b/src/main/resources/data/betternether/structures/city/city_building_04.nbt new file mode 100644 index 0000000..19b5611 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_04.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_05.nbt b/src/main/resources/data/betternether/structures/city/city_building_05.nbt new file mode 100644 index 0000000..6e3d25d Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_05.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_06.nbt b/src/main/resources/data/betternether/structures/city/city_building_06.nbt new file mode 100644 index 0000000..9a827b8 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_06.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_07.nbt b/src/main/resources/data/betternether/structures/city/city_building_07.nbt new file mode 100644 index 0000000..0882fa8 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_07.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_08.nbt b/src/main/resources/data/betternether/structures/city/city_building_08.nbt new file mode 100644 index 0000000..919e993 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_08.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_09.nbt b/src/main/resources/data/betternether/structures/city/city_building_09.nbt new file mode 100644 index 0000000..61961fb Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_09.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_10.nbt b/src/main/resources/data/betternether/structures/city/city_building_10.nbt new file mode 100644 index 0000000..8de2497 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_10.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_11.nbt b/src/main/resources/data/betternether/structures/city/city_building_11.nbt new file mode 100644 index 0000000..1f323dc Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_11.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_12.nbt b/src/main/resources/data/betternether/structures/city/city_building_12.nbt new file mode 100644 index 0000000..b606081 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_12.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_13.nbt b/src/main/resources/data/betternether/structures/city/city_building_13.nbt new file mode 100644 index 0000000..a7a5450 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_13.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_14.nbt b/src/main/resources/data/betternether/structures/city/city_building_14.nbt new file mode 100644 index 0000000..a87c4db Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_14.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_building_15.nbt b/src/main/resources/data/betternether/structures/city/city_building_15.nbt new file mode 100644 index 0000000..68eaaa3 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_building_15.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_center_01.nbt b/src/main/resources/data/betternether/structures/city/city_center_01.nbt new file mode 100644 index 0000000..3089e38 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_center_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_center_02.nbt b/src/main/resources/data/betternether/structures/city/city_center_02.nbt new file mode 100644 index 0000000..2447e14 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_center_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_center_03.nbt b/src/main/resources/data/betternether/structures/city/city_center_03.nbt new file mode 100644 index 0000000..5a15219 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_center_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_center_04.nbt b/src/main/resources/data/betternether/structures/city/city_center_04.nbt new file mode 100644 index 0000000..29474b9 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_center_04.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_enchanter_01.nbt b/src/main/resources/data/betternether/structures/city/city_enchanter_01.nbt new file mode 100644 index 0000000..d0b7e9c Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_enchanter_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_enchanter_02.nbt b/src/main/resources/data/betternether/structures/city/city_enchanter_02.nbt new file mode 100644 index 0000000..82abc36 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_enchanter_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_library_01.nbt b/src/main/resources/data/betternether/structures/city/city_library_01.nbt new file mode 100644 index 0000000..98f8014 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_library_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_library_02.nbt b/src/main/resources/data/betternether/structures/city/city_library_02.nbt new file mode 100644 index 0000000..b496c4b Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_library_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_library_03.nbt b/src/main/resources/data/betternether/structures/city/city_library_03.nbt new file mode 100644 index 0000000..38de814 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_library_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_park_01.nbt b/src/main/resources/data/betternether/structures/city/city_park_01.nbt new file mode 100644 index 0000000..707a8fa Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_park_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_park_02.nbt b/src/main/resources/data/betternether/structures/city/city_park_02.nbt new file mode 100644 index 0000000..915ce23 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_park_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_park_03.nbt b/src/main/resources/data/betternether/structures/city/city_park_03.nbt new file mode 100644 index 0000000..cfdeb34 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_park_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_tower_01.nbt b/src/main/resources/data/betternether/structures/city/city_tower_01.nbt new file mode 100644 index 0000000..c8abb90 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_tower_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_tower_02.nbt b/src/main/resources/data/betternether/structures/city/city_tower_02.nbt new file mode 100644 index 0000000..5a3be49 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_tower_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_tower_03.nbt b/src/main/resources/data/betternether/structures/city/city_tower_03.nbt new file mode 100644 index 0000000..bb95d2a Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_tower_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/city_tower_04.nbt b/src/main/resources/data/betternether/structures/city/city_tower_04.nbt new file mode 100644 index 0000000..5cf243f Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/city_tower_04.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/ramp_01.nbt b/src/main/resources/data/betternether/structures/city/ramp_01.nbt new file mode 100644 index 0000000..9cd7683 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/ramp_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/road_cross_01.nbt b/src/main/resources/data/betternether/structures/city/road_cross_01.nbt new file mode 100644 index 0000000..390349a Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/road_cross_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/road_end_01.nbt b/src/main/resources/data/betternether/structures/city/road_end_01.nbt new file mode 100644 index 0000000..eb94956 Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/road_end_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/city/road_end_02.nbt b/src/main/resources/data/betternether/structures/city/road_end_02.nbt new file mode 100644 index 0000000..89c85be Binary files /dev/null and b/src/main/resources/data/betternether/structures/city/road_end_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/garden_01.nbt b/src/main/resources/data/betternether/structures/garden_01.nbt new file mode 100644 index 0000000..cc818cc Binary files /dev/null and b/src/main/resources/data/betternether/structures/garden_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/garden_02.nbt b/src/main/resources/data/betternether/structures/garden_02.nbt new file mode 100644 index 0000000..12b2853 Binary files /dev/null and b/src/main/resources/data/betternether/structures/garden_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/ghast_hive.nbt b/src/main/resources/data/betternether/structures/ghast_hive.nbt new file mode 100644 index 0000000..c34cd40 Binary files /dev/null and b/src/main/resources/data/betternether/structures/ghast_hive.nbt differ diff --git a/src/main/resources/data/betternether/structures/jungle_bones_1.nbt b/src/main/resources/data/betternether/structures/jungle_bones_1.nbt new file mode 100644 index 0000000..20369a4 Binary files /dev/null and b/src/main/resources/data/betternether/structures/jungle_bones_1.nbt differ diff --git a/src/main/resources/data/betternether/structures/jungle_bones_2.nbt b/src/main/resources/data/betternether/structures/jungle_bones_2.nbt new file mode 100644 index 0000000..2d16e03 Binary files /dev/null and b/src/main/resources/data/betternether/structures/jungle_bones_2.nbt differ diff --git a/src/main/resources/data/betternether/structures/jungle_bones_3.nbt b/src/main/resources/data/betternether/structures/jungle_bones_3.nbt new file mode 100644 index 0000000..46f8c6d Binary files /dev/null and b/src/main/resources/data/betternether/structures/jungle_bones_3.nbt differ diff --git a/src/main/resources/data/betternether/structures/jungle_temple_2.nbt b/src/main/resources/data/betternether/structures/jungle_temple_2.nbt new file mode 100644 index 0000000..dd08f9e Binary files /dev/null and b/src/main/resources/data/betternether/structures/jungle_temple_2.nbt differ diff --git a/src/main/resources/data/betternether/structures/jungle_temple_altar.nbt b/src/main/resources/data/betternether/structures/jungle_temple_altar.nbt new file mode 100644 index 0000000..94df7b6 Binary files /dev/null and b/src/main/resources/data/betternether/structures/jungle_temple_altar.nbt differ diff --git a/src/main/resources/data/betternether/structures/lava/pyramid_1.nbt b/src/main/resources/data/betternether/structures/lava/pyramid_1.nbt new file mode 100644 index 0000000..103981a Binary files /dev/null and b/src/main/resources/data/betternether/structures/lava/pyramid_1.nbt differ diff --git a/src/main/resources/data/betternether/structures/lava/pyramid_2.nbt b/src/main/resources/data/betternether/structures/lava/pyramid_2.nbt new file mode 100644 index 0000000..b1239e0 Binary files /dev/null and b/src/main/resources/data/betternether/structures/lava/pyramid_2.nbt differ diff --git a/src/main/resources/data/betternether/structures/lava/pyramid_3.nbt b/src/main/resources/data/betternether/structures/lava/pyramid_3.nbt new file mode 100644 index 0000000..bf233ea Binary files /dev/null and b/src/main/resources/data/betternether/structures/lava/pyramid_3.nbt differ diff --git a/src/main/resources/data/betternether/structures/lava/pyramid_4.nbt b/src/main/resources/data/betternether/structures/lava/pyramid_4.nbt new file mode 100644 index 0000000..df0af27 Binary files /dev/null and b/src/main/resources/data/betternether/structures/lava/pyramid_4.nbt differ diff --git a/src/main/resources/data/betternether/structures/pillar_01.nbt b/src/main/resources/data/betternether/structures/pillar_01.nbt new file mode 100644 index 0000000..6a84719 Binary files /dev/null and b/src/main/resources/data/betternether/structures/pillar_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/pillar_02.nbt b/src/main/resources/data/betternether/structures/pillar_02.nbt new file mode 100644 index 0000000..4377e5b Binary files /dev/null and b/src/main/resources/data/betternether/structures/pillar_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/pillar_03.nbt b/src/main/resources/data/betternether/structures/pillar_03.nbt new file mode 100644 index 0000000..ac13448 Binary files /dev/null and b/src/main/resources/data/betternether/structures/pillar_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/pillar_04.nbt b/src/main/resources/data/betternether/structures/pillar_04.nbt new file mode 100644 index 0000000..7d8d39d Binary files /dev/null and b/src/main/resources/data/betternether/structures/pillar_04.nbt differ diff --git a/src/main/resources/data/betternether/structures/pillar_05.nbt b/src/main/resources/data/betternether/structures/pillar_05.nbt new file mode 100644 index 0000000..65dc64b Binary files /dev/null and b/src/main/resources/data/betternether/structures/pillar_05.nbt differ diff --git a/src/main/resources/data/betternether/structures/pillar_06.nbt b/src/main/resources/data/betternether/structures/pillar_06.nbt new file mode 100644 index 0000000..289f6fa Binary files /dev/null and b/src/main/resources/data/betternether/structures/pillar_06.nbt differ diff --git a/src/main/resources/data/betternether/structures/portal_01.nbt b/src/main/resources/data/betternether/structures/portal_01.nbt new file mode 100644 index 0000000..cb5851d Binary files /dev/null and b/src/main/resources/data/betternether/structures/portal_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/portal_02.nbt b/src/main/resources/data/betternether/structures/portal_02.nbt new file mode 100644 index 0000000..d3b3c03 Binary files /dev/null and b/src/main/resources/data/betternether/structures/portal_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/respawn_point_01.nbt b/src/main/resources/data/betternether/structures/respawn_point_01.nbt new file mode 100644 index 0000000..6a3744c Binary files /dev/null and b/src/main/resources/data/betternether/structures/respawn_point_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/respawn_point_02.nbt b/src/main/resources/data/betternether/structures/respawn_point_02.nbt new file mode 100644 index 0000000..0b1b7b5 Binary files /dev/null and b/src/main/resources/data/betternether/structures/respawn_point_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/respawn_point_03.nbt b/src/main/resources/data/betternether/structures/respawn_point_03.nbt new file mode 100644 index 0000000..139fbb2 Binary files /dev/null and b/src/main/resources/data/betternether/structures/respawn_point_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/respawn_point_04.nbt b/src/main/resources/data/betternether/structures/respawn_point_04.nbt new file mode 100644 index 0000000..c5e76f4 Binary files /dev/null and b/src/main/resources/data/betternether/structures/respawn_point_04.nbt differ diff --git a/src/main/resources/data/betternether/structures/room_01.nbt b/src/main/resources/data/betternether/structures/room_01.nbt new file mode 100644 index 0000000..aa12629 Binary files /dev/null and b/src/main/resources/data/betternether/structures/room_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/ruined_temple.nbt b/src/main/resources/data/betternether/structures/ruined_temple.nbt new file mode 100644 index 0000000..7708dc2 Binary files /dev/null and b/src/main/resources/data/betternether/structures/ruined_temple.nbt differ diff --git a/src/main/resources/data/betternether/structures/spawn_altar_ladder.nbt b/src/main/resources/data/betternether/structures/spawn_altar_ladder.nbt new file mode 100644 index 0000000..8ee7b7a Binary files /dev/null and b/src/main/resources/data/betternether/structures/spawn_altar_ladder.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/brown_mushroom_01.nbt b/src/main/resources/data/betternether/structures/trees/brown_mushroom_01.nbt new file mode 100644 index 0000000..6601030 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/brown_mushroom_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/brown_mushroom_02.nbt b/src/main/resources/data/betternether/structures/trees/brown_mushroom_02.nbt new file mode 100644 index 0000000..0617c8c Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/brown_mushroom_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/brown_mushroom_03.nbt b/src/main/resources/data/betternether/structures/trees/brown_mushroom_03.nbt new file mode 100644 index 0000000..91f0994 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/brown_mushroom_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/brown_mushroom_04.nbt b/src/main/resources/data/betternether/structures/trees/brown_mushroom_04.nbt new file mode 100644 index 0000000..b584baf Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/brown_mushroom_04.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/crimson_glow_tree_01.nbt b/src/main/resources/data/betternether/structures/trees/crimson_glow_tree_01.nbt new file mode 100644 index 0000000..c650385 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/crimson_glow_tree_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/crimson_glow_tree_02.nbt b/src/main/resources/data/betternether/structures/trees/crimson_glow_tree_02.nbt new file mode 100644 index 0000000..f9b33fb Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/crimson_glow_tree_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/crimson_glow_tree_03.nbt b/src/main/resources/data/betternether/structures/trees/crimson_glow_tree_03.nbt new file mode 100644 index 0000000..67476fd Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/crimson_glow_tree_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/crimson_glow_tree_04.nbt b/src/main/resources/data/betternether/structures/trees/crimson_glow_tree_04.nbt new file mode 100644 index 0000000..6406402 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/crimson_glow_tree_04.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/crimson_pine_01.nbt b/src/main/resources/data/betternether/structures/trees/crimson_pine_01.nbt new file mode 100644 index 0000000..675678c Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/crimson_pine_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/crimson_pine_02.nbt b/src/main/resources/data/betternether/structures/trees/crimson_pine_02.nbt new file mode 100644 index 0000000..26b7908 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/crimson_pine_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/crimson_pine_03.nbt b/src/main/resources/data/betternether/structures/trees/crimson_pine_03.nbt new file mode 100644 index 0000000..7202b01 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/crimson_pine_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/crimson_pine_04.nbt b/src/main/resources/data/betternether/structures/trees/crimson_pine_04.nbt new file mode 100644 index 0000000..54b3e7a Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/crimson_pine_04.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/crimson_pine_05.nbt b/src/main/resources/data/betternether/structures/trees/crimson_pine_05.nbt new file mode 100644 index 0000000..3569d99 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/crimson_pine_05.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/red_mushroom_01.nbt b/src/main/resources/data/betternether/structures/trees/red_mushroom_01.nbt new file mode 100644 index 0000000..1d2e630 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/red_mushroom_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/red_mushroom_02.nbt b/src/main/resources/data/betternether/structures/trees/red_mushroom_02.nbt new file mode 100644 index 0000000..e5cfe56 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/red_mushroom_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/red_mushroom_03.nbt b/src/main/resources/data/betternether/structures/trees/red_mushroom_03.nbt new file mode 100644 index 0000000..9a97c85 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/red_mushroom_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/red_mushroom_04.nbt b/src/main/resources/data/betternether/structures/trees/red_mushroom_04.nbt new file mode 100644 index 0000000..7adc989 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/red_mushroom_04.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/red_mushroom_05.nbt b/src/main/resources/data/betternether/structures/trees/red_mushroom_05.nbt new file mode 100644 index 0000000..a11c7b8 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/red_mushroom_05.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/red_mushroom_06.nbt b/src/main/resources/data/betternether/structures/trees/red_mushroom_06.nbt new file mode 100644 index 0000000..5c577ba Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/red_mushroom_06.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/red_mushroom_07.nbt b/src/main/resources/data/betternether/structures/trees/red_mushroom_07.nbt new file mode 100644 index 0000000..098a302 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/red_mushroom_07.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/warped_tree_01.nbt b/src/main/resources/data/betternether/structures/trees/warped_tree_01.nbt new file mode 100644 index 0000000..7c9c109 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/warped_tree_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/warped_tree_02.nbt b/src/main/resources/data/betternether/structures/trees/warped_tree_02.nbt new file mode 100644 index 0000000..baf45d5 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/warped_tree_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/warped_tree_03.nbt b/src/main/resources/data/betternether/structures/trees/warped_tree_03.nbt new file mode 100644 index 0000000..49f6502 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/warped_tree_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/warped_tree_04.nbt b/src/main/resources/data/betternether/structures/trees/warped_tree_04.nbt new file mode 100644 index 0000000..274645b Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/warped_tree_04.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/warped_tree_05.nbt b/src/main/resources/data/betternether/structures/trees/warped_tree_05.nbt new file mode 100644 index 0000000..9d05cf1 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/warped_tree_05.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/wart_fallen_log.nbt b/src/main/resources/data/betternether/structures/trees/wart_fallen_log.nbt new file mode 100644 index 0000000..00555b7 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/wart_fallen_log.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/wart_root_01.nbt b/src/main/resources/data/betternether/structures/trees/wart_root_01.nbt new file mode 100644 index 0000000..88aca27 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/wart_root_01.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/wart_root_02.nbt b/src/main/resources/data/betternether/structures/trees/wart_root_02.nbt new file mode 100644 index 0000000..860fe5d Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/wart_root_02.nbt differ diff --git a/src/main/resources/data/betternether/structures/trees/wart_root_03.nbt b/src/main/resources/data/betternether/structures/trees/wart_root_03.nbt new file mode 100644 index 0000000..a75dd85 Binary files /dev/null and b/src/main/resources/data/betternether/structures/trees/wart_root_03.nbt differ diff --git a/src/main/resources/data/betternether/structures/upside_down_forest/tree_fallen.nbt b/src/main/resources/data/betternether/structures/upside_down_forest/tree_fallen.nbt new file mode 100644 index 0000000..2c4f61d Binary files /dev/null and b/src/main/resources/data/betternether/structures/upside_down_forest/tree_fallen.nbt differ diff --git a/src/main/resources/data/betternether/structures/upside_down_forest/tree_needle.nbt b/src/main/resources/data/betternether/structures/upside_down_forest/tree_needle.nbt new file mode 100644 index 0000000..58061fe Binary files /dev/null and b/src/main/resources/data/betternether/structures/upside_down_forest/tree_needle.nbt differ diff --git a/src/main/resources/data/betternether/structures/upside_down_forest/tree_root.nbt b/src/main/resources/data/betternether/structures/upside_down_forest/tree_root.nbt new file mode 100644 index 0000000..680def3 Binary files /dev/null and b/src/main/resources/data/betternether/structures/upside_down_forest/tree_root.nbt differ diff --git a/src/main/resources/data/betternether/structures/upside_down_forest/tree_small_branch.nbt b/src/main/resources/data/betternether/structures/upside_down_forest/tree_small_branch.nbt new file mode 100644 index 0000000..c3221f0 Binary files /dev/null and b/src/main/resources/data/betternether/structures/upside_down_forest/tree_small_branch.nbt differ diff --git a/src/main/resources/data/betternether/structures/upside_down_forest/tree_stump.nbt b/src/main/resources/data/betternether/structures/upside_down_forest/tree_stump.nbt new file mode 100644 index 0000000..ed1ae51 Binary files /dev/null and b/src/main/resources/data/betternether/structures/upside_down_forest/tree_stump.nbt differ diff --git a/src/main/resources/data/betternether/tags/blocks/nether_mycelium.json b/src/main/resources/data/betternether/tags/blocks/nether_mycelium.json new file mode 100644 index 0000000..85f970e --- /dev/null +++ b/src/main/resources/data/betternether/tags/blocks/nether_mycelium.json @@ -0,0 +1,6 @@ +{ + "replace": "false", + "values": [ + "betternether:nether_mycelium" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/tags/blocks/netherrack.json b/src/main/resources/data/betternether/tags/blocks/netherrack.json new file mode 100644 index 0000000..918d722 --- /dev/null +++ b/src/main/resources/data/betternether/tags/blocks/netherrack.json @@ -0,0 +1,23 @@ +{ + "replace": "false", + "values": [ + "minecraft:netherrack", + "minecraft:nether_quartz_ore", + "minecraft:nether_gold_ore", + "minecraft:crimson_nylium", + "minecraft:warped_nylium", + + "betternether:cincinnasite_ore", + "betternether:nether_ruby_ore", + "betternether:nether_lapis_ore", + "betternether:netherrack_moss", + "betternether:nether_mycelium", + "betternether:netherrack_moss", + "betternether:jungle_grass", + "betternether:mushroom_grass", + "betternether:sepia_mushroom_grass", + "betternether:farmland", + "betternether:swampland_grass", + "betternether:ceiling_mushrooms" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/tags/blocks/soul_ground.json b/src/main/resources/data/betternether/tags/blocks/soul_ground.json new file mode 100644 index 0000000..0883a41 --- /dev/null +++ b/src/main/resources/data/betternether/tags/blocks/soul_ground.json @@ -0,0 +1,10 @@ +{ + "replace": "false", + "values": [ + "minecraft:soul_sand", + "minecraft:soul_soil", + + "betternether:veined_sand", + "betternether:farmland" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/betternether/tags/items/soul_ground.json b/src/main/resources/data/betternether/tags/items/soul_ground.json new file mode 100644 index 0000000..6815538 --- /dev/null +++ b/src/main/resources/data/betternether/tags/items/soul_ground.json @@ -0,0 +1,7 @@ +{ + "replace": "false", + "values": [ + "minecraft:soul_sand", + "minecraft:soul_soil" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/fabric/tags/items/axes.json b/src/main/resources/data/fabric/tags/items/axes.json new file mode 100644 index 0000000..c352da7 --- /dev/null +++ b/src/main/resources/data/fabric/tags/items/axes.json @@ -0,0 +1,8 @@ +{ + "replace": "false", + "values": [ + "betternether:cincinnasite_axe", + "betternether:cincinnasite_axe_diamond", + "betternether:nether_ruby_axe" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/fabric/tags/items/hoes.json b/src/main/resources/data/fabric/tags/items/hoes.json new file mode 100644 index 0000000..9d486af --- /dev/null +++ b/src/main/resources/data/fabric/tags/items/hoes.json @@ -0,0 +1,8 @@ +{ + "replace": "false", + "values": [ + "betternether:cincinnasite_hoe", + "betternether:cincinnasite_hoe_diamond", + "betternether:nether_ruby_hoe" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/fabric/tags/items/pickaxes.json b/src/main/resources/data/fabric/tags/items/pickaxes.json new file mode 100644 index 0000000..f986ec7 --- /dev/null +++ b/src/main/resources/data/fabric/tags/items/pickaxes.json @@ -0,0 +1,8 @@ +{ + "replace": "false", + "values": [ + "betternether:cincinnasite_pickaxe", + "betternether:cincinnasite_pickaxe_diamond", + "betternether:nether_ruby_pickaxe" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/fabric/tags/items/shears.json b/src/main/resources/data/fabric/tags/items/shears.json new file mode 100644 index 0000000..e8576a7 --- /dev/null +++ b/src/main/resources/data/fabric/tags/items/shears.json @@ -0,0 +1,6 @@ +{ + "replace": "false", + "values": [ + "betternether:cincinnasite_shears" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/fabric/tags/items/shovels.json b/src/main/resources/data/fabric/tags/items/shovels.json new file mode 100644 index 0000000..85e179a --- /dev/null +++ b/src/main/resources/data/fabric/tags/items/shovels.json @@ -0,0 +1,8 @@ +{ + "replace": "false", + "values": [ + "betternether:cincinnasite_shovel", + "betternether:cincinnasite_shovel_diamond", + "betternether:nether_ruby_shovel" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/acacia_leaves.json b/src/main/resources/data/minecraft/loot_tables/blocks/acacia_leaves.json new file mode 100644 index 0000000..8cc867d --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/acacia_leaves.json @@ -0,0 +1,128 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ], + "name": "minecraft:acacia_leaves" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + }, + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.05, + 0.0625, + 0.083333336, + 0.1 + ] + } + ], + "name": "minecraft:acacia_sapling" + } + ] + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.02, + 0.022222223, + 0.025, + 0.033333335, + 0.1 + ] + } + ], + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 1.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:stick" + } + ], + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/birch_leaves.json b/src/main/resources/data/minecraft/loot_tables/blocks/birch_leaves.json new file mode 100644 index 0000000..4253b1f --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/birch_leaves.json @@ -0,0 +1,128 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ], + "name": "minecraft:birch_leaves" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + }, + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.05, + 0.0625, + 0.083333336, + 0.1 + ] + } + ], + "name": "minecraft:birch_sapling" + } + ] + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.02, + 0.022222223, + 0.025, + 0.033333335, + 0.1 + ] + } + ], + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 1.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:stick" + } + ], + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/cobweb.json b/src/main/resources/data/minecraft/loot_tables/blocks/cobweb.json new file mode 100644 index 0000000..5027762 --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/cobweb.json @@ -0,0 +1,54 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ], + "name": "minecraft:cobweb" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "name": "minecraft:string" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/dark_oak_leaves.json b/src/main/resources/data/minecraft/loot_tables/blocks/dark_oak_leaves.json new file mode 100644 index 0000000..503e40a --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/dark_oak_leaves.json @@ -0,0 +1,182 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ], + "name": "minecraft:dark_oak_leaves" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + }, + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.05, + 0.0625, + 0.083333336, + 0.1 + ] + } + ], + "name": "minecraft:dark_oak_sapling" + } + ] + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.02, + 0.022222223, + 0.025, + 0.033333335, + 0.1 + ] + } + ], + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 1.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:stick" + } + ], + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + }, + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.005, + 0.0055555557, + 0.00625, + 0.008333334, + 0.025 + ] + } + ], + "name": "minecraft:apple" + } + ], + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/dead_bush.json b/src/main/resources/data/minecraft/loot_tables/blocks/dead_bush.json new file mode 100644 index 0000000..9be91d0 --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/dead_bush.json @@ -0,0 +1,44 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + } + ], + "name": "minecraft:dead_bush" + }, + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 0.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:stick" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/fern.json b/src/main/resources/data/minecraft/loot_tables/blocks/fern.json new file mode 100644 index 0000000..e7fa1c8 --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/fern.json @@ -0,0 +1,50 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + } + ], + "name": "minecraft:fern" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:random_chance", + "chance": 0.125 + } + ], + "functions": [ + { + "function": "minecraft:apply_bonus", + "enchantment": "minecraft:fortune", + "formula": "minecraft:uniform_bonus_count", + "parameters": { + "bonusMultiplier": 2 + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:wheat_seeds" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/grass.json b/src/main/resources/data/minecraft/loot_tables/blocks/grass.json new file mode 100644 index 0000000..4a62239 --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/grass.json @@ -0,0 +1,50 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + } + ], + "name": "minecraft:grass" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:random_chance", + "chance": 0.125 + } + ], + "functions": [ + { + "function": "minecraft:apply_bonus", + "enchantment": "minecraft:fortune", + "formula": "minecraft:uniform_bonus_count", + "parameters": { + "bonusMultiplier": 2 + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:wheat_seeds" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/jungle_leaves.json b/src/main/resources/data/minecraft/loot_tables/blocks/jungle_leaves.json new file mode 100644 index 0000000..a51447c --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/jungle_leaves.json @@ -0,0 +1,129 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ], + "name": "minecraft:jungle_leaves" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + }, + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.025, + 0.027777778, + 0.03125, + 0.041666668, + 0.1 + ] + } + ], + "name": "minecraft:jungle_sapling" + } + ] + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.02, + 0.022222223, + 0.025, + 0.033333335, + 0.1 + ] + } + ], + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 1.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:stick" + } + ], + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/large_fern.json b/src/main/resources/data/minecraft/loot_tables/blocks/large_fern.json new file mode 100644 index 0000000..4256278 --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/large_fern.json @@ -0,0 +1,47 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + } + ], + "name": "minecraft:fern" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + }, + { + "condition": "minecraft:block_state_property", + "block": "minecraft:large_fern", + "properties": { + "half": "lower" + } + }, + { + "condition": "minecraft:random_chance", + "chance": 0.125 + } + ], + "name": "minecraft:wheat_seeds" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/nether_sprouts.json b/src/main/resources/data/minecraft/loot_tables/blocks/nether_sprouts.json new file mode 100644 index 0000000..50da4a4 --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/nether_sprouts.json @@ -0,0 +1,54 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ], + "name": "minecraft:nether_sprouts" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "name": "minecraft:nether_sprouts" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/oak_leaves.json b/src/main/resources/data/minecraft/loot_tables/blocks/oak_leaves.json new file mode 100644 index 0000000..747b39e --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/oak_leaves.json @@ -0,0 +1,182 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ], + "name": "minecraft:oak_leaves" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + }, + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.05, + 0.0625, + 0.083333336, + 0.1 + ] + } + ], + "name": "minecraft:oak_sapling" + } + ] + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.02, + 0.022222223, + 0.025, + 0.033333335, + 0.1 + ] + } + ], + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 1.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:stick" + } + ], + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + }, + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.005, + 0.0055555557, + 0.00625, + 0.008333334, + 0.025 + ] + } + ], + "name": "minecraft:apple" + } + ], + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/seagrass.json b/src/main/resources/data/minecraft/loot_tables/blocks/seagrass.json new file mode 100644 index 0000000..e69cef9 --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/seagrass.json @@ -0,0 +1,22 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:seagrass" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/spruce_leaves.json b/src/main/resources/data/minecraft/loot_tables/blocks/spruce_leaves.json new file mode 100644 index 0000000..eb8f554 --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/spruce_leaves.json @@ -0,0 +1,128 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ], + "name": "minecraft:spruce_leaves" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + }, + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.05, + 0.0625, + 0.083333336, + 0.1 + ] + } + ], + "name": "minecraft:spruce_sapling" + } + ] + } + ] + }, + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.02, + 0.022222223, + 0.025, + 0.033333335, + 0.1 + ] + } + ], + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 1.0, + "max": 2.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:stick" + } + ], + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/tall_grass.json b/src/main/resources/data/minecraft/loot_tables/blocks/tall_grass.json new file mode 100644 index 0000000..33208d1 --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/tall_grass.json @@ -0,0 +1,47 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + } + ], + "name": "minecraft:grass" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + }, + { + "condition": "minecraft:block_state_property", + "block": "minecraft:tall_grass", + "properties": { + "half": "lower" + } + }, + { + "condition": "minecraft:random_chance", + "chance": 0.125 + } + ], + "name": "minecraft:wheat_seeds" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/tall_seagrass.json b/src/main/resources/data/minecraft/loot_tables/blocks/tall_seagrass.json new file mode 100644 index 0000000..e69cef9 --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/tall_seagrass.json @@ -0,0 +1,22 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:seagrass" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/blocks/vine.json b/src/main/resources/data/minecraft/loot_tables/blocks/vine.json new file mode 100644 index 0000000..8f280d0 --- /dev/null +++ b/src/main/resources/data/minecraft/loot_tables/blocks/vine.json @@ -0,0 +1,22 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:vine" + } + ], + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "tag": "fabric:shears" + } + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/blocks/anvil.json b/src/main/resources/data/minecraft/tags/blocks/anvil.json new file mode 100644 index 0000000..bc7bab0 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/anvil.json @@ -0,0 +1,6 @@ +{ + "replace": "false", + "values": [ + "betternether:cincinnasite_anvil" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/blocks/climbable.json b/src/main/resources/data/minecraft/tags/blocks/climbable.json new file mode 100644 index 0000000..14d9e3b --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/climbable.json @@ -0,0 +1,22 @@ +{ + "replace": "false", + "values": [ + "betternether:eye_vine", + "betternether:black_vine", + "betternether:blooming_vine", + "betternether:golden_vine", + "betternether:stalagnate", + "betternether:reeds_ladder", + "betternether:stalagnate_ladder", + "betternether:willow_ladder", + "betternether:wart_ladder", + "betternether:mushroom_fir_ladder", + "betternether:rubeus_ladder", + "betternether:crimson_ladder", + "betternether:warped_ladder", + "betternether:mushroom_ladder", + "betternether:anchor_tree_vine", + "betternether:anchor_tree_ladder", + "betternether:nether_sakura_ladder" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/blocks/doors.json b/src/main/resources/data/minecraft/tags/blocks/doors.json new file mode 100644 index 0000000..8811f23 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/doors.json @@ -0,0 +1,16 @@ +{ + "replace": "false", + "values": [ + "betternether:stalagnate_planks_door", + "betternether:reeds_door", + "betternether:bone_reed_door", + "betternether:bone_cincinnasite_door", + "betternether:willow_door", + "betternether:wart_door", + "betternether:rubeus_door", + "betternether:mushroom_door", + "betternether:mushroom_fir_door", + "betternether:anchor_tree_door", + "betternether:nether_sakura_door" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/blocks/fences.json b/src/main/resources/data/minecraft/tags/blocks/fences.json new file mode 100644 index 0000000..3808e7e --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/fences.json @@ -0,0 +1,14 @@ +{ + "replace": "false", + "values": [ + "betternether:stalagnate_planks_fence", + "betternether:reeds_fence", + "betternether:willow_fence", + "betternether:wart_fence", + "betternether:mushroom_fence", + "betternether:mushroom_fir_fence", + "betternether:rubeus_fence", + "betternether:anchor_tree_fence", + "betternether:nether_sakura_fence" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/blocks/nylium.json b/src/main/resources/data/minecraft/tags/blocks/nylium.json new file mode 100644 index 0000000..590fbc7 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/nylium.json @@ -0,0 +1,10 @@ +{ + "replace": "false", + "values": [ + "betternether:nether_mycelium", + "betternether:jungle_grass", + "betternether:mushroom_grass", + "betternether:sepia_mushroom_grass", + "betternether:swampland_grass" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/blocks/walls.json b/src/main/resources/data/minecraft/tags/blocks/walls.json new file mode 100644 index 0000000..2b3343d --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/walls.json @@ -0,0 +1,10 @@ +{ + "replace": "false", + "values": [ + "betternether:cincinnasite_wall", + "betternether:bone_wall", + "betternether:nether_brick_wall", + "betternether:soul_sandstone_wall", + "betternether:basalt_bricks_wall" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/blocks/wooden_doors.json b/src/main/resources/data/minecraft/tags/blocks/wooden_doors.json new file mode 100644 index 0000000..8811f23 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/wooden_doors.json @@ -0,0 +1,16 @@ +{ + "replace": "false", + "values": [ + "betternether:stalagnate_planks_door", + "betternether:reeds_door", + "betternether:bone_reed_door", + "betternether:bone_cincinnasite_door", + "betternether:willow_door", + "betternether:wart_door", + "betternether:rubeus_door", + "betternether:mushroom_door", + "betternether:mushroom_fir_door", + "betternether:anchor_tree_door", + "betternether:nether_sakura_door" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/blocks/wooden_trapdoors.json b/src/main/resources/data/minecraft/tags/blocks/wooden_trapdoors.json new file mode 100644 index 0000000..417a0dd --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/wooden_trapdoors.json @@ -0,0 +1,14 @@ +{ + "replace": "false", + "values": [ + "betternether:stalagnate_planks_trapdoor", + "betternether:reeds_trapdoor", + "betternether:willow_trapdoor", + "betternether:wart_trapdoor", + "betternether:rubeus_trapdoor", + "betternether:mushroom_trapdoor", + "betternether:mushroom_fir_trapdoor", + "betternether:anchor_tree_trapdoor", + "betternether:nether_sakura_trapdoor" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/items/planks.json b/src/main/resources/data/minecraft/tags/items/planks.json new file mode 100644 index 0000000..e5de03a --- /dev/null +++ b/src/main/resources/data/minecraft/tags/items/planks.json @@ -0,0 +1,12 @@ +{ + "replace": "false", + "values": [ + "betternether:stalagnate_planks", + "betternether:willow_planks", + "betternether:wart_planks", + "betternether:mushroom_planks", + "betternether:mushroom_fir_planks", + "betternether:rubeus_planks", + "betternether:anchor_tree_planks" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/items/wooden_slabs.json b/src/main/resources/data/minecraft/tags/items/wooden_slabs.json new file mode 100644 index 0000000..d8f4598 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/items/wooden_slabs.json @@ -0,0 +1,12 @@ +{ + "replace": "false", + "values": [ + "betternether:stalagnate_planks_slab", + "betternether:reeds_slab", + "betternether:willow_slab", + "betternether:wart_slab", + "betternether:mushroom_fir_slab", + "betternether:rubeus_slab", + "betternether:anchor_tree_slab" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/techreborn/recipes/grinder/cincinnasite_ore.json b/src/main/resources/data/techreborn/recipes/grinder/cincinnasite_ore.json new file mode 100644 index 0000000..b9e2264 --- /dev/null +++ b/src/main/resources/data/techreborn/recipes/grinder/cincinnasite_ore.json @@ -0,0 +1,16 @@ +{ + "type": "techreborn:grinder", + "power": 4, + "time": 200, + "ingredients": [ + { + "item": "betternether:cincinnasite_ore" + } + ], + "results": [ + { + "item": "betternether:cincinnasite", + "count": 2 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/techreborn/recipes/grinder/nether_lapis_ore.json b/src/main/resources/data/techreborn/recipes/grinder/nether_lapis_ore.json new file mode 100644 index 0000000..5ac017a --- /dev/null +++ b/src/main/resources/data/techreborn/recipes/grinder/nether_lapis_ore.json @@ -0,0 +1,16 @@ +{ + "type": "techreborn:grinder", + "power": 4, + "time": 200, + "ingredients": [ + { + "item": "betternether:nether_lapis_ore" + } + ], + "results": [ + { + "item": "betternether:lapis_pile", + "count": 5 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/techreborn/recipes/grinder/nether_ruby_ore.json b/src/main/resources/data/techreborn/recipes/grinder/nether_ruby_ore.json new file mode 100644 index 0000000..96699fc --- /dev/null +++ b/src/main/resources/data/techreborn/recipes/grinder/nether_ruby_ore.json @@ -0,0 +1,16 @@ +{ + "type": "techreborn:grinder", + "power": 4, + "time": 200, + "ingredients": [ + { + "item": "betternether:nether_ruby_ore" + } + ], + "results": [ + { + "item": "betternether:nether_ruby", + "count": 2 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/pack.mcmeta b/src/main/resources/pack.mcmeta new file mode 100644 index 0000000..c79a362 --- /dev/null +++ b/src/main/resources/pack.mcmeta @@ -0,0 +1,7 @@ +{ + "pack": { + "description": "examplemod resources", + "pack_format": 6, + "_comment": "A pack_format of 6 requires json lang files and some texture changes from 1.16.2. Note: we require v6 pack meta for all mods." + } +}