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..12f8644 --- /dev/null +++ b/.gitignore @@ -0,0 +1,25 @@ +# 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 diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..f51e058 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,67 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "type": "java", + "name": "runClient", + "request": "launch", + "mainClass": "net.minecraftforge.userdev.LaunchTesting", + "projectName": "The SquidCoder Mod", + "cwd": "${workspaceFolder}\\run", + "vmArgs": "-Dforge.logging.console.level\u003ddebug -Dforge.logging.markers\u003dREGISTRIES -XX:+IgnoreUnrecognizedVMOptions --add-exports\u003djava.base/sun.security.util\u003dALL-UNNAMED --add-exports\u003djdk.naming.dns/com.sun.jndi.dns\u003djava.naming --add-opens\u003djava.base/java.util.jar\u003dALL-UNNAMED -XX:HeapDumpPath\u003dMojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump \"-Dos.name\u003dWindows 10\" -Dos.version\u003d10.0", + "args": "", + "env": { + "MOD_CLASSES": "tutorial%%${workspaceFolder}\\bin\\main;tutorial%%${workspaceFolder}\\bin\\main", + "MCP_MAPPINGS": "official_1.16.5", + "MCP_VERSION": "20210115.111550", + "FORGE_VERSION": "36.2.4", + "assetIndex": "1.16", + "assetDirectory": "C:\\Users\\bryen\\.gradle\\caches\\forge_gradle\\assets", + "nativesDirectory": "${workspaceFolder}\\build\\natives", + "FORGE_GROUP": "net.minecraftforge", + "target": "fmluserdevclient", + "MC_VERSION": "1.16.5" + } + }, + { + "type": "java", + "name": "runData", + "request": "launch", + "mainClass": "net.minecraftforge.userdev.LaunchTesting", + "projectName": "The SquidCoder Mod", + "cwd": "${workspaceFolder}\\run", + "vmArgs": "-Dforge.logging.console.level\u003ddebug -Dforge.logging.markers\u003dREGISTRIES -XX:+IgnoreUnrecognizedVMOptions --add-exports\u003djava.base/sun.security.util\u003dALL-UNNAMED --add-exports\u003djdk.naming.dns/com.sun.jndi.dns\u003djava.naming --add-opens\u003djava.base/java.util.jar\u003dALL-UNNAMED", + "args": "--mod tutorial --all --existing \"C:\\Users\\bryen\\Desktop\\Minecraft Files\\The SquidCoder Mod\\src\\main\\resources\" --existing \"C:\\Users\\bryen\\Desktop\\Minecraft Files\\The SquidCoder Mod\\src\\generated\\resources\" --output \"C:\\Users\\bryen\\Desktop\\Minecraft Files\\The SquidCoder Mod\\src\\generated\\resources\"", + "env": { + "MOD_CLASSES": "tutorial%%${workspaceFolder}\\bin\\main;tutorial%%${workspaceFolder}\\bin\\main", + "MCP_MAPPINGS": "official_1.16.5", + "MCP_VERSION": "20210115.111550", + "FORGE_VERSION": "36.2.4", + "assetIndex": "1.16", + "assetDirectory": "C:\\Users\\bryen\\.gradle\\caches\\forge_gradle\\assets", + "FORGE_GROUP": "net.minecraftforge", + "target": "fmluserdevdata", + "MC_VERSION": "1.16.5" + } + }, + { + "type": "java", + "name": "runServer", + "request": "launch", + "mainClass": "net.minecraftforge.userdev.LaunchTesting", + "projectName": "The SquidCoder Mod", + "cwd": "${workspaceFolder}\\run", + "vmArgs": "-Dforge.logging.console.level\u003ddebug -Dforge.logging.markers\u003dREGISTRIES -XX:+IgnoreUnrecognizedVMOptions --add-exports\u003djava.base/sun.security.util\u003dALL-UNNAMED --add-exports\u003djdk.naming.dns/com.sun.jndi.dns\u003djava.naming --add-opens\u003djava.base/java.util.jar\u003dALL-UNNAMED", + "args": "", + "env": { + "MOD_CLASSES": "tutorial%%${workspaceFolder}\\bin\\main;tutorial%%${workspaceFolder}\\bin\\main", + "MCP_MAPPINGS": "official_1.16.5", + "MCP_VERSION": "20210115.111550", + "FORGE_VERSION": "36.2.4", + "FORGE_GROUP": "net.minecraftforge", + "target": "fmluserdevserver", + "MC_VERSION": "1.16.5" + } + } + ] +} \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..e0f15db --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "java.configuration.updateBuildConfiguration": "automatic" +} \ No newline at end of file diff --git a/SquidCoderLogo.png b/SquidCoderLogo.png new file mode 100644 index 0000000..4d561ab Binary files /dev/null and b/SquidCoderLogo.png differ diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..f78bd0b --- /dev/null +++ b/build.gradle @@ -0,0 +1,196 @@ +buildscript { + repositories { + maven { url = 'https://maven.minecraftforge.net' } + mavenCentral() + } + dependencies { + classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '5.1.+', changing: true + } +} +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' + +version = '1.0' +group = 'com.SquidCoder.squidcoder' // http://maven.apache.org/guides/mini/guide-naming-conventions.html +archivesBaseName = 'squidcoder' + +java.toolchain.languageVersion = JavaLanguageVersion.of(8) // Mojang ships Java 8 to end users, so your mod should target Java 8. + +repositories { + maven { + // location of the maven that hosts JEI files + name = "Progwml6 maven" + url = "https://dvs1.progwml6.com/files/maven/" + } + maven { + // location of a maven mirror for JEI files, as a fallback + name = "ModMaven" + url = "https://modmaven.k-4u.nl" + } +} + +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. + // Channel: Version: + // snapshot YYYYMMDD Snapshot are built nightly. + // stable # Stables are built at the discretion of the MCP team. + // official MCVersion Official field/method names from Mojang mapping files + // + // You must be aware of the Mojang license when using the 'official' mappings. + // See more information here: https://github.com/MinecraftForge/MCPConfig/blob/master/Mojang.md + // + // 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: 'official', version: '1.16.5' + // 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 { + workingDirectory project.file('run') + + // Recommended logging data for a userdev environment + // The markers can be changed as needed. + // "SCAN": For mods scan. + // "REGISTRIES": For firing of registry events. + // "REGISTRYDUMP": For getting the contents of all registries. + property 'forge.logging.markers', 'REGISTRIES' + + // Recommended logging level for the console + // You can set various levels here. + // Please read: https://stackoverflow.com/questions/2031163/when-to-use-the-different-log-levels + property 'forge.logging.console.level', 'debug' + + mods { + squidcoder { + source sourceSets.main + } + } + } + + server { + workingDirectory project.file('run') + + // Recommended logging data for a userdev environment + // The markers can be changed as needed. + // "SCAN": For mods scan. + // "REGISTRIES": For firing of registry events. + // "REGISTRYDUMP": For getting the contents of all registries. + property 'forge.logging.markers', 'REGISTRIES' + + // Recommended logging level for the console + // You can set various levels here. + // Please read: https://stackoverflow.com/questions/2031163/when-to-use-the-different-log-levels + property 'forge.logging.console.level', 'debug' + + mods { + squidcoder { + source sourceSets.main + } + } + } + + data { + workingDirectory project.file('run') + + // Recommended logging data for a userdev environment + // The markers can be changed as needed. + // "SCAN": For mods scan. + // "REGISTRIES": For firing of registry events. + // "REGISTRYDUMP": For getting the contents of all registries. + property 'forge.logging.markers', 'REGISTRIES' + + // Recommended logging level for the console + // You can set various levels here. + // Please read: https://stackoverflow.com/questions/2031163/when-to-use-the-different-log-levels + 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', 'squidcoder', '--all', + '--existing', file('src/main/resources/').toString(), + '--existing', file('src/generated/resources/').toString(), + '--output', file('src/generated/resources/') + + + mods { + squidcoder { + source sourceSets.main + } + } + } + } +} + +// Include resources generated by data generators. +sourceSets.main.resources { srcDir 'src/generated/resources' } + +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.5-36.2.4' + + // compile against the JEI API but do not include it at runtime + compileOnly fg.deobf("mezz.jei:jei-1.16.5:7.6.4.87:api") + // at runtime, use the full JEI jar + runtimeOnly fg.deobf("mezz.jei:jei-1.16.5:7.6.4.87") + + // 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": "squidcoder", + "Specification-Vendor": "squidcoder", + "Specification-Version": "1", // We are version 1 of ourselves + "Implementation-Title": project.name, + "Implementation-Version": "${version}", + "Implementation-Vendor" :"squidcoder", + "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ") + ]) + } +} + +// 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" + } + } +} diff --git a/changelog.txt b/changelog.txt new file mode 100644 index 0000000..8e088ca --- /dev/null +++ b/changelog.txt @@ -0,0 +1,2405 @@ +Build: 1.16.5-36.2.4 - Tue Aug 31 16:32:40 GMT 2021 + djbake101: + [1.16.5] Backport OnDatapackSyncEvent from 1.17.1 (#7985) + +========= +Build: 1.16.5-36.2.3 - Tue Aug 31 15:35:00 GMT 2021 + sciwhiz12: + [1.16.x] Fix all layers of ItemLayerModel being fullbright (#8040) + + * Fix all layers of ItemLayerModel being fullbright + + Backport of #8039 + + * Remove duplicate test resources + + These resources have corresponding equivalents in the generated tests + resources folder. + +========= +Build: 1.16.5-36.2.2 - Mon Jul 26 21:37:03 GMT 2021 + onelemonyboi: + Fix rounding related errors with small entity pathfinding. Closes #7730 + +========= +Build: 1.16.5-36.2.1 - Sat Jul 24 17:39:23 GMT 2021 + supermartijn642: + Pass the 'includeName' flag to the ItemTossEvent (#7758) + +========= +Build: 1.16.5-36.2.0 - Thu Jul 22 01:45:10 GMT 2021 + lexmanos: + New 1.16.5 RB. + +========= +Build: 1.16.5-36.1.66 - Wed Jul 21 21:21:25 GMT 2021 + sizableshrimp: + ForgeGradle 5.1 and Gradle 7, which allows development on J16. Runtime still targets J8. (#7877) + +========= +Build: 1.16.5-36.1.65 - Tue Jul 20 05:01:10 GMT 2021 + lexmanos: + Work around javac scoping issue. + + lexmanos: + Fix LAN worlds where registry entries have been removed. + +========= +Build: 1.16.5-36.1.63 - Mon Jul 19 19:54:59 GMT 2021 + william: + Fix FakePlayers having null `connection` and add FakePlayer test mod (#7733) + +========= +Build: - Sat Jul 17 16:23:44 GMT 2021 + ateranimavis: + Use '{assets_root}' rather than task output path for userdev config (#7873) + + Signed-off-by: AterAnimAvis + +========= +Build: 1.16.5-36.1.61 - Sat Jul 17 11:14:53 GMT 2021 + thelnfamous1: + Patch several mob classes to let them use modded versions of their ranged weapons (#7845) + + baileyholl: + Adds a damage float in Lightning Entity and patches Entity to use it. (#7849) + + thesilkminer: + Fix missing userdev config for datagen runs (#7871) + + Signed-off-by: TheSilkMiner + +========= +Build: 1.16.5-36.1.58 - Sat Jul 17 02:45:36 GMT 2021 + awsomesauce239: + Add Fishing bobber projectile impact event (#7842) + + onelemonyboi: + Removes misleading Nullable annotation from canCreatureSpawn (#7840) + + onelemonyboi: + Removes misapplied patch in Entity (#7841) + + onelemonyboi: + Updates MouseHelper to allow for Horizontal Scroll to be recognized as Vertical Scroll (#7834) + + onelemonyboi: + Corrects the assigning of mob kills, Fixes MC-121048 (#7836) + +========= +Build: 1.16.5-36.1.53 - Sat Jul 17 02:30:47 GMT 2021 + diesieben07: + Fix entities losing their scoreboard data when they are unloaded (#7826) + +========= +Build: 1.16.5-36.1.52 - Sat Jul 17 02:23:52 GMT 2021 + diesieben07: + [1.16] Allow blocks other than beds or respawn anchors to act as respawn points (#7824) + +========= +Build: 1.16.5-36.1.51 - Sat Jul 17 02:13:02 GMT 2021 + queekusme: + Changed AbstractFurnaceTileEntity's canBurn and burn functions to use IRecipe's 'assemble' instead of 'getResultItem' (#7756) + + judge40: + [1.16.x] Remove redundant mobgriefing check in SmallFireaballEntity. (#7761) + + judge40: + Use MobGriefingEvent for PiglinEntity when determining whether Piglins want to pick up items. (#7762) + + diesieben07: + Add IRecipeType parameter to burn time hooks (#7771) + + mike.kok: + Fixes tryFluidTransfer_Internal to respect the FluidStack drainable when draining fluidSource. (#7782) + + personthecat: + Synchronize `ResourcePackList#addPackFinder` (#7799) + + github: + Fix vanilla rotation/mirroring issues (#7803) + + Patch minecraft to fix MC-227255 and MC-134110, which are block + rotation and mirroring issues. I noticed this from problems with + Structurize, but this probably affects any other mods that allow + rotating or mirroring structures (as well as vanilla structure blocks). + + sekwah41: + Fix mod menu URL click bounds (#7804) + + thelnfamous1: + Adds knockback attribute to players and updated knockback calculation to PlayerEntity#attack (#7806) + + kinglemming: + Convenience change for potion enumeration - does not change patch size in any meaningful way! (#7811) + + cech12: + New hook to allow Trapdoors be climbable for custom ladders (#7816) + + won-ton: + Add AT entries for DimensionSettings to make them easier for mods to work with (#7817) + + lexmanos: + Regen patches + + daemonumbra: + Removed sidedness from PacketBuffer methods. (#7236) + + Affected methods: + * readLongArray (x2) + * readSectionPos + * readString (no-arg variant) + + covers1624: + Bypass chunk future chain when processing loads and getChunk called. (#7697) + +========= +Build: 1.16.5-36.1.36 - Sat Jul 17 00:24:32 GMT 2021 + thesilkminer: + Add data generators for sounds.json (#6982) + +========= +Build: 1.16.5-36.1.35 - Thu Jul 15 23:56:00 GMT 2021 + diesieben07: + Add custom TextureAtlasSprite loaders (#7822) + + Adds a system for mods to specify custom texture loaders which can be requested by the resource pack through a metadata section in the .mcmeta file. Due to technical reasons, png file is still required for MC to identify a texture as existing, even if the loader doesn't use it. + +========= +Build: 1.16.5-36.1.34 - Thu Jul 15 23:40:24 GMT 2021 + commoble: + Fix PlayerGameModeEventTest and ForgeWorldTypeTest so they don't crash the dedicated server when running forge_test_server in forgedev (#7869) + +========= +Build: 1.16.5-36.1.33 - Wed Jul 14 01:16:19 GMT 2021 + lexmanos: + Add userdev to run config. + +========= +Build: 1.16.5-36.1.32 - Thu Jun 17 02:23:34 GMT 2021 + diesieben07: + Add truncation to FMLStatusPing to work around protocol limits (#7818) + +========= +Build: 1.16.5-36.1.31 - Wed Jun 09 16:35:21 GMT 2021 + sizableshrimp: + Remove ModelResourceLocation patch for SAS entry (#7813) + +========= +Build: 1.16.5-36.1.30 - Tue Jun 08 20:34:06 GMT 2021 + diesieben07: + Fix jar file path detection if the path contains a "!" (#7790) + +========= +Build: 1.16.5-36.1.29 - Tue Jun 08 19:54:50 GMT 2021 + mrp-v2: + Add method to get the number of elements in a model builder (#7792) + +========= +Build: 1.16.5-36.1.28 - Tue Jun 08 19:47:54 GMT 2021 + diesieben07: + Fix vanilla packet splitter remote detection and add advancement packet splitting (#7802) + +========= +Build: 1.16.5-36.1.27 - Tue Jun 08 19:33:44 GMT 2021 + 17338378+nightenom: + Add option for linear filtering of text texture (#7645) + +========= +Build: 1.16.5-36.1.26 - Tue Jun 08 19:07:49 GMT 2021 + mrp-v2: + Use empty model instead of missing model for non-existant layers in multilayer models (#7750) + + Fixes issues when using multi-layer models as part of composite models + +========= +Build: 1.16.5-36.1.25 - Thu Jun 03 17:30:10 GMT 2021 + lexmanos: + Add debug logging to packet compression encoder. + Should make figuring out who is sending large packets easier. + Disable with -Pforge.disablePacketCompressionDebug=true + +========= +Build: 1.16.5-36.1.24 - Sun May 23 18:09:00 GMT 2021 + lexmanos: + Removed signature line from mod list screen. #7500 + +========= +Build: 1.16.5-36.1.23 - Mon May 17 20:56:15 GMT 2021 + curle: + Reinstate the MinecartCollisionHandler field to AbstractMinecartEntity (#7748) Closes #7506. + +========= +Build: 1.16.5-36.1.22 - Mon May 17 20:50:05 GMT 2021 + curle: + Fix PlayerEvent.BreakSpeed's pos being nullable. (#7747) Closes #7615. + +========= +Build: 1.16.5-36.1.21 - Mon May 17 20:43:50 GMT 2021 + curle: + Fix OBJ Loader data gen string (#7746) Closes #7616 + +========= +Build: 1.16.5-36.1.20 - Mon May 17 20:17:14 GMT 2021 + noeppi-noeppi: + Add an event similar to PlayerEvent.NameFormat but for the name shown in the tab list. (#7740) + +========= +Build: 1.16.5-36.1.19 - Mon May 17 20:10:45 GMT 2021 + curle: + Fix filling buckets with fluids without bucket items consuming the fluid (#7745) Closes #7670 + +========= +Build: 1.16.5-36.1.18 - Thu May 13 22:12:02 GMT 2021 + gigaherz: + Work around crash while loading flatworld with modded structures. (#7764) + + * Work around crash while loading flatworld with modded structures. + + * Maybe fix issue with gradle daemon leaking memory and slowing down CI builds. + +========= +Build: 1.16.5-36.1.17 - Wed May 12 21:33:59 GMT 2021 + gigaherz: + Update Forge to Gradle 6.9 + +========= +Build: 1.16.5-36.1.16 - Fri Apr 30 17:59:06 GMT 2021 + trikzon: + Add barrels and barrels/wooden block and item tag (#7676) + +========= +Build: 1.16.5-36.1.15 - Fri Apr 30 17:52:19 GMT 2021 + knightminer: + Fix shears not properly breaking tripwire (MC-129055) (#7718) + +========= +Build: 1.16.5-36.1.14 - Fri Apr 30 17:42:34 GMT 2021 + cpw: + try gradleVersion + + cpw: + trim? + + cpw: + toString? + + cpw: + fiddle + + cpw: + split ? + + cpw: + try better? + + cpw: + with + + cpw: + debug + + cpw: + debug + + cpw: + debug + + cpw: + debug + + cpw: + tokenize + + cpw: + map + + cpw: + trims + + cpw: + tidy + + cpw: + try passing in env + + cpw: + try passing in env + + s8johost: + Fix Line endings in tooltips not handled properly in multiplayer screen Closes #7738 (#7739) + +========= +Build: 1.16.5-36.1.13 - Fri Apr 23 20:28:12 GMT 2021 + shroomdog27: + Fix cats, phantoms and pillagers saying they're at BlockPos.ZERO during LivingSpawnEvent.CheckSpawn (#7722) + +========= +Build: 1.16.5-36.1.12 - Fri Apr 23 05:59:08 GMT 2021 + xfacthd: + Pass BlockPos to BlockParticleData used for "fall impact" particle (#7705) + + mrp-v2: + [1.16] Add missing Multipart Blockstate Builder feature: Nested condition groups (#7677) + +========= +Build: 1.16.5-36.1.10 - Fri Apr 23 05:52:41 GMT 2021 + sciwhiz12: + Check version ranges of optional dependencies when present (#7710) + + If an optional dependency is present, but it does not conform to the version range, + it will now error out in the same fashion as missing required dependencies, instead + of a more cryptic error down the line due to a missing method/class/field/etc. + + Implements and closes #7696 + +========= +Build: 1.16.5-36.1.9 - Fri Apr 23 05:45:51 GMT 2021 + diesieben07: + Fix ClientVisualization crashing on systems without monitors (#7719) + +========= +Build: 1.16.5-36.1.8 - Fri Apr 23 05:34:56 GMT 2021 + atkarimarton: + Fix Furnace Minecarts going faster then vanilla (#7725) + +========= +Build: 1.16.5-36.1.7 - Fri Apr 23 05:28:36 GMT 2021 + ateranimavis: + Update for Forge's new maven (#7723) + +========= +Build: 1.16.5-36.1.6 - Sun Apr 18 15:47:08 GMT 2021 + cpw: + A bloody quote FFS + + Signed-off-by: cpw + + cpw: + Update for new maven + + Signed-off-by: cpw + +========= +Build: 1.16.5-36.1.4 - Fri Apr 02 18:31:07 GMT 2021 + cpw: + Fix broken java9hacks for j16 handling.. + + Signed-off-by: cpw + +========= +Build: 1.16.5-36.1.3 - Tue Mar 30 01:05:30 GMT 2021 + sizableshrimp: + Add generic EntityTeleportEvent (#7694) + +========= +Build: 1.16.5-36.1.2 - Mon Mar 22 06:24:40 GMT 2021 + covers1624: + Restore SS version, fixes findFieldInstanceChecks + +========= +Build: 1.16.5-36.1.1 - Wed Mar 17 17:04:46 GMT 2021 + diesieben07: + Fix sign textures being stitched onto every texture atlas (#7690) + +========= +Build: 1.16.5-36.1.0 - Mon Mar 15 22:11:58 GMT 2021 + lexmanos: + Fix AT order, missed exec line and bump for RB. + +========= +Build: 1.16.5-36.0.63 - Mon Mar 15 21:08:56 GMT 2021 + diesieben07: + Fix wrong eye height when entity size changes (esp. baby animals) (#7628) + +========= +Build: 1.16.5-36.0.62 - Mon Mar 15 21:02:36 GMT 2021 + diesieben07: + Allow ITeleporter to override the vanilla teleport sound (#7682) + +========= +Build: 1.16.5-36.0.61 - Mon Mar 15 20:20:21 GMT 2021 + sizableshrimp: + Fix datapack exception related to EnumArgument with siblings (#7686) + + Invalid enum constants are now properly thrown as a CommandSyntaxException + +========= +Build: 1.16.5-36.0.60 - Mon Mar 15 19:29:01 GMT 2021 + 42383791+kaydogz: + Add support for custom WoodTypes (#7623) + +========= +Build: 1.16.5-36.0.59 - Mon Mar 15 19:19:16 GMT 2021 + lexmanos: + Use JGit instead of GrGit now that jcenter is going away. + Update missed mapped name in MDK. + +========= +Build: 1.16.5-36.0.58 - Sat Mar 13 19:07:24 GMT 2021 + diesieben07: + Fix incorrectly replaced SRG names + + gigaherz: + Fix yet another copypasta. + + gigaherz: + Bump nashorn wrapper version. + +========= +Build: 1.16.5-36.0.55 - Fri Mar 12 18:51:48 GMT 2021 + ateranimavis: + Fix potential Deadlock when using custom Item entities. (#7532) + + Be careful when adding Entities during Chunk Load (#7519) + +========= +Build: 1.16.5-36.0.54 - Fri Mar 12 02:04:32 GMT 2021 + gigaherz: + Fix copypasta. + +========= +Build: 1.16.5-36.0.53 - Fri Mar 12 00:11:22 GMT 2021 + curle: + Automatically fix some issues with configurations deemed invalid for simple reasons (#7671) + +========= +Build: 1.16.5-36.0.52 - Thu Mar 11 20:59:54 GMT 2021 + gigaherz: + Introduce a new feature that lets mods know if optional mods and optional network channels are present in the remote. + Allow connections from forge versions that don't have the vanilla splitter. + + gigaherz: + Bulk update license year, and use replacement variable so that the current year is always used. + + gigaherz: + Bump SpecialSource + + gigaherz: + Add coremod that injects bouncer methods to work around name conflicts with official names. + Fixes a binary break. + +========= +Build: 1.16.5-36.0.48 - Tue Mar 09 22:22:20 GMT 2021 + lexmanos: + Update to FG4, and Gradle 6.8. + + lexmanos: + Regenerate patches with relative headers. This should lower conflicts in future PRs. + Convert Forge to use Official mappings. + Mojang released their obfuscation mappings but we have not used them up until now due to wanting to get their license to be more explicitly permissive. + It is clear that their intent is to allow us to use their names for developing mods like this. + See the full wording, and our interpretation here: https://github.com/MinecraftForge/MCPConfig/blob/master/Mojang.md + +========= +Build: 1.16.5-36.0.46 - Thu Mar 04 20:15:10 GMT 2021 + diesieben07: + Support splitting vanilla packets that are too large on forge<->forge connections (#7485) + + Currently only for SUpdateRecipesPacket and STagsListPacket that blow up with huge datapacks + +========= +Build: 1.16.5-36.0.45 - Wed Mar 03 20:50:47 GMT 2021 + pupnewfster: + Fix a few places where the vanilla method was being called instead of the forge one (#7535) + + Cleanup javadocs references slightly, fix a couple spots not using the proper forge hooks, and remove a couple unneeded patches + Update deprecation comment on isAir + +========= +Build: 1.16.5-36.0.44 - Wed Mar 03 05:29:04 GMT 2021 + firecontroller1847: + Add Opacity to ForgeHooksClient#renderMainMenu (#7660) + +========= +Build: 1.16.5-36.0.43 - Thu Feb 25 02:37:09 GMT 2021 + oriondevelopment: + Add support for caching of configuration values. (#7608) + +========= +Build: 1.16.5-36.0.42 - Tue Feb 16 02:43:01 GMT 2021 + kovac1066: + Added entity attribute setup and creation events + +========= +Build: 1.16.5-36.0.41 - Tue Feb 16 01:28:51 GMT 2021 + knightminer: + Fix updateItemStackNBT not properly being called (#7646) + + Re-added ItemStack delegate redirect transformer + +========= +Build: 1.16.5-36.0.40 - Tue Feb 16 01:08:21 GMT 2021 + pupnewfster: + Fix a few FluidUtil issues that were causing DispenseFluidContainer to not function properly (#7422) + +========= +Build: 1.16.5-36.0.39 - Tue Feb 16 00:49:27 GMT 2021 + daemonumbra: + Fixed Configs not correcting when hot-loaded from changes on disk (#7427) + + ichttt: + Add a way to specify a custom background texture with namespaces in the Creative GUI. (#7404) + +========= +Build: 1.16.5-36.0.37 - Tue Feb 16 00:39:15 GMT 2021 + xzk0701: + Reduce default logging markers in the MDK. Modders can re-enable these for better debugging. (#7432) + + Modders PLEASE read your damn log, and fix the errors we point out. Spamming modpacks with stack traces is just lazy programming. + +========= +Build: 1.16.5-36.0.36 - Tue Feb 16 00:19:30 GMT 2021 + sciwhiz12: + Deprecate Forge's setdimension command, vanilla execute command can do this now. (#7459) + +========= +Build: 1.16.5-36.0.35 - Mon Feb 15 23:38:35 GMT 2021 + spb.max2: + Fix ItemTextureQuadConverter.convertTexture generating wrong quads, fixes #7620 (#7650) + +========= +Build: 1.16.5-36.0.34 - Mon Feb 15 23:22:40 GMT 2021 + florian: + Added MultipartBakedModel.getModelData(). (#7595) + + This allows custom IBakedModel implementations to use the IModelData provided by their IBakedModel.getModelData() when used in the context of a multipart model. + +========= +Build: 1.16.5-36.0.33 - Mon Feb 15 23:15:50 GMT 2021 + cyborgmas: + fix global cache not being a block render type (#7648) + +========= +Build: 1.16.5-36.0.32 - Mon Feb 15 22:52:15 GMT 2021 + 35673674+alcatrazescapee: + Allow mods to use additional custom LootParameter when querying existing loot tables (#7515) + +========= +Build: 1.16.5-36.0.31 - Mon Feb 15 21:40:16 GMT 2021 + shroomdog27: + Add ForgeHooks.canEntitySpawn to Cat, Phantom, and Patrol spawners. (#7569) + +========= +Build: 1.16.5-36.0.30 - Mon Feb 15 21:26:11 GMT 2021 + dev: + Fix/Replace player visibility event (#7573) + +========= +Build: 1.16.5-36.0.29 - Mon Feb 15 21:16:26 GMT 2021 + ateranimavis: + Fix: Clear the last error from glfwInit to prevent vanilla from throwing an exception later in the chain when glfw errors. (#7587) + +========= +Build: 1.16.5-36.0.28 - Mon Feb 15 20:56:51 GMT 2021 + 55965249+seymourimadeit: + Fix MC-181464 persisting for modded shields (#7602) + +========= +Build: 1.16.5-36.0.27 - Mon Feb 15 20:11:46 GMT 2021 + malte0811: + FIx race condition in LazyOptional (#7611) + +========= +Build: 1.16.5-36.0.26 - Mon Feb 15 03:16:02 GMT 2021 + xfacthd: + [1.16.5] Fix shaders breaking almost every overlay that uses textures, fixes #7575 (#7624) + +========= +Build: 1.16.5-36.0.25 - Mon Feb 15 03:10:24 GMT 2021 + telepathicgrunt: + Disable syncing of Feature and Biome registries (#7639) + +========= +Build: 1.16.5-36.0.24 - Mon Feb 15 03:04:46 GMT 2021 + drullkus: + Add IExtensibleEnum to GrassColorModifier (#7641) + +========= +Build: 1.16.5-36.0.23 - Mon Feb 15 02:36:26 GMT 2021 + shroomdog27: + Log stacktraces in NettyPacketEncoder. (#7654) + +========= +Build: 1.16.5-36.0.22 - Wed Feb 10 19:05:16 GMT 2021 + xfacthd: + Lower logging level for datafixer warning to debug (#7636) + +========= +Build: 1.16.5-36.0.21 - Tue Feb 09 22:19:29 GMT 2021 + pupnewfster: + Reintroduce forge's chunk manager to allow mods to force chunks with either a block position or entity (UUID) "owner" and have them properly persist between restarts (#7642) + +========= +Build: 1.16.5-36.0.20 - Tue Feb 09 21:28:24 GMT 2021 + pupnewfster: + Fix two places where querying an object for the new "valid" capability from a capability invalidation listener could cause the object to return the old invalid capability. (#7643) + +========= +Build: 1.16.5-36.0.19 - Tue Feb 09 21:21:44 GMT 2021 + cyborgmas: + Fix config spec in cases of enum class discrepancies (#7635) + +========= +Build: 1.16.5-36.0.18 - Tue Feb 09 21:06:36 GMT 2021 + diesieben07: + Fix onBlockAdded being called twice for ItemEntity placing non-TE blocks (#7607) + +========= +Build: 1.16.5-36.0.17 - Tue Feb 09 21:00:57 GMT 2021 + lachney: + Prevent NullPointerException when adding new loot pool. (#7605) + +========= +Build: 1.16.5-36.0.16 - Tue Feb 09 20:53:48 GMT 2021 + brandon4261: + Added generic multi part entity API (#7554) + +========= +Build: 1.16.5-36.0.15 - Sun Feb 07 03:41:41 GMT 2021 + cyborgmas: + Fix IAngerable entities crashing when reading nbt on client (#7618) + +========= +Build: 1.16.5-36.0.14 - Tue Feb 02 20:28:08 GMT 2021 + thesilkminer: + [1.16.x] Add loot table ID in Global Loot Modifiers (#7428) + + thesilkminer: + [1.16.x] Add loot table ID in Global Loot Modifiers (#7428) + +========= +Build: 1.16.5-36.0.13 - Sat Jan 30 02:07:17 GMT 2021 + pupnewfster: + Add a block tag to allow mods to blacklist blocks endermen should not be able to place blocks on top of, similar to how vanilla hardcodes against them being able to place things on bedrock (#7548) + +========= +Build: 1.16.5-36.0.12 - Sat Jan 30 02:01:35 GMT 2021 + 7419378+hellfirepvp: + Fix translucent model parts of MultiLayerModels rendering as missing models due to differing rendertypes when rendering block model (#7579) + + Signed-off-by: HellFirePvP <7419378+HellFirePvP@users.noreply.github.com> + +========= +Build: 1.16.5-36.0.11 - Sat Jan 30 01:35:10 GMT 2021 + pupnewfster: + Fix existing file tag provider support looking in the wrong folder for custom tag types (#7576) + +========= +Build: 1.16.5-36.0.10 - Thu Jan 28 21:07:30 GMT 2021 + cyborgmas: + Propery re-encode registries (#7629) + +========= +Build: 1.16.5-36.0.9 - Thu Jan 28 01:23:13 GMT 2021 + cyborgmas: + Properly encode registries. (#7626) + +========= +Build: 1.16.5-36.0.8 - Thu Jan 28 00:00:43 GMT 2021 + cyborgmas: + Inject vanilla dimensions inside worlds missing them (#7599) + +========= +Build: 1.16.5-36.0.7 - Wed Jan 27 00:32:53 GMT 2021 + lexmanos: + Update Coremods, ASM, and include standalone Nashorn to load on J15. + + lexmanos: + Introduce a new field_to_instanceof transformer to reduce some simple patches. + +========= +Build: 1.16.5-36.0.4 - Tue Jan 26 02:53:10 GMT 2021 + lexmanos: + Fix broken build. + + dev: + Add modded biomes to overworld biome list (#7360) + +========= +Build: 1.16.5-36.0.2 - Tue Jan 26 02:25:10 GMT 2021 + lexmanos: + Fix dynamic registries not getting ids assigned correctly from old worlds in specific unordered value insertions. Closes #7586 + +========= +Build: 1.16.5-36.0.1 - Sun Jan 17 21:05:36 GMT 2021 + knightminer: + Optionally add a milk fluid to the vanilla bucket (#7294) + + Fixes the previous broken code that was supposed to make mod registered milk returned by the vanilla bucket by allowing mods to enable a milk fluid. + +========= +Build: 1.16.5-36.0.0 - Fri Jan 15 19:42:24 GMT 2021 + lexmanos: + 1.16.5 Initial Update. + +========= +Build: 1.16.4-35.1.37 - Thu Jan 14 23:58:35 GMT 2021 + lexmanos: + Update Coremods, ASM, and include standalone Nashorn to load on J15. + +========= +Build: 1.16.4-35.1.36 - Thu Jan 07 20:24:49 GMT 2021 + ian.rehwinkel: + Added IWeatherParticleRenderHandler to allow a mod to take control over weather particles and sounds. (#7522) + +========= +Build: 1.16.4-35.1.35 - Thu Jan 07 20:16:03 GMT 2021 + covers1624: + Allow Chunk loading Tickets to opt-into forcing chunk ticks. (#7525) + +========= +Build: 1.16.4-35.1.34 - Thu Jan 07 20:10:18 GMT 2021 + malte0811: + Fix crash when mods add goals to skeleton horses (MC-206338) (#7509) + +========= +Build: 1.16.4-35.1.33 - Thu Jan 07 20:03:59 GMT 2021 + diesieben07: + Set WM_CLASS and WM_INSTANCE_NAME for early progress window (#7534) + +========= +Build: 1.16.4-35.1.32 - Wed Jan 06 03:17:35 GMT 2021 + 35673674+alcatrazescapee: + Make UnboundedMapCodec more lenient in decoding dimensions. Fixes MC-197860 (#7527) + +========= +Build: 1.16.4-35.1.31 - Tue Jan 05 19:59:52 GMT 2021 + lexmanos: + Prevent NPE and deprecated MissingMappings.getMappings function. Closes #6252 + + lexmanos: + Fix FML's Config Sync packet not allowing same length filenames in encoder and decoder. Closes #7584 + +========= +Build: 1.16.4-35.1.29 - Sun Jan 03 11:02:59 GMT 2021 + lexmanos: + Fix entities not correctly being able to be ridden under water. + +========= +Build: 1.16.4-35.1.28 - Mon Dec 28 21:56:51 GMT 2020 + git: + Fix crash when beehive is broken by fake player (#7566) + +========= +Build: 1.16.4-35.1.27 - Mon Dec 28 21:46:04 GMT 2020 + 35673674+alcatrazescapee: + Add supplier variant to `AbstractBlock.Properties#lootFrom` (#7563) + +========= +Build: 1.16.4-35.1.26 - Mon Dec 28 21:40:18 GMT 2020 + diesieben07: + Fix missing serializers when deserializing global loot modifiers (#7561) + + diesieben07: + Fix ModFileResourcePack.getAllResourceLocations ignoring resourceNamespace. (#7562) + + Fixes #7405 + +========= +Build: 1.16.4-35.1.24 - Mon Dec 28 21:34:39 GMT 2020 + diesieben07: + Fix VanillaConnectionNetworkFilter sending out invalid entity properties packets without an entity ID (#7560) + +========= +Build: 1.16.4-35.1.23 - Mon Dec 28 21:17:01 GMT 2020 + richard: + Make shear interactions extend to subclasses (#7544) + +========= +Build: 1.16.4-35.1.22 - Mon Dec 28 21:09:38 GMT 2020 + sciwhiz12: + Add a SoundType subclass that uses suppliers (#7538) + +========= +Build: 1.16.4-35.1.21 - Mon Dec 28 21:03:56 GMT 2020 + sciwhiz12: + Fix compound ingredient in shapeless recipes (#7537) Fixes #7530 + +========= +Build: 1.16.4-35.1.20 - Mon Dec 28 20:19:04 GMT 2020 + mrp-v2: + Fix modded PointOfInterestType's not populating blockstate map when registered (#7503) + + 35673674+alcatrazescapee: + Fix potential NPE in ForgeHooks.onItemPlaceIntoWorld when passing in null player. (#7505) + +========= +Build: 1.16.4-35.1.18 - Mon Dec 28 20:13:15 GMT 2020 + 48399898+poopoodice: + Add new LivingConversionEvent to control mobs turning into other mobs. (#7386) + +========= +Build: 1.16.4-35.1.17 - Mon Dec 28 20:01:42 GMT 2020 + knightminer: + Add ItemAttributeModifierEvent (#7484) + +========= +Build: 1.16.4-35.1.16 - Mon Dec 28 19:54:38 GMT 2020 + bward7864: + Fix RightClickBlock ALLOW not being implemented (#7426) + +========= +Build: 1.16.4-35.1.15 - Sat Dec 26 19:39:35 GMT 2020 + lexmanos: + Make mod data packs able to be disabled. It'll break things, but that's on you. Closes #6776 + + lexmanos: + Quiet down errors related to modders not changing their update urls from the default. + +========= +Build: 1.16.4-35.1.13 - Sat Dec 12 17:34:07 GMT 2020 + tterrag: + Add generated resource tracking to ExistingFileHelper + +========= +Build: 1.16.4-35.1.12 - Fri Dec 11 02:39:41 GMT 2020 + tterrag: + Fix BlockStateProvider item models not knowing about block models + + Add tests for this case + +========= +Build: 1.16.4-35.1.11 - Tue Dec 08 19:54:40 GMT 2020 + richard: + Override invalidateCaps instead of remove for vanilla TE capability invalidation (#7536) + + Properly invalidate patched in vanilla TE caps in invalidateCaps instead of remove so that they get invalidated on chunk unload + +========= +Build: 1.16.4-35.1.10 - Sat Dec 05 20:07:14 GMT 2020 + richard: + Make TEs invalidate capabilities when the chunk they are in unloads (#7529) + + Fixed LazyOptional potentially notifying invalidation listeners multiple times. + +========= +Build: 1.16.4-35.1.9 - Sat Dec 05 20:01:00 GMT 2020 + cordonfreeman: + Fixed entity navigation to stop entities spinning - MC-94054 (#7520) + +========= +Build: 1.16.4-35.1.8 - Sat Dec 05 19:52:56 GMT 2020 + 20846147+unbekannt1998: + Fix wrong function call in BlockStateProvider::horizontalFaceBlock (#7514) + +========= +Build: 1.16.4-35.1.7 - Sun Nov 29 02:11:08 GMT 2020 + tterrag: + Fix datagen order of multipart conditions being unstable + +========= +Build: 1.16.4-35.1.6 - Sat Nov 28 02:56:55 GMT 2020 + 35673674+alcatrazescapee: + Fix forge config option for default world type not applying unless you change the default world type (#7521) + +========= +Build: 1.16.4-35.1.5 - Fri Nov 27 23:57:23 GMT 2020 + gigaherz: + Implement feature for mods to define new world types (#7448) + + * Mods can now register world types via a new forge registry, and optionally register a settings screen to tweak them. + * The default world type for dedicated servers and singleplayer world creation is configurable via forge's common config. + +========= +Build: 1.16.4-35.1.4 - Tue Nov 24 17:14:21 GMT 2020 + csh2001331: + Fix dimType not encode to registries (#7513) + +========= +Build: 1.16.4-35.1.3 - Mon Nov 23 03:45:21 GMT 2020 + richard: + Add support for referencing forge's resources and specifying existing mods to data generators (#7456) + +========= +Build: 1.16.4-35.1.2 - Sun Nov 22 22:01:29 GMT 2020 + cpw: + Fix #6692 + + Thanks @AterAnimAvis for help and suggestions + + Signed-off-by: cpw + +========= +Build: 1.16.4-35.1.1 - Sat Nov 21 19:57:45 GMT 2020 + cyborgmas: + Fix translucent blocks not rendering properly when moved by pistons on fabulous (#7441) + +========= +Build: 1.16.4-35.1.0 - Fri Nov 20 20:54:30 GMT 2020 + lexmanos: + Bump version for RB. + +========= +Build: 1.16.4-35.0.22 - Fri Nov 20 18:24:46 GMT 2020 + 35673674+alcatrazescapee: + Fix MC-194811 - Removing structures causes chunk save errors. + + diesieben07: + Fix food bar not rendering when non-living entities are mounted (#7446) + +========= +Build: 1.16.4-35.0.20 - Fri Nov 20 18:18:37 GMT 2020 + diesieben07: + Fix concurrency issue in StartupMessageManager (#7483) + +========= +Build: 1.16.4-35.0.19 - Fri Nov 20 18:11:25 GMT 2020 + 35673674+alcatrazescapee: + Fix forge registry types that have private constructors (BlockStateProviderType, BlockPlacerType, FoliagePlacerType, TreeDecoratorType) (#7482) + +========= +Build: 1.16.4-35.0.18 - Sun Nov 15 16:08:55 GMT 2020 + cpw: + Fix problem where the absence of forge and MC in later loading triggered a weird crash. + + Signed-off-by: cpw + +========= +Build: 1.16.4-35.0.17 - Sat Nov 14 01:41:38 GMT 2020 + cpw: + Fix NPE problem when modid is mismatched. + + Signed-off-by: cpw + +========= +Build: 1.16.4-35.0.16 - Sat Nov 14 00:18:29 GMT 2020 + cpw: + Return the processed modlist data to the upstream system, not the raw unprocessed data. Should resolve the problem + that mixin complains about missing info when it's in a "crashed" situation. + + Signed-off-by: cpw + +========= +Build: 1.16.4-35.0.15 - Wed Nov 11 09:09:45 GMT 2020 + cyborgmas: + Fix dims on servers not loading the first run (#7445) + +========= +Build: 1.16.4-35.0.14 - Tue Nov 10 20:24:33 GMT 2020 + diesieben07: + Allow for custom argument types by filtering them on vanilla connections (#7463) + +========= +Build: 1.16.4-35.0.13 - Tue Nov 10 20:13:34 GMT 2020 + bward7864: + Add Player context to AnvilUpdateEvent (#7442) + +========= +Build: 1.16.4-35.0.12 - Tue Nov 10 20:02:33 GMT 2020 + git: + Don't overwrite PlayerAdvancement's player with a fake one (#7454) + + If a FakePlayer is constructed with the same UUID/GameProfile as a + currently active player, the player object within PlayerAdvancement is + set to the fake player. + + As fake players cannot receive advancements (see grantCriterion), this + prevents the actual player from receiving any advancements until they + change dimension/relog. + +========= +Build: 1.16.4-35.0.11 - Tue Nov 10 19:46:01 GMT 2020 + curle: + Add BannerBlock.forColor to SAS to fix banner.toItem() on servers. + +========= +Build: 1.16.4-35.0.10 - Tue Nov 10 19:36:40 GMT 2020 + boy132: + Call Harvest check event even if the block doesn't require any tool (#7414) + +========= +Build: 1.16.4-35.0.9 - Tue Nov 10 19:25:26 GMT 2020 + lexmanos: + Use linked collections to stabilize order when adding new registry entries. + + xfacthd: + Render local player when the renderViewEntity is not the local player (#7216) + +========= +Build: 1.16.4-35.0.7 - Sun Nov 08 04:12:02 GMT 2020 + cpw: + Some help in ExtensionPoint regarding DISPLAYTEST. Let's improve those tick rates! + + Signed-off-by: cpw + +========= +Build: 1.16.4-35.0.6 - Sun Nov 08 03:30:37 GMT 2020 + cpw: + Handle erroring during early mod construction phases, and actually report that into the error UI + by doing armslength exception handling and propagation. + + Signed-off-by: cpw + +========= +Build: 1.16.4-35.0.5 - Sun Nov 08 01:48:22 GMT 2020 + cpw: + Support backwards loading 1.16.3 mods in 1.16.4, because we are able to do that. Tweak loading a bit to be smarter about dependency errors of various kinds. + + Signed-off-by: cpw + +========= +Build: 1.16.4-35.0.4 - Sat Nov 07 20:10:44 GMT 2020 + gigaherz: + Add FluidStack codec, and a test mod that verifies its behaviour matches the existing write/read logic. + Add missing license headers. + +========= +Build: 1.16.4-35.0.3 - Sat Nov 07 02:11:47 GMT 2020 + cpw: + Update event bus version (should be 3.0.5) + + Tweak MDK to automatically populate recommended values for things like forge version, loader version and minecraft version. + + Signed-off-by: cpw + +========= +Build: 1.16.4-35.0.2 - Wed Nov 04 00:07:58 GMT 2020 + diesieben07: + Workaround for modded attributes on vanilla entities logging warnings on vanilla clients + + Switch to a handler-based approach per packet class, simplify patch, add some docs + + Add license header and docs + + Switch to a network handler based approach + + Switch to a network handler based approach + + revert build gradle change + + Simplify Packet patch + + Add license header to IForgePacket + + Revert ForgeHooks changes + + Less hacky and more generic way to filter packets for vanilla connections + + _Actually_ Order SAS. + It's early + + Order SAS + + simplify vanilla connection check + + Remove unneeded import change + +========= +Build: 1.16.4-35.0.1 - Mon Nov 02 19:57:45 GMT 2020 + cpw: + Fix early sorting bug that meant the file deduping was causing an error, to, well, not cause it, so we can get to an error screen. + + Signed-off-by: cpw + +========= +Build: 1.16.4-35.0.0 - Mon Nov 02 19:15:50 GMT 2020 + lexmanos: + 1.16.4 Initial Update + +========= +Build: 1.16.3-34.1.42 - Mon Nov 02 04:30:53 GMT 2020 + lexmanos: + Fix Biomes not properly copying over ids loaded from the save to the new Dynamic Registry. + +========= +Build: 1.16.3-34.1.41 - Mon Nov 02 01:09:57 GMT 2020 + gigaherz: + Introduce custom loader additions to the model data generators. (#7450) + + Currently implemented loaders: + * OBJ + * Composite + * Multi-layer + * Item layers (vanilla item/generated but with fullbright texture support) + * Bucket + * Separate Perspective + +========= +Build: 1.16.3-34.1.40 - Mon Nov 02 00:52:12 GMT 2020 + cpw: + actually rollback on error in registry events. + + Signed-off-by: cpw + +========= +Build: 1.16.3-34.1.39 - Sun Nov 01 22:09:32 GMT 2020 + cpw: + Update modlauncher. fixes #7452 + + Signed-off-by: cpw + + cpw: + Return client resources even if no data pack found on server. Closes #6225 (Pull request) + + Signed-off-by: cpw + + tobias.hotz: + Auto-detect ansi support for log4j2 + + move to fml.loading subpackage + + Add license header + + cpw: + Fix config parse failure causing crash in building exception message. fixes #7438 + + Signed-off-by: cpw + +========= +Build: 1.16.3-34.1.35 - Thu Oct 29 17:09:31 GMT 2020 + malte0811: + Fix (NonNull)Lazy.Concurrent using a global lock (#7403) + + * Fix Lazy.Concurrent using a global lock, thus preventing multiple threads from resolving independent Lazy's at the same time + * Use Lazy with an added null check to implement NonNullLazy + +========= +Build: 1.16.3-34.1.34 - Thu Oct 29 00:12:09 GMT 2020 + gigaherz: + Update forge mappings to 20201028-1.16.3 (#7435) + +========= +Build: 1.16.3-34.1.33 - Tue Oct 27 16:01:02 GMT 2020 + 35673674+alcatrazescapee: + Fix breaking changes from the Biome rename PR #7434 (#7439) + +========= +Build: 1.16.3-34.1.32 - Mon Oct 26 23:52:47 GMT 2020 + sciwhiz12: + Reimplement nametag distance attribute, fix attribute translation keys (#7387) + +========= +Build: 1.16.3-34.1.31 - Mon Oct 26 22:07:02 GMT 2020 + 35673674+alcatrazescapee: + Fix data pack biomes failing to load in SingleBiomeProvider (#7434) + +========= +Build: 1.16.3-34.1.30 - Mon Oct 26 22:00:28 GMT 2020 + cpw: + Add in proper handling of equals and hashcode for modjar urls. Fixes very slow loading on windows. + + Signed-off-by: cpw + +========= +Build: 1.16.3-34.1.29 - Mon Oct 26 12:51:24 GMT 2020 + cpw: + Force 8.0.5 ML + + Signed-off-by: cpw + +========= +Build: 1.16.3-34.1.28 - Mon Oct 26 11:32:40 GMT 2020 + cpw: + Restore FingerprintViolationEvent with appropriate THIS IS F*CKING DEAD DELET WARNINGS. + Also, notify in UI if using legacy JDK without capability to read out security data from mod jars. + + Signed-off-by: cpw + +========= +Build: 1.16.3-34.1.27 - Mon Oct 26 02:27:48 GMT 2020 + cpw: + Rollback registries to vanilla state if something happens during loading, so subsequent activities can still run and not generate false reports.. + + Signed-off-by: cpw + + cpw: + Add signature reporting for mods, using new signature capture from ModLauncher. Need to figure out + how to reflect Minecraft's JAR signatures into here. + + Signed-off-by: cpw + +========= +Build: 1.16.3-34.1.25 - Tue Oct 20 19:32:40 GMT 2020 + lexmanos: + Fix mcp_snapshot mapping issue causing unneeded patches. Closes #7424 + +========= +Build: 1.16.3-34.1.24 - Tue Oct 20 11:26:03 GMT 2020 + gigaherz: + Fix resource leak in the OBJ loader. + +========= +Build: 1.16.3-34.1.23 - Fri Oct 16 19:10:02 GMT 2020 + djbake101: + Fix issue with ITeleporter allowing easier use of vanilla logic. (#7317) + +========= +Build: 1.16.3-34.1.22 - Thu Oct 15 19:49:26 GMT 2020 + richard: + Adds tag support for Enchantments, Potions, and TileEntityTypes (#7379) + +========= +Build: 1.16.3-34.1.21 - Thu Oct 15 19:43:33 GMT 2020 + lexmanos: + Resuscitate BiomeDictionary using RegistryKeys instead of biome references. + +========= +Build: 1.16.3-34.1.20 - Thu Oct 15 17:15:15 GMT 2020 + ocelot5836: + Add event for player changing game mode (#7355) + +========= +Build: 1.16.3-34.1.19 - Mon Oct 12 18:11:22 GMT 2020 + cpw: + Fix RCON multipacket responses not actually understanding UTF8. + + Signed-off-by: cpw + +========= +Build: 1.16.3-34.1.18 - Mon Oct 12 01:49:09 GMT 2020 + cpw: + Fix RCON not sending newlines in output for multiline. Fixes https://bugs.mojang.com/browse/MC-7569, a very old bug that is really annoying if you use RCON. + + Signed-off-by: cpw + +========= +Build: 1.16.3-34.1.17 - Sat Oct 10 16:45:26 GMT 2020 + championash5357: + Fix Texture Presence String (#7408) + +========= +Build: 1.16.3-34.1.16 - Fri Oct 09 19:57:26 GMT 2020 + lexmanos: + Fix typo causing potential error in vine growth. Closes #7406 + Sort missing registry dumps by name, making it easier to read. + +========= +Build: 1.16.3-34.1.15 - Fri Oct 09 13:58:36 GMT 2020 + gigaherz: + Fixed conditional advancement loading when using the "advancements" array. + Added automatic generation of conditional advancements from the criteria in the conditional recipe entries. + Added advancement name calculation from the recipe ID. + +========= +Build: 1.16.3-34.1.14 - Thu Oct 08 21:08:45 GMT 2020 + 32142731+flanks255: + Additions to the mdk build.gradle to accommodate datagens. (#7398) + +========= +Build: 1.16.3-34.1.13 - Thu Oct 08 21:02:59 GMT 2020 + daemonumbra: + Added Basic Class-Level SAS Capability to checkSAS, added Vector4f to SAS (#7385) + +========= +Build: 1.16.3-34.1.12 - Wed Oct 07 20:04:11 GMT 2020 + richard: + Add hooks to allow modification of structures spawn lists (#7344) + +========= +Build: 1.16.3-34.1.11 - Tue Oct 06 19:38:36 GMT 2020 + richard: + Add back patches to Screen allowing for item tooltips to be auto wrapped again (#7378) + + Only deals with the methods receiving an ItemStack or ITextComponent(s), the methods that take IReorderingProcessor(s) are left alone. + +========= +Build: 1.16.3-34.1.10 - Mon Oct 05 14:34:56 GMT 2020 + adam: + Bump mixin version to 0.8.2 + +========= +Build: 1.16.3-34.1.9 - Mon Oct 05 10:30:12 GMT 2020 + cpw: + Remove redundant call to CrashReport generator - Vanilla is doing a crashreport for itself at startup now. + + Add a UUID into crashreport that is also logged in all channels at crash report generation time. This will allow to associate crash reports and the logs. + + Signed-off-by: cpw + + cpw: + Add in extra debug logging + + Signed-off-by: cpw + +========= +Build: 1.16.3-34.1.7 - Sun Oct 04 19:51:37 GMT 2020 + cpw: + Modify how ModLoadingStage handles dispatch to Registry Events. Stops the objectholder spam and generally improves performance on larger packs. + + Signed-off-by: cpw + + cpw: + Fix doc README and answer lex's question + + Signed-off-by: cpw + +========= +Build: 1.16.3-34.1.5 - Fri Oct 02 23:40:14 GMT 2020 + daemonumbra: + Added "Bukkit Plugin" to InvalidModIdentifier (#7384) + +========= +Build: 1.16.3-34.1.4 - Fri Oct 02 23:34:26 GMT 2020 + richard: + Fix vanilla Campfire smoke bug. MC-201374 (#7381) + +========= +Build: 1.16.3-34.1.3 - Fri Oct 02 23:28:31 GMT 2020 + sciwhiz12: + Fix toggleable keybindings still being active while in GUI Fixes #7370 (#7373) + +========= +Build: 1.16.3-34.1.2 - Fri Oct 02 22:06:59 GMT 2020 + dev: + Fix modded EntityClassifications not being useable in the codec. (#7337) + +========= +Build: 1.16.3-34.1.1 - Mon Sep 28 18:02:11 GMT 2020 + cech12: + Support effective materials of vanilla AxeItem (#7351) + +========= +Build: 1.16.3-34.1.0 - Thu Sep 24 07:05:13 GMT 2020 + lexmanos: + Prep new RB. + +========= +Build: 1.16.3-34.0.21 - Thu Sep 24 06:46:57 GMT 2020 + ichttt: + Fix grass disappearing when alwaysSetupTerrainOffThread is true (#7291) + +========= +Build: 1.16.3-34.0.20 - Thu Sep 24 06:41:41 GMT 2020 + 35673674+alcatrazescapee: + Accessors for inspecting and removal of biome generation settings. Fixed carvers still being immutable. (#7339) + +========= +Build: 1.16.3-34.0.19 - Thu Sep 24 06:36:25 GMT 2020 + lexmanos: + Revive BiomeManager and BiomeLayer hooks. + +========= +Build: 1.16.3-34.0.18 - Thu Sep 24 03:12:19 GMT 2020 + richard: + Fix a few minor issues with custom tag types and fix OptionalNamedTags (#7316) + +========= +Build: 1.16.3-34.0.17 - Wed Sep 23 22:10:11 GMT 2020 + diesieben07: + Fix ToggleableKeyBinding differences to vanilla. (#7338) + +========= +Build: 1.16.3-34.0.16 - Wed Sep 23 21:34:47 GMT 2020 + yunus1903: + Updated build badge versions to 1.16.3 in readme (#7325) + + diesieben07: + Fix forge light pipeline applying block offsets twice (#7323) + +========= +Build: 1.16.3-34.0.14 - Wed Sep 23 21:16:46 GMT 2020 + ichttt: + Add a better license error screen (#7350) + +========= +Build: 1.16.3-34.0.13 - Tue Sep 22 19:14:17 GMT 2020 + darklime: + Fixed container item being consumed in brewing stand. #7307 (#7314) + +========= +Build: 1.16.3-34.0.12 - Tue Sep 22 19:06:10 GMT 2020 + sciwhiz12: + Fix parse results of CommandEvent being disregarded (#7303) + +========= +Build: 1.16.3-34.0.11 - Tue Sep 22 18:58:28 GMT 2020 + 17338378+nightenom: + [1.16] Fix possible crash when using rendering regionCache (#7207) + +========= +Build: 1.16.3-34.0.10 - Tue Sep 22 18:41:16 GMT 2020 + 35673674+alcatrazescapee: + [1.16] Reimplement ICloudRenderHandler, ISkyRenderHandler and IWeatherRenderHandler (#6994) + +========= +Build: 1.16.3-34.0.9 - Fri Sep 18 00:58:08 GMT 2020 + 35673674+alcatrazescapee: + Make Biome.Climate and BiomeAmbiance fields accessible (#7336) + +========= +Build: 1.16.3-34.0.8 - Thu Sep 17 20:42:53 GMT 2020 + cpw: + Use mixin 0.8.1. Should fix problems with mixin not working properly with latest modlauncher. + + Signed-off-by: cpw + +========= +Build: 1.16.3-34.0.7 - Tue Sep 15 20:07:25 GMT 2020 + sebastian: + Sets the empty/fill sounds for vanilla fluids. + Use Fluid's fillSound rather than emptySound when filling buckets. + +========= +Build: 1.16.3-34.0.6 - Tue Sep 15 19:47:08 GMT 2020 + cyborgmas: + Add MatrixStack-aware alternatives to the methods in GuiUtils (#7127) + +========= +Build: 1.16.3-34.0.5 - Tue Sep 15 16:51:58 GMT 2020 + thelonedevil: + Fix json biomes not setting registry name correctly for the BiomeLoadingEvent. (#7329) + +========= +Build: 1.16.3-34.0.4 - Tue Sep 15 14:18:16 GMT 2020 + gigaherz: + Fix inconsistencies in how the values from the model are passed into the baked model. + This puts them in line with vanilla, as intended. + +========= +Build: 1.16.3-34.0.3 - Tue Sep 15 13:23:05 GMT 2020 + yunus1903: + Reimplemented drawHoveringText (#7268) + +========= +Build: 1.16.3-34.0.2 - Tue Sep 15 00:43:19 GMT 2020 + lexmanos: + New BiomeLoadingEvent that allows modders to edit biomes as they are being deserialized. + +========= +Build: 1.16.3-34.0.1 - Fri Sep 11 15:55:28 GMT 2020 + lexmanos: + Bump MCP version for lambda issue. + +========= +Build: 1.16.3-34.0.0 - Thu Sep 10 19:10:33 GMT 2020 + lexmanos: + 1.16.3 Update + Also included a bunch of warning cleanups. + +========= +Build: 1.16.2-33.0.61 - Thu Sep 10 18:54:56 GMT 2020 + redstonedubstep: + Fix tile entities being replaced when not needed. (#7318) + +========= +Build: 1.16.2-33.0.60 - Thu Sep 10 18:02:15 GMT 2020 + malte0811: + Fix exception when getting rendering box for tile entities with no collision boxes. (#7301) + +========= +Build: 1.16.2-33.0.59 - Wed Sep 09 23:05:21 GMT 2020 + cpw: + More crash reporting tweaks. Don't crash when trying to show warnings. Also, put the exception name in the error screen on the second line! + + Signed-off-by: cpw + +========= +Build: 1.16.2-33.0.58 - Wed Sep 09 17:09:09 GMT 2020 + diesieben07: + Fix Minecart speed cap on rail being initialized to 0 (#7315) + +========= +Build: 1.16.2-33.0.57 - Wed Sep 09 02:10:45 GMT 2020 + richard: + Add support for custom tag types (#7289) + +========= +Build: 1.16.2-33.0.56 - Wed Sep 09 00:06:22 GMT 2020 + cpw: + More crash report tweaks. Put a button to open the generated crash report on the error screen, tweak formatting of crash report, and add the enhanced stack trace data (transformers et al) + + Signed-off-by: cpw + +========= +Build: 1.16.2-33.0.55 - Tue Sep 08 21:00:19 GMT 2020 + championash5357: + New hook for better custom scaffolding movement (#7261) + +========= +Build: 1.16.2-33.0.54 - Tue Sep 08 20:47:48 GMT 2020 + mrtschipp: + Add partialTicks to RenderNameplateEvent (#7277) + + cyborgmas: + Prevent duplicate wrapper tags from crashing (#7283) + + mrp-v2: + Fix custom teleporters NPE (#7296) + + cyborgmas: + Fixed crash with zip paths (#7300) + +========= +Build: 1.16.2-33.0.50 - Tue Sep 08 20:23:27 GMT 2020 + nrbeech: + Fixing logic in getCurrentRailPosition to correctly identify the rail… (#7276) + +========= +Build: 1.16.2-33.0.49 - Tue Sep 08 20:14:58 GMT 2020 + sciwhiz12: + Remove dead ForgeHooks.canToolHarvestBlock function. (#7262) + + sciwhiz12: + Bump resource pack version to 6 (#7299) + + edwin.mindcraft: + [1.16.x] Fixes for Bamboo, Enchantments and Conduits, small adjustments to bring some patches closer to the vanilla code. (#7239) + +========= +Build: 1.16.2-33.0.46 - Tue Sep 08 19:50:14 GMT 2020 + championash5357: + Re-implement DrawHighlightEvent$HighlightEntity Firing (#7233) + +========= +Build: 1.16.2-33.0.45 - Tue Sep 08 19:25:58 GMT 2020 + ichttt: + Reimplement FarmlandWaterManager (#7213) + +========= +Build: 1.16.2-33.0.44 - Tue Sep 08 19:11:16 GMT 2020 + cyborgmas: + Add dataprovider for Global Loot Modifiers (#6960) + +========= +Build: 1.16.2-33.0.43 - Tue Sep 08 19:01:09 GMT 2020 + ichttt: + Fix crash when dumping crash report for an exception that has a null cause (#7308) + +========= +Build: 1.16.2-33.0.42 - Mon Sep 07 01:29:40 GMT 2020 + cpw: + Tweak crash report dump to visit all the causes up to the top. + + Signed-off-by: cpw + +========= +Build: 1.16.2-33.0.41 - Sun Sep 06 23:39:13 GMT 2020 + cpw: + Fix ExplodedDirectoryLocator visiting non-existent paths. Closes #7203 + + Also, bump modlauncher to 7.0.1 to fix resources. + + Signed-off-by: cpw + +========= +Build: 1.16.2-33.0.40 - Sun Sep 06 22:08:22 GMT 2020 + cpw: + Use new enumeration mechanism in ModLauncher, to allow getResources to work. This enables serviceloader-in-mods, and other stuff that might need to visit multiple mod jars. Also, tweaked the visitor code slightly, may result in a trivial performance change. Closing #7302 as it's not really relevant any more. + + Signed-off-by: cpw + + cpw: + Park the polling thread for a bit, if we're not the one driving the task list forwards. This allows for the actual driver to work on low cpu count machines. + + Signed-off-by: cpw + + cpw: + Fix some potential issues in crash dumping during mod loading + + Signed-off-by: cpw + +========= +Build: 1.16.2-33.0.37 - Thu Sep 03 16:37:38 GMT 2020 + cpw: + Fix compiler issue in eclipse properly + + Signed-off-by: cpw + +========= +Build: 1.16.2-33.0.36 - Thu Sep 03 12:40:52 GMT 2020 + sciwhiz12: + Fix crash caused by previous commit (#7298) + +========= +Build: 1.16.2-33.0.35 - Thu Sep 03 04:15:27 GMT 2020 + lexmanos: + Dirty casting hacks to fix eclipse compiler inference issue. I'm sorry cpw. + +========= +Build: 1.16.2-33.0.34 - Thu Sep 03 03:38:16 GMT 2020 + tterrag: + Fix broken ExistingFileHelper import + + Add licenses to some new files + + tterrag: + Add validation via resources for tag providers (#7271) + + BREAKING CHANGE: Moved ExistingFileHelper to common package + Remove various workarounds from forge tag providers + +========= +Build: 1.16.2-33.0.32 - Tue Sep 01 18:36:21 GMT 2020 + cpw: + Move the "modloading" thread activity onto _our_ worker pool. It turns out that the vanilla worker pool can deadlock during stitching if it's insufficiently large, if modloader "waitForTransition" is also a worker member of that pool. + + Closes #7293 (to reproduce issue easily, modify Util.func_240979_a_ and change the values in the MathHelper.clamp call). I've verified that 3 and below for "max" cause the problem. (I didn't test a whole range of values, just sufficient to reproduce problem and verify fix). Note that setting it to zero (and using the "direct executor" that's inaccessible in normal operation) works as well with this fix. + + Signed-off-by: cpw + +========= +Build: 1.16.2-33.0.31 - Tue Sep 01 02:27:07 GMT 2020 + cpw: + Fix missed debugging code. Read the config from the config. + + Signed-off-by: cpw + +========= +Build: 1.16.2-33.0.30 - Tue Sep 01 01:31:57 GMT 2020 + cpw: + Revert "Shut down all other mod handlers if the loading cycle errors. This prevents other mods from throwing errors and being blamed for initial cause. This is a temporary hack until cpw re-writes the mod event dispatcher." + + This reverts commit 7592bbe8 + + Signed-off-by: cpw + + cpw: + Revert "Properly shutdown FMLModContainer's event bus when an error in a lifecycle event is detected." + + This reverts commit 30bad1e2 + + Signed-off-by: cpw + + cpw: + Redo event dispatch, removes a bunch of nonsense, and tries to integrate with the vanilla CF system where possible + + Signed-off-by: cpw + + cpw: + Fix up all the things. Removed SidedProvider because it served no real purpose anymore. + + Signed-off-by: cpw + + cpw: + Fix up slight registry change and other 1.16.2 stuffs. + + Signed-off-by: cpw + +========= +Build: 1.16.2-33.0.23 - Sun Aug 30 23:05:24 GMT 2020 + ichttt: + Add particle culling (#6981) + +========= +Build: 1.16.2-33.0.22 - Wed Aug 26 16:50:02 GMT 2020 + lexmanos: + Wrap vanilla's 'default' biome registry in ForgeRegistry. + This should allow registering mod dimensions like in 1.16.1, while the data driven system is fleshed out. + +========= +Build: 1.16.2-33.0.21 - Tue Aug 25 01:11:38 GMT 2020 + gigaherz: + Clarify in the LazyOptional which methods carry the lazyness over to the returned value and which don't. (#6750) + + For consistency, this meant making a few changes: + - Renamed the existing lazy mapping method to lazyMap, to indicate that it doesn't run the mapping immediately. + - Added a new implementation of map(), which returns Optional, and resolves the value in the process. + - Changed filter() to return Optional, since there's no way to filter lazily. + - Added a new method resolve(), which helps convert the custom LazyOptional class into a standard Optional, for use + with library methods that expect Optional. + + * Update License headers. + +========= +Build: 1.16.2-33.0.20 - Fri Aug 21 21:27:21 GMT 2020 + sciwhiz12: + Add user-friendly exceptions when config loading fails (#7214) + +========= +Build: 1.16.2-33.0.19 - Fri Aug 21 18:53:46 GMT 2020 + dev: + Replace EntityHeight event with EntitySize event (#6858) + +========= +Build: 1.16.2-33.0.18 - Fri Aug 21 18:38:31 GMT 2020 + davide2910: + [1.16] ForgeEventFactory#canCreateFluidSource reintroduced (#7181) + +========= +Build: - Fri Aug 21 18:31:19 GMT 2020 + cyborgmas: + Cleanup and expand Forge tags (#7004) + +========= +Build: 1.16.2-33.0.16 - Fri Aug 21 18:25:49 GMT 2020 + sciwhiz12: + Fix modproperties property in mods.toml causing exception (#7192) + +========= +Build: 1.16.2-33.0.15 - Fri Aug 21 18:15:53 GMT 2020 + me: + Log info about server list warning (#7209) + + Make it easier to figure out what mods are missing or have to be marked as client/server side only. + +========= +Build: 1.16.2-33.0.14 - Fri Aug 21 18:06:47 GMT 2020 + goto.minecraft: + Fix ItemStack#isDamageable is not calling Item#isDamagable (#7221) + +========= +Build: 1.16.2-33.0.13 - Fri Aug 21 17:48:58 GMT 2020 + diesieben07: + Improve performance and cleanup code for DelegatingResourcePack (#7228) + +========= +Build: 1.16.2-33.0.12 - Fri Aug 21 17:29:33 GMT 2020 + cyborgmas: + Fix small logging issues with loading pack.png for mods (#7265) + +========= +Build: 1.16.2-33.0.11 - Fri Aug 21 17:23:30 GMT 2020 + diesieben07: + Fix config iteration order (#7230) + +========= +Build: 1.16.2-33.0.10 - Fri Aug 21 09:47:23 GMT 2020 + lexmanos: + Cleanup Forge's build script, fix some unneeded patches. + Add checkExcscheckAll tasks. + +========= +Build: 1.16.2-33.0.9 - Fri Aug 21 04:35:17 GMT 2020 + championash5357: + Readding DifficultyChangeEvent hooks (#7240) + +========= +Build: 1.16.2-33.0.8 - Fri Aug 21 04:29:10 GMT 2020 + malte0811: + Improve startup time by caching the manifest data for mod jars (#7256) + +========= +Build: 1.16.2-33.0.7 - Wed Aug 19 05:47:46 GMT 2020 + yunus1903: + Removed HarvestDropsEvent (#7193) + +========= +Build: 1.16.2-33.0.6 - Wed Aug 19 05:22:45 GMT 2020 + cyborgmas: + Remove forge optional tags in favor of Vanilla's new system. (#7246) + +========= +Build: 1.16.2-33.0.5 - Fri Aug 14 19:05:15 GMT 2020 + lexmanos: + Fix creating nether portals. + + lexmanos: + New method for creating modded tag references, fix connecting to vanilla servers. + +========= +Build: 1.16.2-33.0.3 - Fri Aug 14 02:17:01 GMT 2020 + 43609023+spnda: + Print mod file name on InvalidModFileException (#7241) + +========= +Build: 1.16.2-33.0.2 - Thu Aug 13 19:26:22 GMT 2020 + cyborgmas: + Fix server connection, misapplied patch (#7245) + + yunus1903: + Updated MDK and README for 1.16.2 (#7243) + +========= +Build: 1.16.2-33.0.0 - Thu Aug 13 07:37:04 GMT 2020 + lexmanos: + Initial 1.16.2 Update + +========= +Build: 1.16.1-32.0.108 - Sun Aug 09 20:05:01 GMT 2020 + gigaherz: + Fix ModelRegistryEvent firing every time resources reload instead of just once. + +========= +Build: 1.16.1-32.0.107 - Sat Aug 08 01:00:42 GMT 2020 + gigaherz: + Move ModelRegistryEvent invocation to when the model loading is about to start. + Freeze the ModelLoaderRegistry right after this event happens, just before model loading actually begins. + This means ModelRegistryEvent is now the correct place to register loaders, as it was intended. + This is a slight breaking change, but any mod that used FMLClientSetupEvent before will need to be updated regardless due to the existing race condition. + +========= +Build: 1.16.1-32.0.106 - Tue Aug 04 00:19:22 GMT 2020 + diesieben07: + Fix wrong BlockState param passed into canSustainPlant from FarmlandBlock (#7212) + +========= +Build: 1.16.1-32.0.105 - Tue Aug 04 00:06:45 GMT 2020 + sciwhiz12: + Add harvest levels for hoes and new 1.16 blocks for pickaxes Fixes #7187 (#7189) + +========= +Build: 1.16.1-32.0.104 - Tue Aug 04 00:00:40 GMT 2020 + sciwhiz12: + Fix debug world not generating modded blocks (#6926) + + championash5357: + New IForgeBlock#getToolModifiedState hook allow better control over tools interacting with blocks. (#7176) + + email.squishling: + Added new hook to allow Biomes to control their Edge biomes (#7000) + +========= +Build: 1.16.1-32.0.101 - Mon Aug 03 22:55:18 GMT 2020 + diesieben07: + Re-introduce "outdated" notification on Mods button in main menu (#7123) + + brandon4261: + Add support for custom elytra (#7202) + +========= +Build: 1.16.1-32.0.99 - Mon Aug 03 18:53:31 GMT 2020 + sciwhiz12: + Fix RenderTickEvent using wrong partial ticks value when game is paused. Fixes #6991 (#7208) + +========= +Build: 1.16.1-32.0.98 - Thu Jul 30 03:18:00 GMT 2020 + tterrag: + Implement forge IBakedModel methods in vanilla wrapper models + +========= +Build: 1.16.1-32.0.97 - Tue Jul 28 23:44:41 GMT 2020 + lexmanos: + Fix another case of swallowed errors not shutting down mods. + +========= +Build: 1.16.1-32.0.96 - Tue Jul 28 21:40:06 GMT 2020 + lexmanos: + Shut down all other mod handlers if the loading cycle errors. + This prevents other mods from throwing errors and being blamed for initial cause. + This is a temporary hack until cpw re-writes the mod event dispatcher. + +========= +Build: - Tue Jul 28 19:01:27 GMT 2020 + lexmanos: + Properly shutdown FMLModContainer's event bus when an error in a lifecycle event is detected. + + lexmanos: + Enable EventBus type check during ForgeDev, and add IModBusEvent marker to ModelRegistryEvent. + +========= +Build: 1.16.1-32.0.93 - Tue Jul 28 07:16:31 GMT 2020 + lexmanos: + Make license toml entry optional during 1.16.1 + There are to many existing mods to make this required. + Yes, we are technically before a RB and can do breaking changes. However this is too large. + +========= +Build: 1.16.1-32.0.92 - Tue Jul 28 01:14:20 GMT 2020 + cpw: + Missed one event. NewRegistry needs the marker. + + Signed-off-by: cpw + +========= +Build: 1.16.1-32.0.91 - Tue Jul 28 01:07:03 GMT 2020 + cpw: + Update MDK license to default to All rights reserved, and offer a link to chooseyourlicense.com as a place to research appropriate licenses. + + Note: the license field _is_ backwards compatible and will simply be ignored on older forge versions. + Signed-off-by: cpw + +========= +Build: 1.16.1-32.0.90 - Tue Jul 28 00:47:35 GMT 2020 + cpw: + Update modlauncher, eventbus, accesstransformers and more to use a newer mechanism for generating ASM. + + Introduced IModBusEvent as a marker interface for events on the ModBus. Expect exceptions if you use + the modbus for events not listened there. + + Signed-off-by: cpw + + cpw: + Update coremods and spi, include mandatory license field in metadata. Added at top level of mods.toml file. + + Signed-off-by: cpw + +========= +Build: 1.16.1-32.0.88 - Mon Jul 27 23:35:24 GMT 2020 + ray.neiheiser: + Fix rail 180 rotations (#7177) + + jmansfield: + Fire AnimalTameEvent for cats (#7172) Closes #7171 + +========= +Build: 1.16.1-32.0.86 - Mon Jul 27 22:56:16 GMT 2020 + lexmanos: + Fix Biome generation error. + +========= +Build: 1.16.1-32.0.85 - Mon Jul 27 21:36:07 GMT 2020 + dev: + Fix SleepingTimeCheckEvent not being fired in initial sleep test. (#7005) + +========= +Build: 1.16.1-32.0.84 - Mon Jul 27 21:30:24 GMT 2020 + yunus1903: + Fix ClimberPathNavigator spinning when width is small. Closes #6993 (#6997) + +========= +Build: 1.16.1-32.0.83 - Mon Jul 27 21:19:50 GMT 2020 + mrtschipp: + Re-added PlayerEvent.NameFormat (#6992) + +========= +Build: 1.16.1-32.0.82 - Mon Jul 27 21:14:02 GMT 2020 + email.squishling: + Fixed modded overworld biomes not spawning [1.16.x] (#6990) + +========= +Build: 1.16.1-32.0.81 - Mon Jul 27 21:08:23 GMT 2020 + christ.klinge: + Added EntityLeaveWorldEvent (#6984) + +========= +Build: 1.16.1-32.0.80 - Mon Jul 27 21:02:53 GMT 2020 + aqscode: + Re-implement moddable flammabilities (#6983) + +========= +Build: 1.16.1-32.0.79 - Mon Jul 27 20:46:11 GMT 2020 + diesieben07: + Re-add patch for PlayerSetSpawnEvent (#6977) + + yunus1903: + Updated versions in README and removed flocker.tv mentions (#6978) + +========= +Build: 1.16.1-32.0.77 - Mon Jul 27 20:40:33 GMT 2020 + sciwhiz12: + Fix ChunkDataEvents using different data tags (#6961) Fixes #6957 + +========= +Build: - Mon Jul 27 20:27:00 GMT 2020 + sm0keysa1m0n: + Post SoundLoadEvent on mod bus instead of forge bus (#6955) + +========= +Build: 1.16.1-32.0.75 - Wed Jul 22 01:26:19 GMT 2020 + cpw: + Remove startupquery. Currently wasn't functional, and 1.16 has out of band state loading in all cases, so the complex functionality there is no longer needed. Going to research using the Lifecycle indicator from DFU as a proxy/replacement. Probably with some codec FUN. + + Signed-off-by: cpw + +========= +Build: 1.16.1-32.0.74 - Wed Jul 22 00:34:43 GMT 2020 + lexmanos: + Run Forge's data generators to sync 1.16 vanilla changes. + +========= +Build: 1.16.1-32.0.73 - Wed Jul 22 00:13:48 GMT 2020 + cpw: + Don't show the early launcher GUI when running data. It's not needed and prevents use on automated builds. + + Need to investigate why a bunch of tags seem to be being blown away by rerunning on forge. + + Signed-off-by: cpw + +========= +Build: 1.16.1-32.0.72 - Tue Jul 21 23:56:54 GMT 2020 + cpw: + Add mixin + + Signed-off-by: cpw + +========= +Build: 1.16.1-32.0.71 - Mon Jul 20 22:56:31 GMT 2020 + cyborgmas: + Load Modded Datapacks in DatapackScreen, before world creation (#6913) + +========= +Build: 1.16.1-32.0.70 - Sat Jul 18 22:35:53 GMT 2020 + tterrag: + Fix inconsistencies with model/blockstate datagen + +========= +Build: 1.16.1-32.0.69 - Fri Jul 17 17:35:47 GMT 2020 + dev: + Filter duplicate mod files from mod file scan data (#6855) + +========= +Build: 1.16.1-32.0.68 - Thu Jul 16 21:56:30 GMT 2020 + lexmanos: + Fixed Forge commands. Closes #6973 Closes #6974 Closes #6976 + +========= +Build: 1.16.1-32.0.67 - Wed Jul 15 19:30:53 GMT 2020 + jaredlll08: + Added an event for registering commands. closes #6968 (#6969) + +========= +Build: 1.16.1-32.0.66 - Tue Jul 14 00:15:41 GMT 2020 + darklime: + Make all functions in Style common. (#6931) + +========= +Build: 1.16.1-32.0.65 - Mon Jul 13 22:44:53 GMT 2020 + 55965249+seymourimadeit: + Mark Raid.WaveMembers as an extensible enum. (#6878) + +========= +Build: 1.16.1-32.0.64 - Mon Jul 13 22:17:58 GMT 2020 + lexmanos: + Fix checkPatches task. Closes #6956 + Fix patched in method using srg name. Closes #6965 + Fix capabilities not being collected for ClientWorld. Closes #6966 + Fix TagEmptyCondition using client side copy of tags instead of server. Closes #6949 + Fix ExtendedButton using narrator text. Closes #6958, Closes #6959 + Fix misaligned patch in RepairContainer. Closes #6950, Closes #6953 + Fix LivingJumpEvent not being fired for players jumping horses. Closes #6929 + Remove extra getToughness method in ArmorItem. Closes #6970 + Remove GetCollisionBoxesEvent. Closes #6921 + +========= +Build: 1.16.1-32.0.63 - Fri Jul 10 22:28:22 GMT 2020 + richard: + Fix race condition with DeferredRegister for custom registries (#6951) + +========= +Build: 1.16.1-32.0.62 - Fri Jul 10 17:49:51 GMT 2020 + sciwhiz12: + Remove hooks into beacon base/payments. Vanilla uses tags now for extensibility. (#6948) + +========= +Build: 1.16.1-32.0.61 - Wed Jul 08 21:33:38 GMT 2020 + jaredlll08: + Expose the DataPackRegistries instance to the AddReloadListenerEvent (#6933) + +========= +Build: 1.16.1-32.0.60 - Wed Jul 08 21:13:18 GMT 2020 + sciwhiz12: + Fix canRepair not being set true as default (#6936) + + Closes #6934 and #6935 + +========= +Build: 1.16.1-32.0.59 - Wed Jul 08 14:56:39 GMT 2020 + gigaherz: + Fix particles sometimes "losing" the lightmap and drawing fullbright. + + gigaherz: + Fix misaligned patch causing LivingEquipmentChangeEvent to never be posted. + +========= +Build: 1.16.1-32.0.57 - Mon Jul 06 21:32:33 GMT 2020 + jdlogic: + Add simple patch checker and cleanup patches (#6851) + + * Add simple patch checker and cleanup patches + + * Address comments + * move task implementation + * genPatches is now finalized by checkPatches + * the S2S artifacts are automatically removed + * added class and method access checking + +========= +Build: 1.16.1-32.0.56 - Mon Jul 06 21:27:02 GMT 2020 + richard: + Fix the modifier combined name for keybinds displaying two pluses outside of forgedev #6901 (#6902) + +========= +Build: 1.16.1-32.0.55 - Mon Jul 06 21:12:45 GMT 2020 + richard: + Fix harvest level and tool type not actually getting set #6906 (#6922) + +========= +Build: 1.16.1-32.0.54 - Mon Jul 06 20:46:01 GMT 2020 + richard: + Reimplement ITeleporter Patches (#6886) + +========= +Build: 1.16.1-32.0.53 - Mon Jul 06 20:39:37 GMT 2020 + 40738104+mysterious-dev: + Add function to add items with the same behavior as the pumpkin for enderman (#6890) + +========= +Build: 1.16.1-32.0.52 - Mon Jul 06 20:33:17 GMT 2020 + richard: + Custom Item integration with Piglins (#6914) + +========= +Build: 1.16.1-32.0.51 - Mon Jul 06 20:20:02 GMT 2020 + ichttt: + Some dead code cleanup, and re-implement some bed hooks. (#6903) + +========= +Build: 1.16.1-32.0.50 - Mon Jul 06 20:06:39 GMT 2020 + diesieben07: + Fix missing null checks in ForgeIngameGui (#6907) + +========= +Build: 1.16.1-32.0.49 - Mon Jul 06 19:50:02 GMT 2020 + sciwhiz12: + Fix swap offhand keybind not working in GUIs (#6920) + +========= +Build: 1.16.1-32.0.48 - Mon Jul 06 19:42:07 GMT 2020 + cyborgmas: + New AddReloadListenerEvent that gathers server side data reload handlers. (#6849) + +========= +Build: 1.16.1-32.0.47 - Fri Jul 03 12:40:42 GMT 2020 + gigaherz: + Attempt to use a more compatible method to initialize stencil support. + In case the separate attachments don't work for everyone, there's a new setting to choose the combined attachment. + +========= +Build: 1.16.1-32.0.46 - Fri Jul 03 04:00:22 GMT 2020 + gigaherz: + Update copyright year to 2020. + + gigaherz: + Fix multi-layer item rendering. + +========= +Build: 1.16.1-32.0.44 - Thu Jul 02 17:17:45 GMT 2020 + gigaherz: + Model system improvements: + - Port some things I did in 1.14 which I couldn't do in 1.15 due to breaking changes. + - Fix multi-layer block models not working (1.16 RenderType doesn't override toString the same way anymore) + - Implement multi-layer item rendering. + - Improve CompositeModel submodel data passing. + +========= +Build: 1.16.1-32.0.43 - Thu Jul 02 12:54:03 GMT 2020 + supermartijn642: + Include model data in getQuads call (#6884) + + The model data wasn't included when getting quads from specific sides, but was when getting quads for side = null. + + cyborgmas: + Pass matrixstack in tooltip render events (#6885) + +========= +Build: 1.16.1-32.0.41 - Thu Jul 02 05:54:25 GMT 2020 + tterrag: + Fix improper handling of baked lighting in forge light pipeline + + Closes #6812 + +========= +Build: 1.16.1-32.0.40 - Thu Jul 02 01:59:30 GMT 2020 + pupnewfster: + Fix FMLServerAboutToStartEvent being fired too late on the integrated server https://github.com/MinecraftForge/MinecraftForge/issues/6859 + +========= +Build: 1.16.1-32.0.39 - Wed Jul 01 18:14:25 GMT 2020 + ichttt: + Fix miss-aligned patch ItemEntity (#6895) + +========= +Build: 1.16.1-32.0.38 - Tue Jun 30 20:19:32 GMT 2020 + melanx: + Add hoe tool type (#6872) + +========= +Build: 1.16.1-32.0.36 - Tue Jun 30 20:09:21 GMT 2020 + curle: + Allow any armor to have custom knockback resistance (#6877) + +========= +Build: 1.16.1-32.0.35 - Tue Jun 30 19:57:32 GMT 2020 + diesieben07: + Add senderUUID to ClientChatReceivedEvent (#6881) + +========= +Build: 1.16.1-32.0.34 - Tue Jun 30 02:33:58 GMT 2020 + lexmanos: + Re-write checkATs function and automate making Items/Blocks public. + +========= +Build: 1.16.1-32.0.33 - Tue Jun 30 02:10:14 GMT 2020 + cpw: + Reorganize modloading on the dediserver. This removes the DedicatedServer parameter from the FMLDedicatedServerSetupEvent. + Code for customizing the server instance should be moved to the ServerAboutToStartEvent or similar, where the server instance + is available. + + This reorganization means that mods will load fully before the server is even constructed, or the server properties loaded. We also move the EULA right to the front so we don't have to wait for bootstrap. + + This should fix the problems with mods which customize world data and other things. + + Signed-off-by: cpw + +========= +Build: 1.16.1-32.0.32 - Mon Jun 29 23:43:01 GMT 2020 + cyborgmas: + Fix datagen resolving tags and exploding. (#6865) + +========= +Build: 1.16.1-32.0.31 - Mon Jun 29 23:37:30 GMT 2020 + mattmess1221: + Fix Language.javaLocale parsing (#6862) + +========= +Build: 1.16.1-32.0.30 - Mon Jun 29 22:58:30 GMT 2020 + diesieben07: + Fix IItemHandler wrappers for chests not updating both chests (#6875) + +========= +Build: 1.16.1-32.0.29 - Mon Jun 29 21:08:55 GMT 2020 + lexmanos: + Fix missed patch in PlayerList and EntitySelectioonContext. Closes #6846 Closes #6850 + +========= +Build: 1.16.1-32.0.27 - Mon Jun 29 20:09:12 GMT 2020 + richard: + Fix access levels being hardcoded to private via patch overriding AT entry (#6848) + +========= +Build: 1.16.1-32.0.26 - Mon Jun 29 19:42:50 GMT 2020 + lexmanos: + Fix tag related issues when connecting to a vanilla server. + +========= +Build: 1.16.1-32.0.25 - Sun Jun 28 22:08:15 GMT 2020 + lexmanos: + Fix Forge's internal handler being registered in wrong place. + Fix double call to loader end. + +========= +Build: 1.16.1-32.0.24 - Sat Jun 27 22:50:54 GMT 2020 + gigaherz: + Add a model loader that lets mods specify different models for different perspectives. + Allow custom models to reference vanilla item models as child models. + +========= +Build: 1.16.1-32.0.23 - Fri Jun 26 23:55:23 GMT 2020 + cyborgmas: + fix misapplied patch + + also sneak in an import patch removal + +========= +Build: 1.16.1-32.0.21 - Fri Jun 26 22:40:19 GMT 2020 + lexmanos: + Fix blocks being harvested with incorrect tools. + +========= +Build: 1.16.1-32.0.20 - Fri Jun 26 19:53:02 GMT 2020 + lexmanos: + Make installer use MCPConfig version to identify MC assets. + +========= +Build: 1.16.1-32.0.19 - Fri Jun 26 18:27:49 GMT 2020 + cpw: + Tweak the server startup a bit, make sure methods that can't work because they run before a server exists explode saying so. + Also fix other launch profiles. + + Signed-off-by: cpw + +========= +Build: 1.16.1-32.0.18 - Fri Jun 26 16:56:37 GMT 2020 + lexmanos: + Fix dedicated server loading by constructing mods before data packs are created. + +========= +Build: 1.16.1-32.0.17 - Fri Jun 26 15:20:37 GMT 2020 + gigaherz: + Fix create method. + Fix test mods not loading correctly. + +========= +Build: 1.16.1-32.0.16 - Fri Jun 26 14:43:19 GMT 2020 + gigaherz: + Reintroduce missed patch in EntityClassification. + +========= +Build: 1.16.1-32.0.15 - Fri Jun 26 13:55:42 GMT 2020 + cyborgmas: + Include a getter for the matrix stack in OverlayEvent (#6834) + +========= +Build: 1.16.1-32.0.14 - Fri Jun 26 13:23:07 GMT 2020 + cyborgmas: + Fix block render types not being properly applied to item entities (#6832) + +========= +Build: 1.16.1-32.0.13 - Fri Jun 26 13:05:18 GMT 2020 + mods.itsmeow: + [1.16.x] Allow GlobalEntityTypeAttributes' EntityType -> AttributeModifierMap to be added to (#6822) + + * Make GlobalEntityTypeAttributes map able to be added to + + * Split get patch into two lines + + * Favor Forge's map over vanilla + +========= +Build: 1.16.1-32.0.12 - Fri Jun 26 12:59:19 GMT 2020 + cyborgmas: + Fixed creative screen arrows (#6827) + + yunus1903: + Added call to method for tooltip with FontRenderer (#6831) + +========= +Build: 1.16.1-32.0.10 - Fri Jun 26 12:36:59 GMT 2020 + curle: + Retarget Block.Properties patch to the new AbstractBlock, reintroduce harvestLevel and harvestTool fields (#6819) + + * Retarget Block.Properties patch to the new AbstractBlock, reintroduces the harvestLevel and harvestTool fields. + + * Slight adjustment to fix the lootTableSupplier. + +========= +Build: 1.16.1-32.0.9 - Fri Jun 26 12:31:37 GMT 2020 + yunus1903: + Fixed sneaking while swimming (#6817) + +========= +Build: - Fri Jun 26 12:25:07 GMT 2020 + cyborgmas: + Fixed tooltip rendering issues (#6815) + +========= +Build: 1.16.1-32.0.7 - Fri Jun 26 02:30:54 GMT 2020 + cyborgmas: + Fixed villager trades having non-applicable enchants + + Also added an AT at lex's request + +========= +Build: 1.16.1-32.0.6 - Fri Jun 26 01:52:19 GMT 2020 + cyborgmas: + Fix locate command (#6811) + + cyborgmas: + Fix block drops (#6810) + + contact: + Add missing patch to ScreenShotHelper (#6809) + + Adds the missed patch back + + yunus1903: + Updated MDK mods.toml versions (#6808) + + cyborgmas: + Fix locate command (#6811) + + cyborgmas: + Fix block drops (#6810) + + contact: + Add missing patch to ScreenShotHelper (#6809) + + Adds the missed patch back + + yunus1903: + Updated MDK mods.toml versions (#6808) + + cyborgmas: + Fix locate command (#6811) + + cyborgmas: + Fix block drops (#6810) + + contact: + Add missing patch to ScreenShotHelper (#6809) + + Adds the missed patch back + + yunus1903: + Updated MDK mods.toml versions (#6808) + +========= +Build: 1.16.1-32.0.2 - Fri Jun 26 01:41:51 GMT 2020 + lexmanos: + Rework BlockSnapshot and fix client notifications. Closes #6807 + +========= +Build: 1.16.1-32.0.1 - Thu Jun 25 23:24:48 GMT 2020 + lexmanos: + Bump MCPConfig version. diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..878bf1f --- /dev/null +++ b/gradle.properties @@ -0,0 +1,4 @@ +# 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 \ 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..e708b1c 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..05679dc --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-7.1.1-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew new file mode 100644 index 0000000..4f906e0 --- /dev/null +++ b/gradlew @@ -0,0 +1,185 @@ +#!/usr/bin/env sh + +# +# Copyright 2015 the original author or authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +## +## Gradle start up script for 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='"-Xmx64m" "-Xms64m"' + +# 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 or MSYS, switch paths to Windows format before running java +if [ "$cygwin" = "true" -o "$msys" = "true" ] ; 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=`expr $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" + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..107acd3 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,89 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="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/hs_err_pid9392.log b/hs_err_pid9392.log new file mode 100644 index 0000000..87725e2 --- /dev/null +++ b/hs_err_pid9392.log @@ -0,0 +1,845 @@ +# +# There is insufficient memory for the Java Runtime Environment to continue. +# Native memory allocation (mmap) failed to map 734003200 bytes for G1 virtual space +# Possible reasons: +# The system is out of physical RAM or swap space +# The process is running with CompressedOops enabled, and the Java Heap may be blocking the growth of the native heap +# Possible solutions: +# Reduce memory load on the system +# Increase physical memory or swap space +# Check if swap backing store is full +# Decrease Java heap size (-Xmx/-Xms) +# Decrease number of Java threads +# Decrease Java thread stack sizes (-Xss) +# Set larger code cache with -XX:ReservedCodeCacheSize= +# JVM is running with Zero Based Compressed Oops mode in which the Java heap is +# placed in the first 32GB address space. The Java Heap base address is the +# maximum limit for the native heap growth. Please use -XX:HeapBaseMinAddress +# to set the Java Heap base and to place the Java Heap above 32GB virtual address. +# This output file may be truncated or incomplete. +# +# Out of Memory Error (os_windows.cpp:3466), pid=9392, tid=6036 +# +# JRE version: OpenJDK Runtime Environment Corretto-16.0.2.7.1 (16.0.2+7) (build 16.0.2+7) +# Java VM: OpenJDK 64-Bit Server VM Corretto-16.0.2.7.1 (16.0.2+7, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, windows-amd64) +# No core dump will be written. Minidumps are not enabled by default on client versions of Windows +# + +--------------- S U M M A R Y ------------ + +Command Line: --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -Xmx3G -Dfile.encoding=windows-1252 -Duser.country=US -Duser.language=en -Duser.variant org.gradle.launcher.daemon.bootstrap.GradleDaemon 7.1.1 + +Host: AMD Athlon Silver 3050U with Radeon Graphics , 2 cores, 3G, Windows 10 , 64 bit Build 19041 (10.0.19041.1202) +Time: Sun Oct 24 16:25:35 2021 Central Daylight Time elapsed time: 140.042099 seconds (0d 0h 2m 20s) + +--------------- T H R E A D --------------- + +Current thread (0x000001f892b61f10): VMThread "VM Thread" [stack: 0x0000001c1bb00000,0x0000001c1bc00000] [id=6036] + +Stack: [0x0000001c1bb00000,0x0000001c1bc00000] +Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) +V [jvm.dll+0x647e0a] +V [jvm.dll+0x7f0549] +V [jvm.dll+0x7f1cfe] +V [jvm.dll+0x7f2343] +V [jvm.dll+0x23dd88] +V [jvm.dll+0x644b4a] +V [jvm.dll+0x639795] +V [jvm.dll+0x2f66f9] +V [jvm.dll+0x2fd516] +V [jvm.dll+0x34999a] +V [jvm.dll+0x349bdf] +V [jvm.dll+0x2cc918] +V [jvm.dll+0x2ca841] +V [jvm.dll+0x2c9e6c] +V [jvm.dll+0x30e642] +V [jvm.dll+0x7f66fb] +V [jvm.dll+0x7f72f8] +V [jvm.dll+0x7f77fd] +V [jvm.dll+0x7f7ac4] +V [jvm.dll+0x7f7b8e] +V [jvm.dll+0x7a223a] +V [jvm.dll+0x646c46] +C [ucrtbase.dll+0x21bb2] +C [KERNEL32.DLL+0x17034] +C [ntdll.dll+0x52651] + +VM_Operation (0x0000001c1cff51a0): G1CollectForAllocation, mode: safepoint, requested by thread 0x000001f8b6134b10 + + +--------------- P R O C E S S --------------- + +Threads class SMR info: +_java_thread_list=0x000001f8bada53c0, length=61, elements={ +0x000001f892a933b0, 0x000001f892b67210, 0x000001f892b67fe0, 0x000001f892b7b750, +0x000001f892b7d3d0, 0x000001f892b7dce0, 0x000001f892b7e5f0, 0x000001f8b55d0290, +0x000001f8b563d700, 0x000001f8b5644430, 0x000001f8b6064980, 0x000001f8b60716d0, +0x000001f8b61d5cf0, 0x000001f8b6ceba20, 0x000001f8b61d3510, 0x000001f8b6f2dab0, +0x000001f8b6026090, 0x000001f8b61355b0, 0x000001f8b6134b10, 0x000001f8b6135060, +0x000001f8b6132090, 0x000001f8b6132b30, 0x000001f8b6133080, 0x000001f8b6134070, +0x000001f8b61335d0, 0x000001f8b6133b20, 0x000001f8b61345c0, 0x000001f8b8cfe060, +0x000001f8b8d05a90, 0x000001f8b8d01580, 0x000001f8b8cffaf0, 0x000001f8b8d01ad0, +0x000001f8b8d02570, 0x000001f8b8d03560, 0x000001f8b8d04550, 0x000001f8b8cfe5b0, +0x000001f8b8d03ab0, 0x000001f8b8d05540, 0x000001f8b8cfeb00, 0x000001f8b8cff5a0, +0x000001f8b8d01030, 0x000001f8b8d03010, 0x000001f8b8d02ac0, 0x000001f8b8d00040, +0x000001f8b8d00590, 0x000001f8b8d00ae0, 0x000001f8b9fe6db0, 0x000001f8b9fe7300, +0x000001f8b9fe2df0, 0x000001f8b9fe5dc0, 0x000001f8b9fe6310, 0x000001f8b9fe6860, +0x000001f8b9fe4880, 0x000001f8b9fe3890, 0x000001f8b9fe1e00, 0x000001f8b9fe8840, +0x000001f8b9fe2350, 0x000001f8b9fe7850, 0x000001f8b9fe3340, 0x000001f8b9fe8d90, +0x000001f8b9fe4dd0 +} + +Java Threads: ( => current thread ) + 0x000001f892a933b0 JavaThread "main" [_thread_blocked, id=5792, stack(0x0000001c1b500000,0x0000001c1b600000)] + 0x000001f892b67210 JavaThread "Reference Handler" daemon [_thread_blocked, id=12496, stack(0x0000001c1bc00000,0x0000001c1bd00000)] + 0x000001f892b67fe0 JavaThread "Finalizer" daemon [_thread_blocked, id=1864, stack(0x0000001c1bd00000,0x0000001c1be00000)] + 0x000001f892b7b750 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=9420, stack(0x0000001c1be00000,0x0000001c1bf00000)] + 0x000001f892b7d3d0 JavaThread "Attach Listener" daemon [_thread_blocked, id=3704, stack(0x0000001c1bf00000,0x0000001c1c000000)] + 0x000001f892b7dce0 JavaThread "Service Thread" daemon [_thread_blocked, id=5572, stack(0x0000001c1c000000,0x0000001c1c100000)] + 0x000001f892b7e5f0 JavaThread "Monitor Deflation Thread" daemon [_thread_blocked, id=2648, stack(0x0000001c1c100000,0x0000001c1c200000)] + 0x000001f8b55d0290 JavaThread "C2 CompilerThread0" daemon [_thread_blocked, id=8256, stack(0x0000001c1c200000,0x0000001c1c300000)] + 0x000001f8b563d700 JavaThread "C1 CompilerThread0" daemon [_thread_blocked, id=3512, stack(0x0000001c1c300000,0x0000001c1c400000)] + 0x000001f8b5644430 JavaThread "Sweeper thread" daemon [_thread_blocked, id=11884, stack(0x0000001c1c400000,0x0000001c1c500000)] + 0x000001f8b6064980 JavaThread "Common-Cleaner" daemon [_thread_blocked, id=6780, stack(0x0000001c1c500000,0x0000001c1c600000)] + 0x000001f8b60716d0 JavaThread "Notification Thread" daemon [_thread_blocked, id=8336, stack(0x0000001c1c600000,0x0000001c1c700000)] + 0x000001f8b61d5cf0 JavaThread "Daemon health stats" [_thread_blocked, id=11864, stack(0x0000001c1c900000,0x0000001c1ca00000)] + 0x000001f8b6ceba20 JavaThread "Incoming local TCP Connector on port 49861" [_thread_in_native, id=12688, stack(0x0000001c1ca00000,0x0000001c1cb00000)] + 0x000001f8b61d3510 JavaThread "Daemon periodic checks" [_thread_blocked, id=12272, stack(0x0000001c1cb00000,0x0000001c1cc00000)] + 0x000001f8b6f2dab0 JavaThread "Daemon" [_thread_blocked, id=12460, stack(0x0000001c1cc00000,0x0000001c1cd00000)] + 0x000001f8b6026090 JavaThread "Handler for socket connection from /127.0.0.1:49861 to /127.0.0.1:49862" [_thread_in_native, id=12204, stack(0x0000001c1cd00000,0x0000001c1ce00000)] + 0x000001f8b61355b0 JavaThread "Cancel handler" [_thread_blocked, id=208, stack(0x0000001c1ce00000,0x0000001c1cf00000)] + 0x000001f8b6134b10 JavaThread "Daemon worker" [_thread_blocked, id=12400, stack(0x0000001c1cf00000,0x0000001c1d000000)] + 0x000001f8b6135060 JavaThread "Asynchronous log dispatcher for DefaultDaemonConnection: socket connection from /127.0.0.1:49861 to /127.0.0.1:49862" [_thread_blocked, id=11716, stack(0x0000001c1d000000,0x0000001c1d100000)] + 0x000001f8b6132090 JavaThread "Daemon client event forwarder" [_thread_blocked, id=2008, stack(0x0000001c1d200000,0x0000001c1d300000)] + 0x000001f8b6132b30 JavaThread "Cache worker for journal cache (C:\Users\bryen\.gradle\caches\journal-1)" [_thread_blocked, id=1704, stack(0x0000001c1d300000,0x0000001c1d400000)] + 0x000001f8b6133080 JavaThread "File lock request listener" [_thread_in_native, id=10820, stack(0x0000001c1d400000,0x0000001c1d500000)] + 0x000001f8b6134070 JavaThread "Cache worker for file hash cache (C:\Users\bryen\.gradle\caches\7.1.1\fileHashes)" [_thread_blocked, id=2888, stack(0x0000001c1d500000,0x0000001c1d600000)] + 0x000001f8b61335d0 JavaThread "File lock release action executor" [_thread_blocked, id=4612, stack(0x0000001c1d600000,0x0000001c1d700000)] + 0x000001f8b6133b20 JavaThread "Cache worker for file hash cache (C:\Users\bryen\Desktop\The SquidCoder Mod\.gradle\7.1.1\fileHashes)" [_thread_blocked, id=8984, stack(0x0000001c1d700000,0x0000001c1d800000)] + 0x000001f8b61345c0 JavaThread "File watcher server" daemon [_thread_in_native, id=12720, stack(0x0000001c1d800000,0x0000001c1d900000)] + 0x000001f8b8cfe060 JavaThread "File watcher consumer" daemon [_thread_blocked, id=10948, stack(0x0000001c1d900000,0x0000001c1da00000)] + 0x000001f8b8d05a90 JavaThread "jar transforms" [_thread_blocked, id=10688, stack(0x0000001c1da00000,0x0000001c1db00000)] + 0x000001f8b8d01580 JavaThread "jar transforms Thread 2" [_thread_blocked, id=11760, stack(0x0000001c1db00000,0x0000001c1dc00000)] + 0x000001f8b8cffaf0 JavaThread "Cache worker for checksums cache (C:\Users\bryen\Desktop\The SquidCoder Mod\.gradle\checksums)" [_thread_blocked, id=9592, stack(0x0000001c1dc00000,0x0000001c1dd00000)] + 0x000001f8b8d01ad0 JavaThread "Cache worker for cache directory md-supplier (C:\Users\bryen\.gradle\caches\7.1.1\md-supplier)" [_thread_blocked, id=5548, stack(0x0000001c1dd00000,0x0000001c1de00000)] + 0x000001f8b8d02570 JavaThread "Cache worker for cache directory md-rule (C:\Users\bryen\.gradle\caches\7.1.1\md-rule)" [_thread_blocked, id=12564, stack(0x0000001c1de00000,0x0000001c1df00000)] + 0x000001f8b8d03560 JavaThread "Cache worker for execution history cache (C:\Users\bryen\.gradle\caches\7.1.1\executionHistory)" [_thread_blocked, id=11752, stack(0x0000001c1df00000,0x0000001c1e000000)] + 0x000001f8b8d04550 JavaThread "Cache worker for file content cache (C:\Users\bryen\.gradle\caches\7.1.1\fileContent)" [_thread_blocked, id=4232, stack(0x0000001c1e000000,0x0000001c1e100000)] + 0x000001f8b8cfe5b0 JavaThread "Cache worker for dependencies-accessors (C:\Users\bryen\Desktop\The SquidCoder Mod\.gradle\7.1.1\dependencies-accessors)" [_thread_blocked, id=9664, stack(0x0000001c1e100000,0x0000001c1e200000)] + 0x000001f8b8d03ab0 JavaThread "Cache worker for Build Output Cleanup Cache (C:\Users\bryen\Desktop\The SquidCoder Mod\.gradle\buildOutputCleanup)" [_thread_blocked, id=960, stack(0x0000001c1e400000,0x0000001c1e500000)] + 0x000001f8b8d05540 JavaThread "Unconstrained build operations" [_thread_blocked, id=10772, stack(0x0000001c1e500000,0x0000001c1e600000)] + 0x000001f8b8cfeb00 JavaThread "Unconstrained build operations Thread 2" [_thread_blocked, id=9812, stack(0x0000001c1e600000,0x0000001c1e700000)] + 0x000001f8b8cff5a0 JavaThread "Unconstrained build operations Thread 3" [_thread_blocked, id=5984, stack(0x0000001c1e700000,0x0000001c1e800000)] + 0x000001f8b8d01030 JavaThread "Unconstrained build operations Thread 4" [_thread_blocked, id=7640, stack(0x0000001c1e800000,0x0000001c1e900000)] + 0x000001f8b8d03010 JavaThread "Unconstrained build operations Thread 5" [_thread_blocked, id=940, stack(0x0000001c1e900000,0x0000001c1ea00000)] + 0x000001f8b8d02ac0 JavaThread "Unconstrained build operations Thread 6" [_thread_blocked, id=4328, stack(0x0000001c1ea00000,0x0000001c1eb00000)] + 0x000001f8b8d00040 JavaThread "Unconstrained build operations Thread 7" [_thread_blocked, id=8848, stack(0x0000001c1eb00000,0x0000001c1ec00000)] + 0x000001f8b8d00590 JavaThread "Unconstrained build operations Thread 8" [_thread_blocked, id=10600, stack(0x0000001c1ec00000,0x0000001c1ed00000)] + 0x000001f8b8d00ae0 JavaThread "Unconstrained build operations Thread 9" [_thread_blocked, id=10364, stack(0x0000001c1ed00000,0x0000001c1ee00000)] + 0x000001f8b9fe6db0 JavaThread "Unconstrained build operations Thread 10" [_thread_blocked, id=12896, stack(0x0000001c1ee00000,0x0000001c1ef00000)] + 0x000001f8b9fe7300 JavaThread "Unconstrained build operations Thread 11" [_thread_blocked, id=10336, stack(0x0000001c1ef00000,0x0000001c1f000000)] + 0x000001f8b9fe2df0 JavaThread "Unconstrained build operations Thread 12" [_thread_blocked, id=2520, stack(0x0000001c1f000000,0x0000001c1f100000)] + 0x000001f8b9fe5dc0 JavaThread "Unconstrained build operations Thread 13" [_thread_blocked, id=11540, stack(0x0000001c1f100000,0x0000001c1f200000)] + 0x000001f8b9fe6310 JavaThread "Unconstrained build operations Thread 14" [_thread_blocked, id=3668, stack(0x0000001c1f200000,0x0000001c1f300000)] + 0x000001f8b9fe6860 JavaThread "Unconstrained build operations Thread 15" [_thread_blocked, id=9376, stack(0x0000001c1f300000,0x0000001c1f400000)] + 0x000001f8b9fe4880 JavaThread "Unconstrained build operations Thread 16" [_thread_blocked, id=8964, stack(0x0000001c1f400000,0x0000001c1f500000)] + 0x000001f8b9fe3890 JavaThread "Unconstrained build operations Thread 17" [_thread_blocked, id=5136, stack(0x0000001c1f500000,0x0000001c1f600000)] + 0x000001f8b9fe1e00 JavaThread "Unconstrained build operations Thread 18" [_thread_blocked, id=1768, stack(0x0000001c1f600000,0x0000001c1f700000)] + 0x000001f8b9fe8840 JavaThread "Unconstrained build operations Thread 19" [_thread_blocked, id=1628, stack(0x0000001c1f700000,0x0000001c1f800000)] + 0x000001f8b9fe2350 JavaThread "Unconstrained build operations Thread 20" [_thread_blocked, id=3792, stack(0x0000001c1f800000,0x0000001c1f900000)] + 0x000001f8b9fe7850 JavaThread "Memory manager" [_thread_blocked, id=3688, stack(0x0000001c1fa00000,0x0000001c1fb00000)] + 0x000001f8b9fe3340 JavaThread "ForkJoinPool.commonPool-worker-3" daemon [_thread_blocked, id=7336, stack(0x0000001c1b300000,0x0000001c1b400000)] + 0x000001f8b9fe8d90 JavaThread "File lock release action executor Thread 2" [_thread_blocked, id=8516, stack(0x0000001c1fd00000,0x0000001c1fe00000)] + 0x000001f8b9fe4dd0 JavaThread "Keep-Alive-Timer" daemon [_thread_blocked, id=9980, stack(0x0000001c1b400000,0x0000001c1b500000)] + +Other Threads: +=>0x000001f892b61f10 VMThread "VM Thread" [stack: 0x0000001c1bb00000,0x0000001c1bc00000] [id=6036] + 0x000001f8b6071bf0 WatcherThread [stack: 0x0000001c1c700000,0x0000001c1c800000] [id=5892] + 0x000001f892ad4bb0 GCTaskThread "GC Thread#0" [stack: 0x0000001c1b600000,0x0000001c1b700000] [id=7884] + 0x000001f8b60a4fb0 GCTaskThread "GC Thread#1" [stack: 0x0000001c1c800000,0x0000001c1c900000] [id=10104] + 0x000001f892ae1b10 ConcurrentGCThread "G1 Main Marker" [stack: 0x0000001c1b700000,0x0000001c1b800000] [id=640] + 0x000001f892ae2490 ConcurrentGCThread "G1 Conc#0" [stack: 0x0000001c1b800000,0x0000001c1b900000] [id=5672] + 0x000001f892b0fcf0 ConcurrentGCThread "G1 Refine#0" [stack: 0x0000001c1b900000,0x0000001c1ba00000] [id=9444] + 0x000001f8b91a9fc0 ConcurrentGCThread "G1 Refine#1" [stack: 0x0000001c1d100000,0x0000001c1d200000] [id=8836] + 0x000001f892b10680 ConcurrentGCThread "G1 Service" [stack: 0x0000001c1ba00000,0x0000001c1bb00000] [id=6152] + +Threads with active compile tasks: + +VM state: at safepoint (normal execution) + +VM Mutex/Monitor currently owned by a thread: ([mutex/lock_event]) +[0x000001f892a8fa10] Threads_lock - owner thread: 0x000001f892b61f10 +[0x000001f892a912d0] Heap_lock - owner thread: 0x000001f8b6134b10 + +Heap address: 0x0000000740000000, size: 3072 MB, Compressed Oops mode: Zero based, Oop shift amount: 3 + +CDS archive(s) mapped at: [0x0000000800000000-0x0000000800be0000-0x0000000800be0000), size 12451840, SharedBaseAddress: 0x0000000800000000, ArchiveRelocationMode: 0. +Compressed class space mapped at: 0x0000000800c00000-0x0000000840c00000, reserved size: 1073741824 +Narrow klass base: 0x0000000800000000, Narrow klass shift: 3, Narrow klass range: 0x100000000 + +GC Precious Log: + CPUs: 2 total, 2 available + Memory: 3500M + Large Page Support: Disabled + NUMA Support: Disabled + Compressed Oops: Enabled (Zero based) + Heap Region Size: 2M + Heap Min Capacity: 8M + Heap Initial Capacity: 56M + Heap Max Capacity: 3G + Pre-touch: Disabled + Parallel Workers: 2 + Concurrent Workers: 1 + Concurrent Refinement Workers: 2 + Periodic GC: Disabled + +Heap: + garbage-first heap total 358400K, used 183876K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 4 young (8192K), 4 survivors (8192K) + Metaspace used 68406K, committed 69056K, reserved 1114112K + class space used 8788K, committed 9088K, reserved 1048576K + +Heap Regions: E=young(eden), S=young(survivor), O=old, HS=humongous(starts), HC=humongous(continues), CS=collection set, F=free, OA=open archive, CA=closed archive, TAMS=top-at-mark-start (previous, next) +| 0|0x0000000740000000, 0x0000000740200000, 0x0000000740200000|100%| O| |TAMS 0x0000000740200000, 0x0000000740200000| Untracked +| 1|0x0000000740200000, 0x0000000740400000, 0x0000000740400000|100%| O| |TAMS 0x0000000740400000, 0x0000000740400000| Untracked +| 2|0x0000000740400000, 0x0000000740600000, 0x0000000740600000|100%| O| |TAMS 0x0000000740600000, 0x0000000740600000| Untracked +| 3|0x0000000740600000, 0x0000000740800000, 0x0000000740800000|100%|HS| |TAMS 0x0000000740800000, 0x0000000740800000| Complete +| 4|0x0000000740800000, 0x0000000740a00000, 0x0000000740a00000|100%|HC| |TAMS 0x0000000740a00000, 0x0000000740a00000| Complete +| 5|0x0000000740a00000, 0x0000000740c00000, 0x0000000740c00000|100%| O| |TAMS 0x0000000740c00000, 0x0000000740c00000| Untracked +| 6|0x0000000740c00000, 0x0000000740e00000, 0x0000000740e00000|100%| O| |TAMS 0x0000000740e00000, 0x0000000740e00000| Untracked +| 7|0x0000000740e00000, 0x0000000741000000, 0x0000000741000000|100%| O| |TAMS 0x0000000741000000, 0x0000000741000000| Untracked +| 8|0x0000000741000000, 0x0000000741200000, 0x0000000741200000|100%| O| |TAMS 0x0000000741200000, 0x0000000741200000| Untracked +| 9|0x0000000741200000, 0x0000000741400000, 0x0000000741400000|100%|HS| |TAMS 0x0000000741400000, 0x0000000741400000| Complete +| 10|0x0000000741400000, 0x0000000741600000, 0x0000000741600000|100%|HS| |TAMS 0x0000000741600000, 0x0000000741600000| Complete +| 11|0x0000000741600000, 0x0000000741800000, 0x0000000741800000|100%|HC| |TAMS 0x0000000741800000, 0x0000000741800000| Complete +| 12|0x0000000741800000, 0x0000000741a00000, 0x0000000741a00000|100%| O| |TAMS 0x0000000741a00000, 0x0000000741a00000| Untracked +| 13|0x0000000741a00000, 0x0000000741c00000, 0x0000000741c00000|100%|HS| |TAMS 0x0000000741c00000, 0x0000000741c00000| Complete +| 14|0x0000000741c00000, 0x0000000741e00000, 0x0000000741e00000|100%|HC| |TAMS 0x0000000741e00000, 0x0000000741e00000| Complete +| 15|0x0000000741e00000, 0x0000000742000000, 0x0000000742000000|100%| O| |TAMS 0x0000000742000000, 0x0000000742000000| Untracked +| 16|0x0000000742000000, 0x0000000742200000, 0x0000000742200000|100%| O| |TAMS 0x0000000742200000, 0x0000000742200000| Untracked +| 17|0x0000000742200000, 0x0000000742400000, 0x0000000742400000|100%|HS| |TAMS 0x0000000742400000, 0x0000000742400000| Complete +| 18|0x0000000742400000, 0x0000000742600000, 0x0000000742600000|100%|HC| |TAMS 0x0000000742600000, 0x0000000742600000| Complete +| 19|0x0000000742600000, 0x0000000742800000, 0x0000000742800000|100%| O| |TAMS 0x0000000742800000, 0x0000000742800000| Untracked +| 20|0x0000000742800000, 0x0000000742a00000, 0x0000000742a00000|100%| O| |TAMS 0x0000000742a00000, 0x0000000742a00000| Untracked +| 21|0x0000000742a00000, 0x0000000742c00000, 0x0000000742c00000|100%| O| |TAMS 0x0000000742c00000, 0x0000000742c00000| Untracked +| 22|0x0000000742c00000, 0x0000000742e00000, 0x0000000742e00000|100%|HS| |TAMS 0x0000000742e00000, 0x0000000742e00000| Complete +| 23|0x0000000742e00000, 0x0000000743000000, 0x0000000743000000|100%|HC| |TAMS 0x0000000743000000, 0x0000000743000000| Complete +| 24|0x0000000743000000, 0x0000000743200000, 0x0000000743200000|100%| O| |TAMS 0x0000000743200000, 0x0000000743200000| Untracked +| 25|0x0000000743200000, 0x0000000743400000, 0x0000000743400000|100%|HS| |TAMS 0x0000000743400000, 0x0000000743400000| Complete +| 26|0x0000000743400000, 0x0000000743600000, 0x0000000743600000|100%|HC| |TAMS 0x0000000743600000, 0x0000000743600000| Complete +| 27|0x0000000743600000, 0x0000000743800000, 0x0000000743800000|100%| O| |TAMS 0x0000000743800000, 0x0000000743800000| Untracked +| 28|0x0000000743800000, 0x0000000743a00000, 0x0000000743a00000|100%|HS| |TAMS 0x0000000743a00000, 0x0000000743a00000| Complete +| 29|0x0000000743a00000, 0x0000000743c00000, 0x0000000743c00000|100%|HC| |TAMS 0x0000000743c00000, 0x0000000743c00000| Complete +| 30|0x0000000743c00000, 0x0000000743e00000, 0x0000000743e00000|100%| O| |TAMS 0x0000000743e00000, 0x0000000743e00000| Untracked +| 31|0x0000000743e00000, 0x0000000744000000, 0x0000000744000000|100%| O| |TAMS 0x0000000744000000, 0x0000000744000000| Untracked +| 32|0x0000000744000000, 0x0000000744200000, 0x0000000744200000|100%| O| |TAMS 0x0000000744200000, 0x0000000744200000| Untracked +| 33|0x0000000744200000, 0x0000000744400000, 0x0000000744400000|100%|HS| |TAMS 0x0000000744400000, 0x0000000744400000| Complete +| 34|0x0000000744400000, 0x0000000744600000, 0x0000000744600000|100%| O| |TAMS 0x0000000744600000, 0x0000000744600000| Untracked +| 35|0x0000000744600000, 0x0000000744800000, 0x0000000744800000|100%| O| |TAMS 0x0000000744800000, 0x0000000744800000| Untracked +| 36|0x0000000744800000, 0x0000000744a00000, 0x0000000744a00000|100%| O| |TAMS 0x0000000744a00000, 0x0000000744a00000| Untracked +| 37|0x0000000744a00000, 0x0000000744c00000, 0x0000000744c00000|100%| O| |TAMS 0x0000000744c00000, 0x0000000744c00000| Untracked +| 38|0x0000000744c00000, 0x0000000744e00000, 0x0000000744e00000|100%| O| |TAMS 0x0000000744e00000, 0x0000000744e00000| Untracked +| 39|0x0000000744e00000, 0x0000000745000000, 0x0000000745000000|100%| O| |TAMS 0x0000000745000000, 0x0000000745000000| Untracked +| 40|0x0000000745000000, 0x0000000745200000, 0x0000000745200000|100%| O| |TAMS 0x0000000745200000, 0x0000000745200000| Untracked +| 41|0x0000000745200000, 0x0000000745400000, 0x0000000745400000|100%| O| |TAMS 0x0000000745400000, 0x0000000745400000| Untracked +| 42|0x0000000745400000, 0x0000000745600000, 0x0000000745600000|100%|HS| |TAMS 0x0000000745400000, 0x0000000745600000| Complete +| 43|0x0000000745600000, 0x0000000745800000, 0x0000000745800000|100%| O| |TAMS 0x0000000745800000, 0x0000000745800000| Untracked +| 44|0x0000000745800000, 0x0000000745a00000, 0x0000000745a00000|100%| O| |TAMS 0x0000000745800000, 0x0000000745a00000| Untracked +| 45|0x0000000745a00000, 0x0000000745c00000, 0x0000000745c00000|100%| O| |TAMS 0x0000000745c00000, 0x0000000745c00000| Untracked +| 46|0x0000000745c00000, 0x0000000745e00000, 0x0000000745e00000|100%| O| |TAMS 0x0000000745c00000, 0x0000000745e00000| Untracked +| 47|0x0000000745e00000, 0x0000000746000000, 0x0000000746000000|100%|HS| |TAMS 0x0000000745e00000, 0x0000000746000000| Complete +| 48|0x0000000746000000, 0x0000000746200000, 0x0000000746200000|100%|HC| |TAMS 0x0000000746000000, 0x0000000746200000| Complete +| 49|0x0000000746200000, 0x0000000746400000, 0x0000000746400000|100%| O| |TAMS 0x0000000746400000, 0x0000000746400000| Untracked +| 50|0x0000000746400000, 0x0000000746600000, 0x0000000746600000|100%|HS| |TAMS 0x0000000746400000, 0x0000000746600000| Complete +| 51|0x0000000746600000, 0x0000000746800000, 0x0000000746800000|100%|HC| |TAMS 0x0000000746600000, 0x0000000746800000| Complete +| 52|0x0000000746800000, 0x0000000746a00000, 0x0000000746a00000|100%| O| |TAMS 0x0000000746900000, 0x0000000746a00000| Untracked +| 53|0x0000000746a00000, 0x0000000746c00000, 0x0000000746c00000|100%| O| |TAMS 0x0000000746a00000, 0x0000000746c00000| Untracked +| 54|0x0000000746c00000, 0x0000000746e00000, 0x0000000746e00000|100%| O| |TAMS 0x0000000746c00000, 0x0000000746e00000| Untracked +| 55|0x0000000746e00000, 0x0000000747000000, 0x0000000747000000|100%| O| |TAMS 0x0000000746e00000, 0x0000000747000000| Untracked +| 56|0x0000000747000000, 0x0000000747200000, 0x0000000747200000|100%| O| |TAMS 0x0000000747000000, 0x0000000747200000| Untracked +| 57|0x0000000747200000, 0x0000000747400000, 0x0000000747400000|100%| O| |TAMS 0x0000000747200000, 0x0000000747400000| Untracked +| 58|0x0000000747400000, 0x0000000747600000, 0x0000000747600000|100%|HS| |TAMS 0x0000000747400000, 0x0000000747600000| Complete +| 59|0x0000000747600000, 0x0000000747800000, 0x0000000747800000|100%|HC| |TAMS 0x0000000747600000, 0x0000000747800000| Complete +| 60|0x0000000747800000, 0x0000000747a00000, 0x0000000747a00000|100%| O| |TAMS 0x0000000747800000, 0x0000000747a00000| Untracked +| 61|0x0000000747a00000, 0x0000000747c00000, 0x0000000747c00000|100%| O| |TAMS 0x0000000747a00000, 0x0000000747c00000| Untracked +| 62|0x0000000747c00000, 0x0000000747e00000, 0x0000000747e00000|100%| O| |TAMS 0x0000000747c00000, 0x0000000747e00000| Untracked +| 63|0x0000000747e00000, 0x0000000748000000, 0x0000000748000000|100%| O| |TAMS 0x0000000747e00000, 0x0000000748000000| Untracked +| 64|0x0000000748000000, 0x0000000748200000, 0x0000000748200000|100%| O| |TAMS 0x0000000748000000, 0x0000000748200000| Untracked +| 65|0x0000000748200000, 0x0000000748400000, 0x0000000748400000|100%| O| |TAMS 0x0000000748200000, 0x0000000748400000| Untracked +| 66|0x0000000748400000, 0x0000000748600000, 0x0000000748600000|100%| O| |TAMS 0x0000000748400000, 0x0000000748600000| Untracked +| 67|0x0000000748600000, 0x0000000748800000, 0x0000000748800000|100%| O| |TAMS 0x0000000748600000, 0x0000000748800000| Untracked +| 68|0x0000000748800000, 0x0000000748a00000, 0x0000000748a00000|100%| O| |TAMS 0x0000000748800000, 0x0000000748a00000| Untracked +| 69|0x0000000748a00000, 0x0000000748c00000, 0x0000000748c00000|100%| O| |TAMS 0x0000000748a00000, 0x0000000748a00000| Untracked +| 70|0x0000000748c00000, 0x0000000748e00000, 0x0000000748e00000|100%| O| |TAMS 0x0000000748c00000, 0x0000000748c00000| Untracked +| 71|0x0000000748e00000, 0x0000000749000000, 0x0000000749000000|100%| O| |TAMS 0x0000000748e00000, 0x0000000748e00000| Untracked +| 72|0x0000000749000000, 0x0000000749200000, 0x0000000749200000|100%| O| |TAMS 0x0000000749000000, 0x0000000749000000| Untracked +| 73|0x0000000749200000, 0x0000000749391200, 0x0000000749400000| 78%| O| |TAMS 0x0000000749200000, 0x0000000749200000| Untracked +| 74|0x0000000749400000, 0x0000000749400000, 0x0000000749600000| 0%| F| |TAMS 0x0000000749400000, 0x0000000749400000| Untracked +| 75|0x0000000749600000, 0x0000000749600000, 0x0000000749800000| 0%| F| |TAMS 0x0000000749600000, 0x0000000749600000| Untracked +| 76|0x0000000749800000, 0x0000000749800000, 0x0000000749a00000| 0%| F| |TAMS 0x0000000749800000, 0x0000000749800000| Untracked +| 77|0x0000000749a00000, 0x0000000749a00000, 0x0000000749c00000| 0%| F| |TAMS 0x0000000749a00000, 0x0000000749a00000| Untracked +| 78|0x0000000749c00000, 0x0000000749c00000, 0x0000000749e00000| 0%| F| |TAMS 0x0000000749c00000, 0x0000000749c00000| Untracked +| 79|0x0000000749e00000, 0x0000000749e00000, 0x000000074a000000| 0%| F| |TAMS 0x0000000749e00000, 0x0000000749e00000| Untracked +| 80|0x000000074a000000, 0x000000074a000000, 0x000000074a200000| 0%| F| |TAMS 0x000000074a000000, 0x000000074a000000| Untracked +| 81|0x000000074a200000, 0x000000074a400000, 0x000000074a400000|100%| O| |TAMS 0x000000074a200000, 0x000000074a400000| Untracked +| 82|0x000000074a400000, 0x000000074a600000, 0x000000074a600000|100%| O| |TAMS 0x000000074a400000, 0x000000074a600000| Untracked +| 83|0x000000074a600000, 0x000000074a800000, 0x000000074a800000|100%| O| |TAMS 0x000000074a600000, 0x000000074a800000| Untracked +| 84|0x000000074a800000, 0x000000074aa00000, 0x000000074aa00000|100%| O| |TAMS 0x000000074a800000, 0x000000074aa00000| Untracked +| 85|0x000000074aa00000, 0x000000074ac00000, 0x000000074ac00000|100%| O| |TAMS 0x000000074aa00000, 0x000000074ac00000| Untracked +| 86|0x000000074ac00000, 0x000000074ae00000, 0x000000074ae00000|100%| O| |TAMS 0x000000074ac00000, 0x000000074ae00000| Untracked +| 87|0x000000074ae00000, 0x000000074b000000, 0x000000074b000000|100%| O| |TAMS 0x000000074ae00000, 0x000000074b000000| Untracked +| 88|0x000000074b000000, 0x000000074b200000, 0x000000074b200000|100%| O| |TAMS 0x000000074b000000, 0x000000074b200000| Untracked +| 89|0x000000074b200000, 0x000000074b400000, 0x000000074b400000|100%| O| |TAMS 0x000000074b200000, 0x000000074b400000| Untracked +| 90|0x000000074b400000, 0x000000074b400000, 0x000000074b600000| 0%| F| |TAMS 0x000000074b400000, 0x000000074b400000| Untracked +| 91|0x000000074b600000, 0x000000074b600000, 0x000000074b800000| 0%| F| |TAMS 0x000000074b600000, 0x000000074b600000| Untracked +| 92|0x000000074b800000, 0x000000074b800000, 0x000000074ba00000| 0%| F| |TAMS 0x000000074b800000, 0x000000074b800000| Untracked +| 93|0x000000074ba00000, 0x000000074ba00000, 0x000000074bc00000| 0%| F| |TAMS 0x000000074ba00000, 0x000000074ba00000| Untracked +| 94|0x000000074bc00000, 0x000000074bc00000, 0x000000074be00000| 0%| F| |TAMS 0x000000074bc00000, 0x000000074bc00000| Untracked +| 95|0x000000074be00000, 0x000000074be00000, 0x000000074c000000| 0%| F| |TAMS 0x000000074be00000, 0x000000074be00000| Untracked +| 96|0x000000074c000000, 0x000000074c000000, 0x000000074c200000| 0%| F| |TAMS 0x000000074c000000, 0x000000074c000000| Untracked +| 97|0x000000074c200000, 0x000000074c200000, 0x000000074c400000| 0%| F| |TAMS 0x000000074c200000, 0x000000074c200000| Untracked +| 98|0x000000074c400000, 0x000000074c400000, 0x000000074c600000| 0%| F| |TAMS 0x000000074c400000, 0x000000074c400000| Untracked +| 99|0x000000074c600000, 0x000000074c600000, 0x000000074c800000| 0%| F| |TAMS 0x000000074c600000, 0x000000074c600000| Untracked +| 100|0x000000074c800000, 0x000000074c800000, 0x000000074ca00000| 0%| F| |TAMS 0x000000074c800000, 0x000000074c800000| Untracked +| 101|0x000000074ca00000, 0x000000074ca00000, 0x000000074cc00000| 0%| F| |TAMS 0x000000074ca00000, 0x000000074ca00000| Untracked +| 102|0x000000074cc00000, 0x000000074cc00000, 0x000000074ce00000| 0%| F| |TAMS 0x000000074cc00000, 0x000000074cc00000| Untracked +| 103|0x000000074ce00000, 0x000000074ce00000, 0x000000074d000000| 0%| F| |TAMS 0x000000074ce00000, 0x000000074ce00000| Untracked +| 104|0x000000074d000000, 0x000000074d000000, 0x000000074d200000| 0%| F| |TAMS 0x000000074d000000, 0x000000074d000000| Untracked +| 105|0x000000074d200000, 0x000000074d200000, 0x000000074d400000| 0%| F| |TAMS 0x000000074d200000, 0x000000074d200000| Untracked +| 106|0x000000074d400000, 0x000000074d400000, 0x000000074d600000| 0%| F| |TAMS 0x000000074d400000, 0x000000074d400000| Untracked +| 107|0x000000074d600000, 0x000000074d600000, 0x000000074d800000| 0%| F| |TAMS 0x000000074d600000, 0x000000074d600000| Untracked +| 108|0x000000074d800000, 0x000000074d800000, 0x000000074da00000| 0%| F| |TAMS 0x000000074d800000, 0x000000074d800000| Untracked +| 109|0x000000074da00000, 0x000000074da00000, 0x000000074dc00000| 0%| F| |TAMS 0x000000074da00000, 0x000000074da00000| Untracked +| 110|0x000000074dc00000, 0x000000074dc00000, 0x000000074de00000| 0%| F| |TAMS 0x000000074dc00000, 0x000000074dc00000| Untracked +| 111|0x000000074de00000, 0x000000074de00000, 0x000000074e000000| 0%| F| |TAMS 0x000000074de00000, 0x000000074de00000| Untracked +| 112|0x000000074e000000, 0x000000074e000000, 0x000000074e200000| 0%| F| |TAMS 0x000000074e000000, 0x000000074e000000| Untracked +| 113|0x000000074e200000, 0x000000074e200000, 0x000000074e400000| 0%| F| |TAMS 0x000000074e200000, 0x000000074e200000| Untracked +| 114|0x000000074e400000, 0x000000074e400000, 0x000000074e600000| 0%| F| |TAMS 0x000000074e400000, 0x000000074e400000| Untracked +| 115|0x000000074e600000, 0x000000074e600000, 0x000000074e800000| 0%| F| |TAMS 0x000000074e600000, 0x000000074e600000| Untracked +| 116|0x000000074e800000, 0x000000074e800000, 0x000000074ea00000| 0%| F| |TAMS 0x000000074e800000, 0x000000074e800000| Untracked +| 117|0x000000074ea00000, 0x000000074ea00000, 0x000000074ec00000| 0%| F| |TAMS 0x000000074ea00000, 0x000000074ea00000| Untracked +| 118|0x000000074ec00000, 0x000000074ec00000, 0x000000074ee00000| 0%| F| |TAMS 0x000000074ec00000, 0x000000074ec00000| Untracked +| 119|0x000000074ee00000, 0x000000074ee00000, 0x000000074f000000| 0%| F| |TAMS 0x000000074ee00000, 0x000000074ee00000| Untracked +| 120|0x000000074f000000, 0x000000074f000000, 0x000000074f200000| 0%| F| |TAMS 0x000000074f000000, 0x000000074f000000| Untracked +| 121|0x000000074f200000, 0x000000074f200000, 0x000000074f400000| 0%| F| |TAMS 0x000000074f200000, 0x000000074f200000| Untracked +| 122|0x000000074f400000, 0x000000074f400000, 0x000000074f600000| 0%| F| |TAMS 0x000000074f400000, 0x000000074f400000| Untracked +| 123|0x000000074f600000, 0x000000074f600000, 0x000000074f800000| 0%| F| |TAMS 0x000000074f600000, 0x000000074f600000| Untracked +| 124|0x000000074f800000, 0x000000074f800000, 0x000000074fa00000| 0%| F| |TAMS 0x000000074f800000, 0x000000074f800000| Untracked +| 125|0x000000074fa00000, 0x000000074fa00000, 0x000000074fc00000| 0%| F| |TAMS 0x000000074fa00000, 0x000000074fa00000| Untracked +| 126|0x000000074fc00000, 0x000000074fc00000, 0x000000074fe00000| 0%| F| |TAMS 0x000000074fc00000, 0x000000074fc00000| Untracked +| 127|0x000000074fe00000, 0x000000074fe00000, 0x0000000750000000| 0%| F| |TAMS 0x000000074fe00000, 0x000000074fe00000| Untracked +| 128|0x0000000750000000, 0x0000000750000000, 0x0000000750200000| 0%| F| |TAMS 0x0000000750000000, 0x0000000750000000| Untracked +| 129|0x0000000750200000, 0x0000000750200000, 0x0000000750400000| 0%| F| |TAMS 0x0000000750200000, 0x0000000750200000| Untracked +| 130|0x0000000750400000, 0x0000000750400000, 0x0000000750600000| 0%| F| |TAMS 0x0000000750400000, 0x0000000750400000| Untracked +| 131|0x0000000750600000, 0x0000000750600000, 0x0000000750800000| 0%| F| |TAMS 0x0000000750600000, 0x0000000750600000| Untracked +| 132|0x0000000750800000, 0x0000000750800000, 0x0000000750a00000| 0%| F| |TAMS 0x0000000750800000, 0x0000000750800000| Untracked +| 133|0x0000000750a00000, 0x0000000750a00000, 0x0000000750c00000| 0%| F| |TAMS 0x0000000750a00000, 0x0000000750a00000| Untracked +| 134|0x0000000750c00000, 0x0000000750c00000, 0x0000000750e00000| 0%| F| |TAMS 0x0000000750c00000, 0x0000000750c00000| Untracked +| 135|0x0000000750e00000, 0x0000000750e00000, 0x0000000751000000| 0%| F| |TAMS 0x0000000750e00000, 0x0000000750e00000| Untracked +| 136|0x0000000751000000, 0x0000000751000000, 0x0000000751200000| 0%| F| |TAMS 0x0000000751000000, 0x0000000751000000| Untracked +| 137|0x0000000751200000, 0x0000000751200000, 0x0000000751400000| 0%| F| |TAMS 0x0000000751200000, 0x0000000751200000| Untracked +| 138|0x0000000751400000, 0x0000000751400000, 0x0000000751600000| 0%| F| |TAMS 0x0000000751400000, 0x0000000751400000| Untracked +| 139|0x0000000751600000, 0x0000000751600000, 0x0000000751800000| 0%| F| |TAMS 0x0000000751600000, 0x0000000751600000| Untracked +| 140|0x0000000751800000, 0x0000000751800000, 0x0000000751a00000| 0%| F| |TAMS 0x0000000751800000, 0x0000000751800000| Untracked +| 141|0x0000000751a00000, 0x0000000751c00000, 0x0000000751c00000|100%| S|CS|TAMS 0x0000000751a00000, 0x0000000751a00000| Complete +| 142|0x0000000751c00000, 0x0000000751e00000, 0x0000000751e00000|100%| S|CS|TAMS 0x0000000751c00000, 0x0000000751c00000| Complete +| 143|0x0000000751e00000, 0x0000000752000000, 0x0000000752000000|100%| S|CS|TAMS 0x0000000751e00000, 0x0000000751e00000| Complete +| 144|0x0000000752000000, 0x0000000752200000, 0x0000000752200000|100%| S|CS|TAMS 0x0000000752000000, 0x0000000752000000| Complete +| 145|0x0000000752200000, 0x0000000752200000, 0x0000000752400000| 0%| F| |TAMS 0x0000000752200000, 0x0000000752200000| Untracked +| 146|0x0000000752400000, 0x0000000752400000, 0x0000000752600000| 0%| F| |TAMS 0x0000000752400000, 0x0000000752400000| Untracked +| 147|0x0000000752600000, 0x0000000752600000, 0x0000000752800000| 0%| F| |TAMS 0x0000000752600000, 0x0000000752600000| Untracked +| 148|0x0000000752800000, 0x0000000752800000, 0x0000000752a00000| 0%| F| |TAMS 0x0000000752800000, 0x0000000752800000| Untracked +| 149|0x0000000752a00000, 0x0000000752a00000, 0x0000000752c00000| 0%| F| |TAMS 0x0000000752a00000, 0x0000000752a00000| Untracked +| 150|0x0000000752c00000, 0x0000000752c00000, 0x0000000752e00000| 0%| F| |TAMS 0x0000000752c00000, 0x0000000752c00000| Untracked +| 151|0x0000000752e00000, 0x0000000752e00000, 0x0000000753000000| 0%| F| |TAMS 0x0000000752e00000, 0x0000000752e00000| Untracked +| 152|0x0000000753000000, 0x0000000753000000, 0x0000000753200000| 0%| F| |TAMS 0x0000000753000000, 0x0000000753000000| Untracked +| 153|0x0000000753200000, 0x0000000753200000, 0x0000000753400000| 0%| F| |TAMS 0x0000000753200000, 0x0000000753200000| Untracked +| 154|0x0000000753400000, 0x0000000753400000, 0x0000000753600000| 0%| F| |TAMS 0x0000000753400000, 0x0000000753400000| Untracked +| 155|0x0000000753600000, 0x0000000753600000, 0x0000000753800000| 0%| F| |TAMS 0x0000000753600000, 0x0000000753600000| Untracked +| 156|0x0000000753800000, 0x0000000753800000, 0x0000000753a00000| 0%| F| |TAMS 0x0000000753800000, 0x0000000753800000| Untracked +| 157|0x0000000753a00000, 0x0000000753a00000, 0x0000000753c00000| 0%| F| |TAMS 0x0000000753a00000, 0x0000000753a00000| Untracked +| 158|0x0000000753c00000, 0x0000000753c00000, 0x0000000753e00000| 0%| F| |TAMS 0x0000000753c00000, 0x0000000753c00000| Untracked +| 159|0x0000000753e00000, 0x0000000753e00000, 0x0000000754000000| 0%| F| |TAMS 0x0000000753e00000, 0x0000000753e00000| Untracked +| 160|0x0000000754000000, 0x0000000754000000, 0x0000000754200000| 0%| F| |TAMS 0x0000000754000000, 0x0000000754000000| Untracked +| 161|0x0000000754200000, 0x0000000754200000, 0x0000000754400000| 0%| F| |TAMS 0x0000000754200000, 0x0000000754200000| Untracked +| 162|0x0000000754400000, 0x0000000754400000, 0x0000000754600000| 0%| F| |TAMS 0x0000000754400000, 0x0000000754400000| Untracked +| 163|0x0000000754600000, 0x0000000754600000, 0x0000000754800000| 0%| F| |TAMS 0x0000000754600000, 0x0000000754600000| Untracked +| 164|0x0000000754800000, 0x0000000754800000, 0x0000000754a00000| 0%| F| |TAMS 0x0000000754800000, 0x0000000754800000| Untracked +| 165|0x0000000754a00000, 0x0000000754a00000, 0x0000000754c00000| 0%| F| |TAMS 0x0000000754a00000, 0x0000000754a00000| Untracked +| 166|0x0000000754c00000, 0x0000000754c00000, 0x0000000754e00000| 0%| F| |TAMS 0x0000000754c00000, 0x0000000754c00000| Untracked +| 167|0x0000000754e00000, 0x0000000754e00000, 0x0000000755000000| 0%| F| |TAMS 0x0000000754e00000, 0x0000000754e00000| Untracked +| 168|0x0000000755000000, 0x0000000755000000, 0x0000000755200000| 0%| F| |TAMS 0x0000000755000000, 0x0000000755000000| Untracked +|1530|0x00000007ff400000, 0x00000007ff600000, 0x00000007ff600000|100%| O| |TAMS 0x00000007ff400000, 0x00000007ff600000| Untracked +|1531|0x00000007ff600000, 0x00000007ff800000, 0x00000007ff800000|100%| O| |TAMS 0x00000007ff600000, 0x00000007ff800000| Untracked +|1532|0x00000007ff800000, 0x00000007ffa00000, 0x00000007ffa00000|100%| O| |TAMS 0x00000007ffa00000, 0x00000007ffa00000| Untracked +|1533|0x00000007ffa00000, 0x00000007ffa00000, 0x00000007ffc00000| 0%| F| |TAMS 0x00000007ffa00000, 0x00000007ffa00000| Untracked +|1534|0x00000007ffc00000, 0x00000007ffc00000, 0x00000007ffe00000| 0%| F| |TAMS 0x00000007ffc00000, 0x00000007ffc00000| Untracked +|1535|0x00000007ffe00000, 0x00000007ffe00000, 0x0000000800000000| 0%| F| |TAMS 0x00000007ffe00000, 0x00000007ffe00000| Untracked + +Card table byte_map: [0x000001f8ac650000,0x000001f8acc50000] _byte_map_base: 0x000001f8a8c50000 + +Marking Bits (Prev, Next): (CMBitMap*) 0x000001f892ad5180, (CMBitMap*) 0x000001f892ad5140 + Prev Bits: [0x000001f8b0250000, 0x000001f8b3250000) + Next Bits: [0x000001f8ad250000, 0x000001f8b0250000) + +Polling page: 0x000001f892b80000 + +Metaspace: + +Usage: + Non-class: 58.22 MB used. + Class: 8.58 MB used. + Both: 66.80 MB used. + +Virtual space: + Non-class space: 64.00 MB reserved, 58.56 MB ( 92%) committed, 8 nodes. + Class space: 1.00 GB reserved, 8.88 MB ( <1%) committed, 1 nodes. + Both: 1.06 GB reserved, 67.44 MB ( 6%) committed. + +Chunk freelists: + Non-Class: 1.23 MB + Class: 2.95 MB + Both: 4.18 MB + +MaxMetaspaceSize: 17179869184.00 GB +CompressedClassSpaceSize: 1.00 GB + - commit_granule_bytes: 65536. + - commit_granule_words: 8192. + - virtual_space_node_default_size: 1048576. + - enlarge_chunks_in_place: 1. + - new_chunks_are_fully_committed: 0. + - uncommit_free_chunks: 1. + - use_allocation_guard: 0. + - handle_deallocations: 1. + + +Internal statistics: + +num_allocs_failed_limit: 0. +num_arena_births: 752. +num_arena_deaths: 4. +num_vsnodes_births: 9. +num_vsnodes_deaths: 0. +num_space_committed: 1079. +num_space_uncommitted: 0. +num_chunks_returned_to_freelist: 15. +num_chunks_taken_from_freelist: 3266. +num_chunk_merges: 0. +num_chunk_splits: 2099. +num_chunks_enlarged: 1355. +num_purges: 4. + +CodeHeap 'non-profiled nmethods': size=120064Kb used=6661Kb max_used=6661Kb free=113403Kb + bounds [0x000001f8a4700000, 0x000001f8a4d90000, 0x000001f8abc40000] +CodeHeap 'profiled nmethods': size=120000Kb used=17737Kb max_used=17737Kb free=102262Kb + bounds [0x000001f89d1d0000, 0x000001f89e330000, 0x000001f8a4700000] +CodeHeap 'non-nmethods': size=5696Kb used=2402Kb max_used=2453Kb free=3293Kb + bounds [0x000001f89cc40000, 0x000001f89ceb0000, 0x000001f89d1d0000] + total_blobs=9815 nmethods=8890 adapters=837 + compilation: enabled + stopped_count=0, restarted_count=0 + full_count=0 + +Compilation events (20 events): +Event: 139.392 Thread 0x000001f8b55d0290 10378 4 java.lang.StringBuffer:: (7 bytes) +Event: 139.393 Thread 0x000001f8b55d0290 nmethod 10378 0x000001f8a4d7cd90 code [0x000001f8a4d7cf20, 0x000001f8a4d7d0d8] +Event: 139.393 Thread 0x000001f8b55d0290 10374 4 net.minecraftforge.srgutils.NamedMappingFile$Cls$Method::meta (14 bytes) +Event: 139.402 Thread 0x000001f8b55d0290 nmethod 10374 0x000001f8a4d7d190 code [0x000001f8a4d7d320, 0x000001f8a4d7d7e8] +Event: 139.402 Thread 0x000001f8b55d0290 10383 4 java.lang.String::trim (35 bytes) +Event: 139.410 Thread 0x000001f8b55d0290 nmethod 10383 0x000001f8a4d7da90 code [0x000001f8a4d7dc40, 0x000001f8a4d7e268] +Event: 139.506 Thread 0x000001f8b55d0290 10384 4 net.minecraftforge.srgutils.NamedMappingFile$Cls$Field::descriptor (7 bytes) +Event: 139.507 Thread 0x000001f8b55d0290 nmethod 10384 0x000001f8a4d7e510 code [0x000001f8a4d7e680, 0x000001f8a4d7e7d8] +Event: 139.517 Thread 0x000001f8b55d0290 10385 4 net.minecraftforge.srgutils.NamedMappingFile::addClass (28 bytes) +Event: 139.531 Thread 0x000001f8b55d0290 nmethod 10385 0x000001f8a4d7e890 code [0x000001f8a4d7ea60, 0x000001f8a4d7f468] +Event: 139.531 Thread 0x000001f8b55d0290 10386 4 net.minecraftforge.srgutils.NamedMappingFile::addClass (6 bytes) +Event: 139.545 Thread 0x000001f8b55d0290 nmethod 10386 0x000001f8a4d7f990 code [0x000001f8a4d7fb60, 0x000001f8a4d80568] +Event: 139.545 Thread 0x000001f8b55d0290 10387 4 net.minecraftforge.srgutils.NamedMappingFile$Cls:: (45 bytes) +Event: 139.550 Thread 0x000001f8b55d0290 nmethod 10387 0x000001f8a4d80a90 code [0x000001f8a4d80c20, 0x000001f8a4d812f8] +Event: 139.833 Thread 0x000001f8b563d700 10388 % 3 net.minecraftforge.srgutils.InternalUtils::loadProguard @ 384 (598 bytes) +Event: 139.840 Thread 0x000001f8b563d700 nmethod 10388% 0x000001f89e30b890 code [0x000001f89e30c240, 0x000001f89e311f88] +Event: 139.844 Thread 0x000001f8b563d700 10389 % 3 net.minecraftforge.srgutils.InternalUtils::loadProguard @ 27 (598 bytes) +Event: 139.850 Thread 0x000001f8b563d700 nmethod 10389% 0x000001f89e314390 code [0x000001f89e314d40, 0x000001f89e31a888] +Event: 139.889 Thread 0x000001f8b563d700 10390 3 net.minecraftforge.srgutils.InternalUtils::loadProguard (598 bytes) +Event: 139.894 Thread 0x000001f8b563d700 nmethod 10390 0x000001f89e31cc10 code [0x000001f89e31d5c0, 0x000001f89e323048] + +GC Heap History (20 events): +Event: 86.024 GC heap after +{Heap after GC invocations=77 (full 0): + garbage-first heap total 219136K, used 121856K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 1 young (2048K), 1 survivors (2048K) + Metaspace used 65477K, committed 66112K, reserved 1114112K + class space used 8463K, committed 8768K, reserved 1048576K +} +Event: 86.461 GC heap before +{Heap before GC invocations=77 (full 0): + garbage-first heap total 219136K, used 128000K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 5 young (10240K), 1 survivors (2048K) + Metaspace used 65477K, committed 66112K, reserved 1114112K + class space used 8463K, committed 8768K, reserved 1048576K +} +Event: 86.468 GC heap after +{Heap after GC invocations=78 (full 0): + garbage-first heap total 219136K, used 99843K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 1 young (2048K), 1 survivors (2048K) + Metaspace used 65477K, committed 66112K, reserved 1114112K + class space used 8463K, committed 8768K, reserved 1048576K +} +Event: 95.182 GC heap before +{Heap before GC invocations=78 (full 0): + garbage-first heap total 219136K, used 112131K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 9 young (18432K), 1 survivors (2048K) + Metaspace used 65494K, committed 66112K, reserved 1114112K + class space used 8464K, committed 8768K, reserved 1048576K +} +Event: 95.185 GC heap after +{Heap after GC invocations=79 (full 0): + garbage-first heap total 219136K, used 97944K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 1 young (2048K), 1 survivors (2048K) + Metaspace used 65494K, committed 66112K, reserved 1114112K + class space used 8464K, committed 8768K, reserved 1048576K +} +Event: 95.249 GC heap before +{Heap before GC invocations=79 (full 0): + garbage-first heap total 219136K, used 108184K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 2 young (4096K), 1 survivors (2048K) + Metaspace used 65494K, committed 66112K, reserved 1114112K + class space used 8464K, committed 8768K, reserved 1048576K +} +Event: 95.252 GC heap after +{Heap after GC invocations=80 (full 0): + garbage-first heap total 219136K, used 97923K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 1 young (2048K), 1 survivors (2048K) + Metaspace used 65494K, committed 66112K, reserved 1114112K + class space used 8464K, committed 8768K, reserved 1048576K +} +Event: 95.281 GC heap before +{Heap before GC invocations=80 (full 0): + garbage-first heap total 219136K, used 108163K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 2 young (4096K), 1 survivors (2048K) + Metaspace used 65494K, committed 66112K, reserved 1114112K + class space used 8464K, committed 8768K, reserved 1048576K +} +Event: 95.284 GC heap after +{Heap after GC invocations=81 (full 0): + garbage-first heap total 219136K, used 97824K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 1 young (2048K), 1 survivors (2048K) + Metaspace used 65494K, committed 66112K, reserved 1114112K + class space used 8464K, committed 8768K, reserved 1048576K +} +Event: 95.328 GC heap before +{Heap before GC invocations=81 (full 0): + garbage-first heap total 219136K, used 108064K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 2 young (4096K), 1 survivors (2048K) + Metaspace used 65494K, committed 66112K, reserved 1114112K + class space used 8464K, committed 8768K, reserved 1048576K +} +Event: 95.331 GC heap after +{Heap after GC invocations=82 (full 0): + garbage-first heap total 354304K, used 97828K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 1 young (2048K), 1 survivors (2048K) + Metaspace used 65494K, committed 66112K, reserved 1114112K + class space used 8464K, committed 8768K, reserved 1048576K +} +Event: 134.434 GC heap before +{Heap before GC invocations=82 (full 0): + garbage-first heap total 354304K, used 325156K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 91 young (186368K), 1 survivors (2048K) + Metaspace used 68376K, committed 68992K, reserved 1114112K + class space used 8787K, committed 9088K, reserved 1048576K +} +Event: 134.794 GC heap after +{Heap after GC invocations=83 (full 0): + garbage-first heap total 358400K, used 143578K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 12 young (24576K), 12 survivors (24576K) + Metaspace used 68376K, committed 68992K, reserved 1114112K + class space used 8787K, committed 9088K, reserved 1048576K +} +Event: 138.378 GC heap before +{Heap before GC invocations=83 (full 0): + garbage-first heap total 358400K, used 278746K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 68 young (139264K), 12 survivors (24576K) + Metaspace used 68402K, committed 69056K, reserved 1114112K + class space used 8788K, committed 9088K, reserved 1048576K +} +Event: 138.976 GC heap after +{Heap after GC invocations=84 (full 0): + garbage-first heap total 358400K, used 159680K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 9 young (18432K), 9 survivors (18432K) + Metaspace used 68402K, committed 69056K, reserved 1114112K + class space used 8788K, committed 9088K, reserved 1048576K +} +Event: 138.988 GC heap before +{Heap before GC invocations=84 (full 0): + garbage-first heap total 358400K, used 165824K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 12 young (24576K), 9 survivors (18432K) + Metaspace used 68402K, committed 69056K, reserved 1114112K + class space used 8788K, committed 9088K, reserved 1048576K +} +Event: 139.257 GC heap after +{Heap after GC invocations=85 (full 0): + garbage-first heap total 358400K, used 162816K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 2 young (4096K), 2 survivors (4096K) + Metaspace used 68402K, committed 69056K, reserved 1114112K + class space used 8788K, committed 9088K, reserved 1048576K +} +Event: 139.909 GC heap before +{Heap before GC invocations=85 (full 0): + garbage-first heap total 358400K, used 207872K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 24 young (49152K), 2 survivors (4096K) + Metaspace used 68406K, committed 69056K, reserved 1114112K + class space used 8788K, committed 9088K, reserved 1048576K +} +Event: 139.942 GC heap after +{Heap after GC invocations=86 (full 0): + garbage-first heap total 358400K, used 172032K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 3 young (6144K), 3 survivors (6144K) + Metaspace used 68406K, committed 69056K, reserved 1114112K + class space used 8788K, committed 9088K, reserved 1048576K +} +Event: 139.985 GC heap before +{Heap before GC invocations=86 (full 0): + garbage-first heap total 358400K, used 221184K [0x0000000740000000, 0x0000000800000000) + region size 2048K, 27 young (55296K), 3 survivors (6144K) + Metaspace used 68406K, committed 69056K, reserved 1114112K + class space used 8788K, committed 9088K, reserved 1048576K +} + +Deoptimization events (20 events): +Event: 136.251 Thread 0x000001f8b9fe4dd0 DEOPT PACKING pc=0x000001f8a4c43fb0 sp=0x0000001c1b4fe700 +Event: 136.251 Thread 0x000001f8b9fe4dd0 DEOPT UNPACKING pc=0x000001f89cc8d72e sp=0x0000001c1b4fe720 mode 2 +Event: 138.061 Thread 0x000001f8b6134b10 Uncommon trap: trap_request=0xffffff45 fr.pc=0x000001f8a4a6f420 relative=0x00000000000005e0 +Event: 138.061 Thread 0x000001f8b6134b10 Uncommon trap: reason=unstable_if action=reinterpret pc=0x000001f8a4a6f420 method=net.minecraftforge.srgutils.InternalUtils.stripComment(Ljava/lang/String;)Ljava/lang/String; @ 8 c2 +Event: 138.061 Thread 0x000001f8b6134b10 DEOPT PACKING pc=0x000001f8a4a6f420 sp=0x0000001c1cff6910 +Event: 138.061 Thread 0x000001f8b6134b10 DEOPT UNPACKING pc=0x000001f89cc8d72e sp=0x0000001c1cff68e0 mode 2 +Event: 138.061 Thread 0x000001f8b6134b10 Uncommon trap: trap_request=0xffffff45 fr.pc=0x000001f8a4a6e7d4 relative=0x0000000000000614 +Event: 138.061 Thread 0x000001f8b6134b10 Uncommon trap: reason=unstable_if action=reinterpret pc=0x000001f8a4a6e7d4 method=net.minecraftforge.srgutils.InternalUtils.stripComment(Ljava/lang/String;)Ljava/lang/String; @ 8 c2 +Event: 138.061 Thread 0x000001f8b6134b10 DEOPT PACKING pc=0x000001f8a4a6e7d4 sp=0x0000001c1cff6670 +Event: 138.061 Thread 0x000001f8b6134b10 DEOPT UNPACKING pc=0x000001f89cc8d72e sp=0x0000001c1cff65d0 mode 2 +Event: 138.061 Thread 0x000001f8b6134b10 Uncommon trap: trap_request=0xffffff45 fr.pc=0x000001f8a489cc8c relative=0x000000000000006c +Event: 138.061 Thread 0x000001f8b6134b10 Uncommon trap: reason=unstable_if action=reinterpret pc=0x000001f8a489cc8c method=net.minecraftforge.srgutils.InternalUtils.lambda$filter$1(Ljava/lang/String;)Z @ 4 c2 +Event: 138.061 Thread 0x000001f8b6134b10 DEOPT PACKING pc=0x000001f8a489cc8c sp=0x0000001c1cff6690 +Event: 138.061 Thread 0x000001f8b6134b10 DEOPT UNPACKING pc=0x000001f89cc8d72e sp=0x0000001c1cff65b0 mode 2 +Event: 138.085 Thread 0x000001f8b6134b10 DEOPT PACKING pc=0x000001f89dd05020 sp=0x0000001c1cff66e0 +Event: 138.086 Thread 0x000001f8b6134b10 DEOPT UNPACKING pc=0x000001f89cc8dece sp=0x0000001c1cff5c00 mode 0 +Event: 138.180 Thread 0x000001f8b6134b10 DEOPT PACKING pc=0x000001f89dd05020 sp=0x0000001c1cff66e0 +Event: 138.180 Thread 0x000001f8b6134b10 DEOPT UNPACKING pc=0x000001f89cc8dece sp=0x0000001c1cff5c00 mode 0 +Event: 138.369 Thread 0x000001f8b6134b10 DEOPT PACKING pc=0x000001f89d3e3776 sp=0x0000001c1cff6820 +Event: 138.369 Thread 0x000001f8b6134b10 DEOPT UNPACKING pc=0x000001f89cc8dece sp=0x0000001c1cff5cb0 mode 0 + +Classes unloaded (20 events): +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801233a98 '_BuildScript_$_run_closure5$_closure18' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x00000008012336b0 '_BuildScript_$_run_closure5$_closure17$_closure19' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x00000008012332c8 '_BuildScript_$_run_closure5$_closure17' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801232ee0 '_BuildScript_$_run_closure5' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801232af8 '_BuildScript_$_run_closure4$_closure16' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801232710 '_BuildScript_$_run_closure4' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801232328 '_BuildScript_$_run_closure3' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801231f40 '_BuildScript_$_run_closure2' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801231b58 '_BuildScript_$_run_closure1$_closure6$_closure9$_closure14$_closure15' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801231770 '_BuildScript_$_run_closure1$_closure6$_closure9$_closure14' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801231388 '_BuildScript_$_run_closure1$_closure6$_closure9' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801230fa0 '_BuildScript_$_run_closure1$_closure6$_closure8$_closure12$_closure13' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801230bb8 '_BuildScript_$_run_closure1$_closure6$_closure8$_closure12' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x00000008012307d0 '_BuildScript_$_run_closure1$_closure6$_closure8' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x00000008012303e8 '_BuildScript_$_run_closure1$_closure6$_closure7$_closure10$_closure11' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801230000 '_BuildScript_$_run_closure1$_closure6$_closure7$_closure10' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801228400 '_BuildScript_$_run_closure1$_closure6$_closure7' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801228be8 '_BuildScript_$_run_closure1$_closure6' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x0000000801228800 '_BuildScript_$_run_closure1' +Event: 60.395 Thread 0x000001f892b61f10 Unloading class 0x00000008011e5000 '_BuildScript_' + +Classes redefined (0 events): +No events + +Internal exceptions (20 events): +Event: 65.608 Thread 0x000001f8b6134b10 Implicit null exception at 0x000001f8a4739072 to 0x000001f8a4739664 +Event: 70.887 Thread 0x000001f8b6134b10 Exception (0x00000007480d4d50) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\interpreter\linkResolver.cpp, line 790] +Event: 70.890 Thread 0x000001f8b6134b10 Exception (0x00000007480f6af8) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\interpreter\linkResolver.cpp, line 790] +Event: 125.648 Thread 0x000001f8b6134b10 Exception (0x0000000750834250) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\classfile\systemDictionary.cpp, line 256] +Event: 125.651 Thread 0x000001f8b6134b10 Exception (0x000000075083eeb0) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\classfile\systemDictionary.cpp, line 256] +Event: 125.655 Thread 0x000001f8b6134b10 Exception (0x0000000750849cc0) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\classfile\systemDictionary.cpp, line 256] +Event: 125.666 Thread 0x000001f8b6134b10 Exception (0x0000000750854ad0) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\classfile\systemDictionary.cpp, line 256] +Event: 125.694 Thread 0x000001f8b6134b10 Exception (0x000000075087a750) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\classfile\systemDictionary.cpp, line 256] +Event: 125.698 Thread 0x000001f8b6134b10 Exception (0x00000007508994b8) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\classfile\systemDictionary.cpp, line 256] +Event: 126.270 Thread 0x000001f8b6134b10 Exception (0x00000007504a8ff0) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\interpreter\linkResolver.cpp, line 790] +Event: 127.825 Thread 0x000001f8b6134b10 Exception (0x000000075013cb00) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\classfile\systemDictionary.cpp, line 256] +Event: 127.833 Thread 0x000001f8b6134b10 Exception (0x0000000750146458) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\classfile\systemDictionary.cpp, line 256] +Event: 128.002 Thread 0x000001f8b6134b10 Exception (0x000000075016aa40) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\classfile\systemDictionary.cpp, line 256] +Event: 128.006 Thread 0x000001f8b6134b10 Exception (0x0000000750174318) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\classfile\systemDictionary.cpp, line 256] +Event: 129.412 Thread 0x000001f8b6132090 Exception ()V> (0x000000074f2086b8) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\prims\jni.cpp, line 1210] +Event: 129.414 Thread 0x000001f8b6132090 Exception ()V> (0x000000074f211c10) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\prims\jni.cpp, line 1210] +Event: 129.417 Thread 0x000001f8b6132090 Exception ()V> (0x000000074f219090) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\prims\jni.cpp, line 1210] +Event: 133.876 Thread 0x000001f8b6134b10 Exception (0x000000074a868e48) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\interpreter\linkResolver.cpp, line 790] +Event: 133.882 Thread 0x000001f8b6134b10 Exception (0x000000074a8719d0) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\interpreter\linkResolver.cpp, line 790] +Event: 135.854 Thread 0x000001f8b6134b10 Exception (0x0000000751cd5eb0) +thrown [c:\wsjdk\correttojdksrc\installers\windows\zip\corretto-build\buildroot\src\hotspot\share\prims\jni.cpp, line 579] + +Events (20 events): +Event: 132.696 Executing VM operation: Cleanup done +Event: 133.710 Executing VM operation: Cleanup +Event: 133.710 Executing VM operation: Cleanup done +Event: 133.868 loading class java/util/stream/SortedOps$SizedRefSortingSink +Event: 133.869 loading class java/util/stream/SortedOps$SizedRefSortingSink done +Event: 134.413 Executing VM operation: G1CollectForAllocation +Event: 134.795 Executing VM operation: G1CollectForAllocation done +Event: 135.797 Executing VM operation: Cleanup +Event: 135.811 Executing VM operation: Cleanup done +Event: 136.817 Executing VM operation: Cleanup +Event: 137.029 Executing VM operation: Cleanup done +Event: 138.035 Executing VM operation: Cleanup +Event: 138.053 Executing VM operation: Cleanup done +Event: 138.378 Executing VM operation: G1CollectForAllocation +Event: 138.978 Executing VM operation: G1CollectForAllocation done +Event: 138.988 Executing VM operation: G1CollectForAllocation +Event: 139.447 Executing VM operation: G1CollectForAllocation done +Event: 139.908 Executing VM operation: G1CollectForAllocation +Event: 139.942 Executing VM operation: G1CollectForAllocation done +Event: 139.985 Executing VM operation: G1CollectForAllocation + + +Dynamic libraries: +0x00007ff6c56d0000 - 0x00007ff6c56dd000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\java.exe +0x00007ffc4eab0000 - 0x00007ffc4eca5000 C:\windows\SYSTEM32\ntdll.dll +0x00007ffc4d270000 - 0x00007ffc4d32e000 C:\windows\System32\KERNEL32.DLL +0x00007ffc4c1d0000 - 0x00007ffc4c499000 C:\windows\System32\KERNELBASE.dll +0x00007ffc4c5b0000 - 0x00007ffc4c6b0000 C:\windows\System32\ucrtbase.dll +0x00007ffc28cc0000 - 0x00007ffc28cd8000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\jli.dll +0x00007ffc4d470000 - 0x00007ffc4d611000 C:\windows\System32\USER32.dll +0x00007ffc4c990000 - 0x00007ffc4c9b2000 C:\windows\System32\win32u.dll +0x00007ffc4e6e0000 - 0x00007ffc4e70b000 C:\windows\System32\GDI32.dll +0x00007ffc4c4a0000 - 0x00007ffc4c5ab000 C:\windows\System32\gdi32full.dll +0x00007ffc4c6b0000 - 0x00007ffc4c74d000 C:\windows\System32\msvcp_win.dll +0x00007ffc28ca0000 - 0x00007ffc28cb5000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\VCRUNTIME140.dll +0x00007ffc36600000 - 0x00007ffc3689a000 C:\windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e\COMCTL32.dll +0x00007ffc4dff0000 - 0x00007ffc4e08e000 C:\windows\System32\msvcrt.dll +0x00007ffc4cd50000 - 0x00007ffc4cd80000 C:\windows\System32\IMM32.DLL +0x00007ffc1a350000 - 0x00007ffc1a3eb000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\msvcp140.dll +0x00007ffbdb930000 - 0x00007ffbdc539000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\server\jvm.dll +0x00007ffc4d3c0000 - 0x00007ffc4d46c000 C:\windows\System32\ADVAPI32.dll +0x00007ffc4ddc0000 - 0x00007ffc4de5b000 C:\windows\System32\sechost.dll +0x00007ffc4de60000 - 0x00007ffc4df8a000 C:\windows\System32\RPCRT4.dll +0x00007ffc4d3b0000 - 0x00007ffc4d3b8000 C:\windows\System32\PSAPI.DLL +0x00007ffc46cb0000 - 0x00007ffc46cb9000 C:\windows\SYSTEM32\WSOCK32.dll +0x00007ffc4e580000 - 0x00007ffc4e5eb000 C:\windows\System32\WS2_32.dll +0x00007ffc43d80000 - 0x00007ffc43da7000 C:\windows\SYSTEM32\WINMM.dll +0x00007ffc43d70000 - 0x00007ffc43d7a000 C:\windows\SYSTEM32\VERSION.dll +0x00007ffc4a0d0000 - 0x00007ffc4a0e2000 C:\windows\SYSTEM32\kernel.appcore.dll +0x00007ffc49a10000 - 0x00007ffc49a1a000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\jimage.dll +0x00007ffc382a0000 - 0x00007ffc38484000 C:\windows\SYSTEM32\DBGHELP.DLL +0x00007ffc30930000 - 0x00007ffc3095c000 C:\windows\SYSTEM32\dbgcore.DLL +0x00007ffc4c900000 - 0x00007ffc4c983000 C:\windows\System32\bcryptPrimitives.dll +0x00007ffc22ac0000 - 0x00007ffc22ae5000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\java.dll +0x00007ffc4d680000 - 0x00007ffc4ddbf000 C:\windows\System32\SHELL32.dll +0x00007ffc4a2d0000 - 0x00007ffc4aa60000 C:\windows\SYSTEM32\windows.storage.dll +0x00007ffc4ce60000 - 0x00007ffc4d1b5000 C:\windows\System32\combase.dll +0x00007ffc4bb50000 - 0x00007ffc4bb7c000 C:\windows\SYSTEM32\Wldp.dll +0x00007ffc4cb00000 - 0x00007ffc4cbad000 C:\windows\System32\SHCORE.dll +0x00007ffc4d620000 - 0x00007ffc4d675000 C:\windows\System32\shlwapi.dll +0x00007ffc4c110000 - 0x00007ffc4c12f000 C:\windows\SYSTEM32\profapi.dll +0x00007ffc28c40000 - 0x00007ffc28c59000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\net.dll +0x00007ffc361b0000 - 0x00007ffc362b8000 C:\windows\SYSTEM32\WINHTTP.dll +0x00007ffc4b8b0000 - 0x00007ffc4b91a000 C:\windows\system32\mswsock.dll +0x00007ffc21630000 - 0x00007ffc21643000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\nio.dll +0x00007ffc21610000 - 0x00007ffc21628000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\zip.dll +0x00007ffc45080000 - 0x00007ffc45090000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\verify.dll +0x00007ffc49a20000 - 0x00007ffc49a47000 C:\Users\bryen\.gradle\native\8bec1ad78214c89d9ad589b4d07fe93259594b29d510b10fafb7a158f7737e5d\windows-amd64\native-platform.dll +0x00007ffc19f20000 - 0x00007ffc1a05d000 C:\Users\bryen\.gradle\native\53dbd7edfb1c66fb8903c78663c9afc45aea4f116125fa6feffd364cf09443e8\windows-amd64\native-platform-file-events.dll +0x00007ffc44f30000 - 0x00007ffc44f39000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\management.dll +0x00007ffc43d40000 - 0x00007ffc43d4b000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\management_ext.dll +0x00007ffc4baa0000 - 0x00007ffc4bab8000 C:\windows\SYSTEM32\CRYPTSP.dll +0x00007ffc4b230000 - 0x00007ffc4b264000 C:\windows\system32\rsaenh.dll +0x00007ffc4ca70000 - 0x00007ffc4ca97000 C:\windows\System32\bcrypt.dll +0x00007ffc4c0d0000 - 0x00007ffc4c0fe000 C:\windows\SYSTEM32\USERENV.dll +0x00007ffc4bac0000 - 0x00007ffc4bacc000 C:\windows\SYSTEM32\CRYPTBASE.dll +0x00007ffc4b5a0000 - 0x00007ffc4b5db000 C:\windows\SYSTEM32\IPHLPAPI.DLL +0x00007ffc4e090000 - 0x00007ffc4e098000 C:\windows\System32\NSI.dll +0x00007ffc41cd0000 - 0x00007ffc41ce7000 C:\windows\SYSTEM32\dhcpcsvc6.DLL +0x00007ffc41cb0000 - 0x00007ffc41ccd000 C:\windows\SYSTEM32\dhcpcsvc.DLL +0x00007ffc4b5e0000 - 0x00007ffc4b6ac000 C:\windows\SYSTEM32\DNSAPI.dll +0x00007ffc3c350000 - 0x00007ffc3c35e000 C:\Users\bryen\.jdks\corretto-16.0.2\bin\sunmscapi.dll +0x00007ffc4c7a0000 - 0x00007ffc4c8f6000 C:\windows\System32\CRYPT32.dll +0x00007ffc4bbc0000 - 0x00007ffc4bbe7000 C:\windows\SYSTEM32\ncrypt.dll +0x00007ffc4bb80000 - 0x00007ffc4bbbb000 C:\windows\SYSTEM32\NTASN1.dll +0x00007ffc398b0000 - 0x00007ffc398b7000 C:\windows\system32\wshunix.dll +0x00007ffc33e40000 - 0x00007ffc33e4a000 C:\Windows\System32\rasadhlp.dll +0x00007ffc33e80000 - 0x00007ffc33eff000 C:\windows\System32\fwpuclnt.dll + +dbghelp: loaded successfully - version: 4.0.5 - missing functions: none +symbol engine: initialized successfully - sym options: 0x614 - pdb path: .;C:\Users\bryen\.jdks\corretto-16.0.2\bin;C:\windows\SYSTEM32;C:\windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e;C:\Users\bryen\.jdks\corretto-16.0.2\bin\server;C:\Users\bryen\.gradle\native\8bec1ad78214c89d9ad589b4d07fe93259594b29d510b10fafb7a158f7737e5d\windows-amd64;C:\Users\bryen\.gradle\native\53dbd7edfb1c66fb8903c78663c9afc45aea4f116125fa6feffd364cf09443e8\windows-amd64 + +VM Arguments: +jvm_args: --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -Xmx3G -Dfile.encoding=windows-1252 -Duser.country=US -Duser.language=en -Duser.variant +java_command: org.gradle.launcher.daemon.bootstrap.GradleDaemon 7.1.1 +java_class_path (initial): C:\Users\bryen\.gradle\wrapper\dists\gradle-7.1.1-bin\f29rtwfnc96ub43tt7p47zsru\gradle-7.1.1\lib\gradle-launcher-7.1.1.jar +Launcher Type: SUN_STANDARD + +[Global flags] + intx CICompilerCount = 2 {product} {ergonomic} + uint ConcGCThreads = 1 {product} {ergonomic} + uint G1ConcRefinementThreads = 2 {product} {ergonomic} + size_t G1HeapRegionSize = 2097152 {product} {ergonomic} + uintx GCDrainStackTargetSize = 64 {product} {ergonomic} + size_t InitialHeapSize = 58720256 {product} {ergonomic} + size_t MarkStackSize = 4194304 {product} {ergonomic} + size_t MaxHeapSize = 3221225472 {product} {command line} + size_t MaxNewSize = 1931476992 {product} {ergonomic} + size_t MinHeapDeltaBytes = 2097152 {product} {ergonomic} + size_t MinHeapSize = 8388608 {product} {ergonomic} + uintx NonNMethodCodeHeapSize = 5826188 {pd product} {ergonomic} + uintx NonProfiledCodeHeapSize = 122916026 {pd product} {ergonomic} + uintx ProfiledCodeHeapSize = 122916026 {pd product} {ergonomic} + uintx ReservedCodeCacheSize = 251658240 {pd product} {ergonomic} + bool SegmentedCodeCache = true {product} {ergonomic} + size_t SoftMaxHeapSize = 3221225472 {manageable} {ergonomic} + bool UseCompressedClassPointers = true {product lp64_product} {ergonomic} + bool UseCompressedOops = true {product lp64_product} {ergonomic} + bool UseG1GC = true {product} {ergonomic} + bool UseLargePagesIndividualAllocation = false {pd product} {ergonomic} + +Logging: +Log output configuration: + #0: stdout all=warning uptime,level,tags + #1: stderr all=off uptime,level,tags + +Environment Variables: +PATH=C:\Program Files\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\windows\System32\OpenSSH\;C:\Users\bryen\AppData\Local\Microsoft\WindowsApps;;C:\Users\bryen\AppData\Local\Programs\Microsoft VS Code\bin +USERNAME=bryen +OS=Windows_NT +PROCESSOR_IDENTIFIER=AMD64 Family 23 Model 24 Stepping 1, AuthenticAMD + + + +--------------- S Y S T E M --------------- + +OS: + Windows 10 , 64 bit Build 19041 (10.0.19041.1202) +OS uptime: 6 days 22:38 hours + +CPU: total 2 (initial active 2) (2 cores per cpu, 1 threads per core) family 23 model 24 stepping 1 microcode 0x0, cx8, cmov, fxsr, mmx, 3dnowpref, sse, sse2, sse3, ssse3, sse4a, sse4.1, sse4.2, popcnt, lzcnt, tsc, tscinvbit, avx, avx2, aes, clmul, bmi1, bmi2, adx, sha, fma, vzeroupper, clflush, clflushopt + +Memory: 4k page, system-wide physical 3500M (315M free) +TotalPageFile size 11490M (AvailPageFile size 344M) +current process WorkingSet (physical memory assigned to process): 406M, peak: 406M +current process commit charge ("private bytes"): 594M, peak: 1294M + +vm_info: OpenJDK 64-Bit Server VM (16.0.2+7) for windows-amd64 JRE (16.0.2+7), built on Jul 22 2021 01:11:46 by "Administrator" with MS VC++ 15.9 (VS2017) + +END. diff --git a/src/generated/resources/.cache/cache b/src/generated/resources/.cache/cache new file mode 100644 index 0000000..d9a4336 --- /dev/null +++ b/src/generated/resources/.cache/cache @@ -0,0 +1,110 @@ +f822b4148c1567589ab549c361cd430751c710e6 assets/squidcoder/blockstates/copper_block.json +73c40fac9eb630d30790ca3e1f4b6c1ea4a2731f assets/squidcoder/blockstates/copper_ore.json +aedee4caaa0b782cb5e8fb1b23652e1b182edd66 assets/squidcoder/blockstates/exposed_copper.json +8804fc4d8fc23ac071bea0847bb5e5f8e69c92b7 assets/squidcoder/blockstates/oxidized_copper.json +d8febfc341d7ae1d182d80a264ee2412bcc1df0c assets/squidcoder/blockstates/raw_copper_block.json +9bb7136e9746454831469b5ee8ec080f836ce3e5 assets/squidcoder/blockstates/raw_gold_block.json +506daebc430535819ea7ee47e46f6ff1320c8df4 assets/squidcoder/blockstates/raw_iron_block.json +f8d4f023963b49b193efc321e0f84d4cf643048d assets/squidcoder/blockstates/silver_block.json +9449e84aaa0bce1392793e12b3171aef952e5f5c assets/squidcoder/blockstates/silver_ore.json +a9596cf4152f0e9b999abedcb1624b7d79b21d0e assets/squidcoder/blockstates/waxed_copper_block.json +9680da4ee97f39f32e7cc6ca3fb49773a4f62a74 assets/squidcoder/blockstates/weathered_copper.json +a65bd8952887a6b50903ca1573e40f28818203f3 assets/squidcoder/models/block/copper_block.json +c6be9ad2d21ce8af0e540922264035cf49c7994d assets/squidcoder/models/block/copper_ore.json +99874edb4e16f5b66ea162815b5adaab265a6b8a assets/squidcoder/models/block/exposed_copper.json +b1d6091ca7e8e4c2a6be0ff399755c97b94bd04f assets/squidcoder/models/block/oxidized_copper.json +50e635e62be87ee3d3b0e83d35db6e6dd2fdfaef assets/squidcoder/models/block/raw_copper_block.json +4961f181590e658c69726e705ca4ed9d03d344a3 assets/squidcoder/models/block/raw_gold_block.json +322bb714ff9a12b9e55f07828b290c018122f66f assets/squidcoder/models/block/raw_iron_block.json +5287bac2dde85f35b1342ceb67ae59ec7c10f32d assets/squidcoder/models/block/silver_block.json +caea934e5573379e627a8dfa8f6eca0e301fafdc assets/squidcoder/models/block/silver_ore.json +ebfe1e480b35953cab91da9d6437d5908085ee91 assets/squidcoder/models/block/waxed_copper_block.json +c077889721051dec818259976cb74413e464fb16 assets/squidcoder/models/block/weathered_copper.json +57b7f1f6bedefce4c21d618d2f2527080b08661c assets/squidcoder/models/item/amethyst_shard.json +230094628848a5e0155c7efa56ecd330d1add13b assets/squidcoder/models/item/copper_ingot.json +5cf8628695cd47b6e2c0879326c085a8a8eaae97 assets/squidcoder/models/item/copper_ore.json +95f6e619016b20e353d2d0bad636d7045ebde671 assets/squidcoder/models/item/raw_copper.json +46b292ff6ffc72ca45245bdecd461e04e8ab91d0 assets/squidcoder/models/item/raw_copper_block.json +fcea663131a7d070d62492d3f95b607c5cee2cd5 assets/squidcoder/models/item/raw_gold.json +e264f635c522a4ab2ce29d0381642081a5ecb902 assets/squidcoder/models/item/raw_gold_block.json +ee2e376cfef563a8d5a9348460b7fe0ba819f1e9 assets/squidcoder/models/item/raw_iron.json +19baba1d3f696a3841760a404d1b113c4872ac40 assets/squidcoder/models/item/raw_iron_block.json +1c689194894e5fd82f3b4c63e77aafead75ff6ec assets/squidcoder/models/item/silver_block.json +bfc0c02aa9bc5e11a1a1c9ebc336165a98b7a073 assets/squidcoder/models/item/silver_dust.json +e9eb37bd1bd054f9a43b86e1dc5e27d1e6b8b843 assets/squidcoder/models/item/silver_ingot.json +afcf2accdc00a9643eb6aec883f70260d5558d9c assets/squidcoder/models/item/silver_nugget.json +c5b82181885f1269881f8f3af9e96133fa6f7cc2 assets/squidcoder/models/item/silver_ore.json +aaebf46e1825e3b618c191110541d80003977d60 assets/squidcoder/models/item/spyglass.json +03b79854f11bdd3a31fb90edfdd390058249bca0 assets/squidcoder/models/item/waxed_copper_block.json +0d1d401bdc2282349b66f841d5febee4c074cabb data/forge/tags/blocks/ores.json +536f8f539ea146b57a19a668eee2cf7aa39d5d14 data/forge/tags/blocks/ores/silver.json +a68c6de6ef36f81f3f3b18740c79b09583ed31f1 data/forge/tags/blocks/storage_blocks.json +3921cfd3f74bbb8dc4f05c28c547e1d18af2323c data/forge/tags/blocks/storage_blocks/silver.json +adb2b71ff23664ed3f93785599ca34bbc66abbfd data/forge/tags/items/dusts.json +184a8f1e59d0655351ea00862c309231b17012d6 data/forge/tags/items/dusts/silver.json +6aca82e8ad81198ae376ca71b9429dcaa8ebf33b data/forge/tags/items/ingots.json +127ddb8968d944ce28a92345e145e439a2aa596f data/forge/tags/items/ingots/silver.json +3cc8b5461714ca2885327e6d1f4821b90a5a4bbd data/forge/tags/items/nuggets.json +72d6ab98414391099f25c7717ff7767796271feb data/forge/tags/items/nuggets/silver.json +0d1d401bdc2282349b66f841d5febee4c074cabb data/forge/tags/items/ores.json +536f8f539ea146b57a19a668eee2cf7aa39d5d14 data/forge/tags/items/ores/silver.json +a68c6de6ef36f81f3f3b18740c79b09583ed31f1 data/forge/tags/items/storage_blocks.json +3921cfd3f74bbb8dc4f05c28c547e1d18af2323c data/forge/tags/items/storage_blocks/silver.json +492cc6305b97a1557a1aa649b67a45d10b84be00 data/squidcoder/advancements/recipes/misc/gold_ingot_from_blasting_raw.json +30677c148d35eaa05f4c95ca39d0bd3517921e59 data/squidcoder/advancements/recipes/misc/gold_ingot_from_smelting_raw.json +28badbe89716394597a51460e1cb1c72527a46f1 data/squidcoder/advancements/recipes/misc/iron_ingot_from_blasting_raw.json +37f28e2e1719db09283f44519f69fc28117be772 data/squidcoder/advancements/recipes/misc/iron_ingot_from_smelting_raw.json +ed40e8ecfedf49101a647f43053b9b334376ee45 data/squidcoder/advancements/recipes/squidcoder_modtab/copper_block_decompacting.json +936de7c50fde1a93bcff22e86764ef9131b7fdf8 data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_compacting.json +2f438a959f305f7c3e67006b75ed229f84571ce3 data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_blasting_ore.json +3189d36ecdac39808e1ab34ea987a49214bf5d22 data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_blasting_raw.json +26555262fd8be6b5c251f7f19f3d1309fb0ecc14 data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_smelting_ore.json +b6c24d6c707db8bd1d3a807d505d15a418f44c51 data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_smelting_raw.json +8b310bddacd7ec199f91c34cff65618b672ac087 data/squidcoder/advancements/recipes/squidcoder_modtab/raw_copper_block_decompacting.json +493ec9ef63dbca310937ce85d53da0775b45be2c data/squidcoder/advancements/recipes/squidcoder_modtab/raw_copper_compacting.json +62cb8cbbdeb58bdd89ce911ae483f144ac0740a6 data/squidcoder/advancements/recipes/squidcoder_modtab/raw_gold_block_decompacting.json +5aa45efd87124fca875bdeea464f42f54471886c data/squidcoder/advancements/recipes/squidcoder_modtab/raw_gold_compacting.json +e0fb1b104037133ca3e768f6165dc3ba230f69be data/squidcoder/advancements/recipes/squidcoder_modtab/raw_iron_block_decompacting.json +2efd30e8d12fbab3b4795378ced5076b3b7017c6 data/squidcoder/advancements/recipes/squidcoder_modtab/raw_iron_compacting.json +f3cbc7e6dc5ea5486e3ce676176e9557eed2662b data/squidcoder/advancements/recipes/squidcoder_modtab/silver_block_decompacting.json +7fb776ea248b3bb2da89267ac92fcec36192f354 data/squidcoder/advancements/recipes/squidcoder_modtab/silver_ingot_compacting.json +b5cc0f513381b5fe3676717ef5063187bc93584e data/squidcoder/advancements/recipes/squidcoder_modtab/silver_ingot_from_blasting_ore.json +2f79f24436e6a2a3187e3fe7421b3167fe2a9fe1 data/squidcoder/advancements/recipes/squidcoder_modtab/silver_ingot_from_smelting_ore.json +e623131cd01ecb096d686bfb87aa05ffefd3a650 data/squidcoder/advancements/recipes/squidcoder_modtab/silver_nugget_compacting.json +ef9d49eddeec2958cba6b4dfa9cffa54dbc85b35 data/squidcoder/advancements/recipes/squidcoder_modtab/spyglass.json +40460e7d4ab0f9f67e90a683b81a16008a7db116 data/squidcoder/loot_tables/blocks/copper_block.json +6024745e8f6b011bbb4a3b0ee29d9f2ea289c210 data/squidcoder/loot_tables/blocks/copper_ore.json +af500230beba8637e2cc9d8f2aa42914b2e34a66 data/squidcoder/loot_tables/blocks/exposed_copper.json +47caf86ee952880ca1df422a2dcc749f7f846033 data/squidcoder/loot_tables/blocks/oxidized_copper.json +5ca8786bdf39691218181e53c0d04ab7637371a5 data/squidcoder/loot_tables/blocks/raw_copper_block.json +3a10081780b07bd94a4178e2c4b034e7847a8f2e data/squidcoder/loot_tables/blocks/raw_gold_block.json +5bae451970d9624841c1fd578426b41e57f95564 data/squidcoder/loot_tables/blocks/raw_iron_block.json +bbda90a55f983dfc20597aae2c23871e0429c991 data/squidcoder/loot_tables/blocks/silver_block.json +ce7dc5bda86a24a30e8c39c54595895ee376e58e data/squidcoder/loot_tables/blocks/silver_ore.json +50ef34cfa114d9db709735a0943e8b2d27abdef4 data/squidcoder/loot_tables/blocks/waxed_copper_block.json +cdc5052019b19c9b7dd5e119a57864cb3f98973f data/squidcoder/loot_tables/blocks/waxed_exposed_copper.json +e24de9e1fec734c36e4170814c3aea67753dce03 data/squidcoder/loot_tables/blocks/waxed_oxidized_copper.json +6d650ecf677367e921e6e56afa0413cd2d778dda data/squidcoder/loot_tables/blocks/waxed_weathered_copper.json +09e52bf3e30c065bd60c31a11bae4cf6a23dd622 data/squidcoder/loot_tables/blocks/weathered_copper.json +228d32b8c25634bc28710bb561da1e5cd9ef89c5 data/squidcoder/recipes/copper_block_decompacting.json +1120ad7e6bc185502d1b3bf3f44481d5d6c36f0f data/squidcoder/recipes/copper_ingot_compacting.json +7cd6f0e7fad823dd0dfa4943c59a91e56e455531 data/squidcoder/recipes/copper_ingot_from_blasting_ore.json +119f27b37e86c02adf283784bdf37362e86598a1 data/squidcoder/recipes/copper_ingot_from_blasting_raw.json +df4f9f9d9cb1c99c8b043fe2dac7f72a42c4a0cd data/squidcoder/recipes/copper_ingot_from_smelting_ore.json +1488572358c4f218c1d547b997d9596ad09bf5f3 data/squidcoder/recipes/copper_ingot_from_smelting_raw.json +af6b4600489a0207ba89d70b2a22c7f7425b4074 data/squidcoder/recipes/gold_ingot_from_blasting_raw.json +ea2151fb457c826a158ed2868202ec2f54b683d0 data/squidcoder/recipes/gold_ingot_from_smelting_raw.json +ec22563614ab63fe57970c3768c457fd01352dcb data/squidcoder/recipes/iron_ingot_from_blasting_raw.json +bfc710987be8c998989eabe8b291d4f4205e04f7 data/squidcoder/recipes/iron_ingot_from_smelting_raw.json +2ef7cff324edb6994c658bcd14e976715143b15f data/squidcoder/recipes/raw_copper_block_decompacting.json +a4f7a0d053cdd3dee2d31524559ee33b35341c68 data/squidcoder/recipes/raw_copper_compacting.json +897920f69d8128d97c83ecdd4398109dd8673ce9 data/squidcoder/recipes/raw_gold_block_decompacting.json +d933d482986a8c4bb0f9972a53a2f56d7710353f data/squidcoder/recipes/raw_gold_compacting.json +637066b1e64067c31ad1d7e2516efaaa1aff71ea data/squidcoder/recipes/raw_iron_block_decompacting.json +7724c3d37790d65bffe6535fbd48f8ab64715b57 data/squidcoder/recipes/raw_iron_compacting.json +e4e0457d975cb3ff199a89048ce0aec70bcd59ee data/squidcoder/recipes/silver_block_decompacting.json +85922b7e74b46b1c547958823393106e3049b3d1 data/squidcoder/recipes/silver_ingot_compacting.json +0b4f405b095ad6658097197294bbc2b6d424d7af data/squidcoder/recipes/silver_ingot_from_blasting_ore.json +02d9bf01d17d2bf1b47558ceef287bdd123efae9 data/squidcoder/recipes/silver_ingot_from_smelting_ore.json +b763b95bd4a7321678e480a82c2d8ee72244d670 data/squidcoder/recipes/silver_nugget_compacting.json +e3a020ac55a77cad6aee3a1667384f8186461045 data/squidcoder/recipes/spyglass.json diff --git a/src/generated/resources/assets/squidcoder/blockstates/copper_block.json b/src/generated/resources/assets/squidcoder/blockstates/copper_block.json new file mode 100644 index 0000000..0da037b --- /dev/null +++ b/src/generated/resources/assets/squidcoder/blockstates/copper_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "squidcoder:block/copper_block" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/blockstates/copper_ore.json b/src/generated/resources/assets/squidcoder/blockstates/copper_ore.json new file mode 100644 index 0000000..4d554a9 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/blockstates/copper_ore.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "squidcoder:block/copper_ore" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/blockstates/exposed_copper.json b/src/generated/resources/assets/squidcoder/blockstates/exposed_copper.json new file mode 100644 index 0000000..9e4240f --- /dev/null +++ b/src/generated/resources/assets/squidcoder/blockstates/exposed_copper.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "squidcoder:block/exposed_copper" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/blockstates/oxidized_copper.json b/src/generated/resources/assets/squidcoder/blockstates/oxidized_copper.json new file mode 100644 index 0000000..8cd53be --- /dev/null +++ b/src/generated/resources/assets/squidcoder/blockstates/oxidized_copper.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "squidcoder:block/oxidized_copper" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/blockstates/raw_copper_block.json b/src/generated/resources/assets/squidcoder/blockstates/raw_copper_block.json new file mode 100644 index 0000000..410fd92 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/blockstates/raw_copper_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "squidcoder:block/raw_copper_block" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/blockstates/raw_gold_block.json b/src/generated/resources/assets/squidcoder/blockstates/raw_gold_block.json new file mode 100644 index 0000000..7d737c2 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/blockstates/raw_gold_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "squidcoder:block/raw_gold_block" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/blockstates/raw_iron_block.json b/src/generated/resources/assets/squidcoder/blockstates/raw_iron_block.json new file mode 100644 index 0000000..efeca22 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/blockstates/raw_iron_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "squidcoder:block/raw_iron_block" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/blockstates/silver_block.json b/src/generated/resources/assets/squidcoder/blockstates/silver_block.json new file mode 100644 index 0000000..c030c8a --- /dev/null +++ b/src/generated/resources/assets/squidcoder/blockstates/silver_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "squidcoder:block/silver_block" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/blockstates/silver_ore.json b/src/generated/resources/assets/squidcoder/blockstates/silver_ore.json new file mode 100644 index 0000000..76566e8 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/blockstates/silver_ore.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "squidcoder:block/silver_ore" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/blockstates/waxed_copper_block.json b/src/generated/resources/assets/squidcoder/blockstates/waxed_copper_block.json new file mode 100644 index 0000000..18290cf --- /dev/null +++ b/src/generated/resources/assets/squidcoder/blockstates/waxed_copper_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "squidcoder:block/waxed_copper_block" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/blockstates/weathered_copper.json b/src/generated/resources/assets/squidcoder/blockstates/weathered_copper.json new file mode 100644 index 0000000..a6d932f --- /dev/null +++ b/src/generated/resources/assets/squidcoder/blockstates/weathered_copper.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "squidcoder:block/weathered_copper" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/block/copper_block.json b/src/generated/resources/assets/squidcoder/models/block/copper_block.json new file mode 100644 index 0000000..10bdf1f --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/block/copper_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "squidcoder:block/copper_block" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/block/copper_ore.json b/src/generated/resources/assets/squidcoder/models/block/copper_ore.json new file mode 100644 index 0000000..3aafd3e --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/block/copper_ore.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "squidcoder:block/copper_ore" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/block/exposed_copper.json b/src/generated/resources/assets/squidcoder/models/block/exposed_copper.json new file mode 100644 index 0000000..cc9006b --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/block/exposed_copper.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "squidcoder:block/exposed_copper" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/block/oxidized_copper.json b/src/generated/resources/assets/squidcoder/models/block/oxidized_copper.json new file mode 100644 index 0000000..8838328 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/block/oxidized_copper.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "squidcoder:block/oxidized_copper" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/block/raw_copper_block.json b/src/generated/resources/assets/squidcoder/models/block/raw_copper_block.json new file mode 100644 index 0000000..92999ec --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/block/raw_copper_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "squidcoder:block/raw_copper_block" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/block/raw_gold_block.json b/src/generated/resources/assets/squidcoder/models/block/raw_gold_block.json new file mode 100644 index 0000000..350fb08 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/block/raw_gold_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "squidcoder:block/raw_gold_block" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/block/raw_iron_block.json b/src/generated/resources/assets/squidcoder/models/block/raw_iron_block.json new file mode 100644 index 0000000..c6b6567 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/block/raw_iron_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "squidcoder:block/raw_iron_block" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/block/silver_block.json b/src/generated/resources/assets/squidcoder/models/block/silver_block.json new file mode 100644 index 0000000..b6cde09 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/block/silver_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "squidcoder:block/silver_block" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/block/silver_ore.json b/src/generated/resources/assets/squidcoder/models/block/silver_ore.json new file mode 100644 index 0000000..35ac83e --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/block/silver_ore.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "squidcoder:block/silver_ore" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/block/waxed_copper_block.json b/src/generated/resources/assets/squidcoder/models/block/waxed_copper_block.json new file mode 100644 index 0000000..8da8e19 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/block/waxed_copper_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "squidcoder:block/waxed_copper_block" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/block/weathered_copper.json b/src/generated/resources/assets/squidcoder/models/block/weathered_copper.json new file mode 100644 index 0000000..d5edfd1 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/block/weathered_copper.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "squidcoder:block/weathered_copper" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/amethyst_shard.json b/src/generated/resources/assets/squidcoder/models/item/amethyst_shard.json new file mode 100644 index 0000000..1756464 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/amethyst_shard.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "squidcoder:item/amethyst_shard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/copper_ingot.json b/src/generated/resources/assets/squidcoder/models/item/copper_ingot.json new file mode 100644 index 0000000..9bbf833 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/copper_ingot.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "squidcoder:item/copper_ingot" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/copper_ore.json b/src/generated/resources/assets/squidcoder/models/item/copper_ore.json new file mode 100644 index 0000000..abd483a --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/copper_ore.json @@ -0,0 +1,3 @@ +{ + "parent": "squidcoder:block/copper_ore" +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/raw_copper.json b/src/generated/resources/assets/squidcoder/models/item/raw_copper.json new file mode 100644 index 0000000..41ce67b --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/raw_copper.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "squidcoder:item/raw_copper" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/raw_copper_block.json b/src/generated/resources/assets/squidcoder/models/item/raw_copper_block.json new file mode 100644 index 0000000..ecd8860 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/raw_copper_block.json @@ -0,0 +1,3 @@ +{ + "parent": "squidcoder:block/raw_copper_block" +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/raw_gold.json b/src/generated/resources/assets/squidcoder/models/item/raw_gold.json new file mode 100644 index 0000000..7526287 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/raw_gold.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "squidcoder:item/raw_gold" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/raw_gold_block.json b/src/generated/resources/assets/squidcoder/models/item/raw_gold_block.json new file mode 100644 index 0000000..8eb18c9 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/raw_gold_block.json @@ -0,0 +1,3 @@ +{ + "parent": "squidcoder:block/raw_gold_block" +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/raw_iron.json b/src/generated/resources/assets/squidcoder/models/item/raw_iron.json new file mode 100644 index 0000000..2c10c1e --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/raw_iron.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "squidcoder:item/raw_iron" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/raw_iron_block.json b/src/generated/resources/assets/squidcoder/models/item/raw_iron_block.json new file mode 100644 index 0000000..dbb5957 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/raw_iron_block.json @@ -0,0 +1,3 @@ +{ + "parent": "squidcoder:block/raw_iron_block" +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/silver_block.json b/src/generated/resources/assets/squidcoder/models/item/silver_block.json new file mode 100644 index 0000000..08222c5 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/silver_block.json @@ -0,0 +1,3 @@ +{ + "parent": "squidcoder:block/silver_block" +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/silver_dust.json b/src/generated/resources/assets/squidcoder/models/item/silver_dust.json new file mode 100644 index 0000000..b77a644 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/silver_dust.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "squidcoder:item/silver_dust" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/silver_ingot.json b/src/generated/resources/assets/squidcoder/models/item/silver_ingot.json new file mode 100644 index 0000000..3741520 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/silver_ingot.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "squidcoder:item/silver_ingot" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/silver_nugget.json b/src/generated/resources/assets/squidcoder/models/item/silver_nugget.json new file mode 100644 index 0000000..25f159f --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/silver_nugget.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "squidcoder:item/silver_nugget" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/silver_ore.json b/src/generated/resources/assets/squidcoder/models/item/silver_ore.json new file mode 100644 index 0000000..1003739 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/silver_ore.json @@ -0,0 +1,3 @@ +{ + "parent": "squidcoder:block/silver_ore" +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/spyglass.json b/src/generated/resources/assets/squidcoder/models/item/spyglass.json new file mode 100644 index 0000000..cf11925 --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/spyglass.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "squidcoder:item/spyglass" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/squidcoder/models/item/waxed_copper_block.json b/src/generated/resources/assets/squidcoder/models/item/waxed_copper_block.json new file mode 100644 index 0000000..15b48fe --- /dev/null +++ b/src/generated/resources/assets/squidcoder/models/item/waxed_copper_block.json @@ -0,0 +1,3 @@ +{ + "parent": "squidcoder:block/waxed_copper_block" +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/blocks/ores.json b/src/generated/resources/data/forge/tags/blocks/ores.json new file mode 100644 index 0000000..ef67966 --- /dev/null +++ b/src/generated/resources/data/forge/tags/blocks/ores.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#forge:ores/silver" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/blocks/ores/silver.json b/src/generated/resources/data/forge/tags/blocks/ores/silver.json new file mode 100644 index 0000000..357c46c --- /dev/null +++ b/src/generated/resources/data/forge/tags/blocks/ores/silver.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "squidcoder:silver_ore" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/blocks/storage_blocks.json b/src/generated/resources/data/forge/tags/blocks/storage_blocks.json new file mode 100644 index 0000000..41cffdb --- /dev/null +++ b/src/generated/resources/data/forge/tags/blocks/storage_blocks.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#forge:storage_blocks/silver" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/blocks/storage_blocks/silver.json b/src/generated/resources/data/forge/tags/blocks/storage_blocks/silver.json new file mode 100644 index 0000000..8a96608 --- /dev/null +++ b/src/generated/resources/data/forge/tags/blocks/storage_blocks/silver.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "squidcoder:silver_block" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/dusts.json b/src/generated/resources/data/forge/tags/items/dusts.json new file mode 100644 index 0000000..01e2a05 --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/dusts.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#forge:dusts/silver" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/dusts/silver.json b/src/generated/resources/data/forge/tags/items/dusts/silver.json new file mode 100644 index 0000000..81f12cf --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/dusts/silver.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "squidcoder:silver_dust" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/ingots.json b/src/generated/resources/data/forge/tags/items/ingots.json new file mode 100644 index 0000000..8d3ea52 --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/ingots.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#forge:ingots/silver" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/ingots/silver.json b/src/generated/resources/data/forge/tags/items/ingots/silver.json new file mode 100644 index 0000000..f93c8ff --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/ingots/silver.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "squidcoder:silver_ingot" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/nuggets.json b/src/generated/resources/data/forge/tags/items/nuggets.json new file mode 100644 index 0000000..ebdfb3a --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/nuggets.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#forge:nuggets/silver" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/nuggets/silver.json b/src/generated/resources/data/forge/tags/items/nuggets/silver.json new file mode 100644 index 0000000..4f0f004 --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/nuggets/silver.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "squidcoder:silver_nugget" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/ores.json b/src/generated/resources/data/forge/tags/items/ores.json new file mode 100644 index 0000000..ef67966 --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/ores.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#forge:ores/silver" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/ores/silver.json b/src/generated/resources/data/forge/tags/items/ores/silver.json new file mode 100644 index 0000000..357c46c --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/ores/silver.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "squidcoder:silver_ore" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/storage_blocks.json b/src/generated/resources/data/forge/tags/items/storage_blocks.json new file mode 100644 index 0000000..41cffdb --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/storage_blocks.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#forge:storage_blocks/silver" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/storage_blocks/silver.json b/src/generated/resources/data/forge/tags/items/storage_blocks/silver.json new file mode 100644 index 0000000..8a96608 --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/storage_blocks/silver.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "squidcoder:silver_block" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/misc/gold_ingot_from_blasting_raw.json b/src/generated/resources/data/squidcoder/advancements/recipes/misc/gold_ingot_from_blasting_raw.json new file mode 100644 index 0000000..088aac7 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/misc/gold_ingot_from_blasting_raw.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:gold_ingot_from_blasting_raw" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:raw_gold" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:gold_ingot_from_blasting_raw" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/misc/gold_ingot_from_smelting_raw.json b/src/generated/resources/data/squidcoder/advancements/recipes/misc/gold_ingot_from_smelting_raw.json new file mode 100644 index 0000000..c28dcc9 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/misc/gold_ingot_from_smelting_raw.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:gold_ingot_from_smelting_raw" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:raw_gold" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:gold_ingot_from_smelting_raw" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/misc/iron_ingot_from_blasting_raw.json b/src/generated/resources/data/squidcoder/advancements/recipes/misc/iron_ingot_from_blasting_raw.json new file mode 100644 index 0000000..2cbf359 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/misc/iron_ingot_from_blasting_raw.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:iron_ingot_from_blasting_raw" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:raw_iron" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:iron_ingot_from_blasting_raw" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/misc/iron_ingot_from_smelting_raw.json b/src/generated/resources/data/squidcoder/advancements/recipes/misc/iron_ingot_from_smelting_raw.json new file mode 100644 index 0000000..2a19107 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/misc/iron_ingot_from_smelting_raw.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:iron_ingot_from_smelting_raw" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:raw_iron" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:iron_ingot_from_smelting_raw" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_block_decompacting.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_block_decompacting.json new file mode 100644 index 0000000..3929e12 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_block_decompacting.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:copper_block_decompacting" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:copper_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:copper_block_decompacting" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_compacting.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_compacting.json new file mode 100644 index 0000000..831b673 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_compacting.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:copper_ingot_compacting" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:copper_ingot" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:copper_ingot_compacting" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_blasting_ore.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_blasting_ore.json new file mode 100644 index 0000000..51178aa --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_blasting_ore.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:copper_ingot_from_blasting_ore" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:copper_ore" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:copper_ingot_from_blasting_ore" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_blasting_raw.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_blasting_raw.json new file mode 100644 index 0000000..939f876 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_blasting_raw.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:copper_ingot_from_blasting_raw" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:raw_copper" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:copper_ingot_from_blasting_raw" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_smelting_ore.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_smelting_ore.json new file mode 100644 index 0000000..f471254 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_smelting_ore.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:copper_ingot_from_smelting_ore" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:copper_ore" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:copper_ingot_from_smelting_ore" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_smelting_raw.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_smelting_raw.json new file mode 100644 index 0000000..07473c5 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/copper_ingot_from_smelting_raw.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:copper_ingot_from_smelting_raw" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:raw_copper" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:copper_ingot_from_smelting_raw" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_copper_block_decompacting.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_copper_block_decompacting.json new file mode 100644 index 0000000..fa6a01d --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_copper_block_decompacting.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:raw_copper_block_decompacting" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:raw_copper_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:raw_copper_block_decompacting" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_copper_compacting.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_copper_compacting.json new file mode 100644 index 0000000..b390024 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_copper_compacting.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:raw_copper_compacting" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:raw_copper" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:raw_copper_compacting" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_gold_block_decompacting.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_gold_block_decompacting.json new file mode 100644 index 0000000..901b7f9 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_gold_block_decompacting.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:raw_gold_block_decompacting" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:raw_gold_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:raw_gold_block_decompacting" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_gold_compacting.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_gold_compacting.json new file mode 100644 index 0000000..34727c9 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_gold_compacting.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:raw_gold_compacting" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:raw_gold" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:raw_gold_compacting" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_iron_block_decompacting.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_iron_block_decompacting.json new file mode 100644 index 0000000..d95a92a --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_iron_block_decompacting.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:raw_iron_block_decompacting" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:raw_iron_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:raw_iron_block_decompacting" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_iron_compacting.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_iron_compacting.json new file mode 100644 index 0000000..69a9c70 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/raw_iron_compacting.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:raw_iron_compacting" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:raw_iron" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:raw_iron_compacting" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_block_decompacting.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_block_decompacting.json new file mode 100644 index 0000000..5793e54 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_block_decompacting.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:silver_block_decompacting" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:silver_block" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:silver_block_decompacting" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_ingot_compacting.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_ingot_compacting.json new file mode 100644 index 0000000..baf1313 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_ingot_compacting.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:silver_ingot_compacting" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:silver_ingot" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:silver_ingot_compacting" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_ingot_from_blasting_ore.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_ingot_from_blasting_ore.json new file mode 100644 index 0000000..c2cb2f1 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_ingot_from_blasting_ore.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:silver_ingot_from_blasting_ore" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:silver_ore" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:silver_ingot_from_blasting_ore" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_ingot_from_smelting_ore.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_ingot_from_smelting_ore.json new file mode 100644 index 0000000..2966fe5 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_ingot_from_smelting_ore.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:silver_ingot_from_smelting_ore" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:silver_ore" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:silver_ingot_from_smelting_ore" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_nugget_compacting.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_nugget_compacting.json new file mode 100644 index 0000000..681000c --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/silver_nugget_compacting.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:silver_nugget_compacting" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:silver_nugget" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:silver_nugget_compacting" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/spyglass.json b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/spyglass.json new file mode 100644 index 0000000..75b6da9 --- /dev/null +++ b/src/generated/resources/data/squidcoder/advancements/recipes/squidcoder_modtab/spyglass.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "squidcoder:spyglass" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "squidcoder:amethyst_shard" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "squidcoder:spyglass" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/copper_block.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/copper_block.json new file mode 100644 index 0000000..0014a30 --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/copper_block.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "squidcoder:copper_block" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/copper_ore.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/copper_ore.json new file mode 100644 index 0000000..204d879 --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/copper_ore.json @@ -0,0 +1,59 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ], + "name": "squidcoder:copper_ore" + }, + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 2.0, + "max": 5.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:apply_bonus", + "enchantment": "minecraft:fortune", + "formula": "minecraft:uniform_bonus_count", + "parameters": { + "bonusMultiplier": 1 + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "squidcoder:raw_copper" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/exposed_copper.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/exposed_copper.json new file mode 100644 index 0000000..295e88f --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/exposed_copper.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "squidcoder:exposed_copper" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/oxidized_copper.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/oxidized_copper.json new file mode 100644 index 0000000..fd7f969 --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/oxidized_copper.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "squidcoder:oxidized_copper" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/raw_copper_block.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/raw_copper_block.json new file mode 100644 index 0000000..15ebc58 --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/raw_copper_block.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "squidcoder:raw_copper_block" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/raw_gold_block.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/raw_gold_block.json new file mode 100644 index 0000000..42f4070 --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/raw_gold_block.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "squidcoder:raw_gold_block" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/raw_iron_block.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/raw_iron_block.json new file mode 100644 index 0000000..ef4f4b2 --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/raw_iron_block.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "squidcoder:raw_iron_block" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/silver_block.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/silver_block.json new file mode 100644 index 0000000..66969d6 --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/silver_block.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "squidcoder:silver_block" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/silver_ore.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/silver_ore.json new file mode 100644 index 0000000..acbddb8 --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/silver_ore.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "squidcoder:silver_ore" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/waxed_copper_block.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/waxed_copper_block.json new file mode 100644 index 0000000..543e283 --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/waxed_copper_block.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "squidcoder:waxed_copper_block" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/waxed_exposed_copper.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/waxed_exposed_copper.json new file mode 100644 index 0000000..2e2f6b1 --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/waxed_exposed_copper.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "squidcoder:waxed_exposed_copper" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/waxed_oxidized_copper.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/waxed_oxidized_copper.json new file mode 100644 index 0000000..17d7eb2 --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/waxed_oxidized_copper.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "squidcoder:waxed_oxidized_copper" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/waxed_weathered_copper.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/waxed_weathered_copper.json new file mode 100644 index 0000000..7930c1f --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/waxed_weathered_copper.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "squidcoder:waxed_weathered_copper" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/loot_tables/blocks/weathered_copper.json b/src/generated/resources/data/squidcoder/loot_tables/blocks/weathered_copper.json new file mode 100644 index 0000000..c3edcd8 --- /dev/null +++ b/src/generated/resources/data/squidcoder/loot_tables/blocks/weathered_copper.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "squidcoder:weathered_copper" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/copper_block_decompacting.json b/src/generated/resources/data/squidcoder/recipes/copper_block_decompacting.json new file mode 100644 index 0000000..3a93a56 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/copper_block_decompacting.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { + "item": "squidcoder:copper_block" + } + ], + "result": { + "item": "squidcoder:copper_ingot", + "count": 9 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/copper_ingot_compacting.json b/src/generated/resources/data/squidcoder/recipes/copper_ingot_compacting.json new file mode 100644 index 0000000..be22d68 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/copper_ingot_compacting.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "###", + "###" + ], + "key": { + "#": { + "item": "squidcoder:copper_ingot" + } + }, + "result": { + "item": "squidcoder:copper_block" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/copper_ingot_from_blasting_ore.json b/src/generated/resources/data/squidcoder/recipes/copper_ingot_from_blasting_ore.json new file mode 100644 index 0000000..81e551b --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/copper_ingot_from_blasting_ore.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:blasting", + "ingredient": { + "item": "squidcoder:copper_ore" + }, + "result": "squidcoder:copper_ingot", + "experience": 0.7, + "cookingtime": 100 +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/copper_ingot_from_blasting_raw.json b/src/generated/resources/data/squidcoder/recipes/copper_ingot_from_blasting_raw.json new file mode 100644 index 0000000..af4140d --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/copper_ingot_from_blasting_raw.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:blasting", + "ingredient": { + "item": "squidcoder:raw_copper" + }, + "result": "squidcoder:copper_ingot", + "experience": 0.7, + "cookingtime": 100 +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/copper_ingot_from_smelting_ore.json b/src/generated/resources/data/squidcoder/recipes/copper_ingot_from_smelting_ore.json new file mode 100644 index 0000000..27ff4f5 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/copper_ingot_from_smelting_ore.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "squidcoder:copper_ore" + }, + "result": "squidcoder:copper_ingot", + "experience": 0.7, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/copper_ingot_from_smelting_raw.json b/src/generated/resources/data/squidcoder/recipes/copper_ingot_from_smelting_raw.json new file mode 100644 index 0000000..593afc1 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/copper_ingot_from_smelting_raw.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "squidcoder:raw_copper" + }, + "result": "squidcoder:copper_ingot", + "experience": 0.7, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/gold_ingot_from_blasting_raw.json b/src/generated/resources/data/squidcoder/recipes/gold_ingot_from_blasting_raw.json new file mode 100644 index 0000000..0a180c3 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/gold_ingot_from_blasting_raw.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:blasting", + "ingredient": { + "item": "squidcoder:raw_gold" + }, + "result": "minecraft:gold_ingot", + "experience": 1.0, + "cookingtime": 100 +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/gold_ingot_from_smelting_raw.json b/src/generated/resources/data/squidcoder/recipes/gold_ingot_from_smelting_raw.json new file mode 100644 index 0000000..2bcd604 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/gold_ingot_from_smelting_raw.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "squidcoder:raw_gold" + }, + "result": "minecraft:gold_ingot", + "experience": 1.0, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/iron_ingot_from_blasting_raw.json b/src/generated/resources/data/squidcoder/recipes/iron_ingot_from_blasting_raw.json new file mode 100644 index 0000000..71631b9 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/iron_ingot_from_blasting_raw.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:blasting", + "ingredient": { + "item": "squidcoder:raw_iron" + }, + "result": "minecraft:iron_ingot", + "experience": 0.7, + "cookingtime": 100 +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/iron_ingot_from_smelting_raw.json b/src/generated/resources/data/squidcoder/recipes/iron_ingot_from_smelting_raw.json new file mode 100644 index 0000000..ac05cc8 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/iron_ingot_from_smelting_raw.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "squidcoder:raw_iron" + }, + "result": "minecraft:iron_ingot", + "experience": 0.7, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/raw_copper_block_decompacting.json b/src/generated/resources/data/squidcoder/recipes/raw_copper_block_decompacting.json new file mode 100644 index 0000000..172ecc9 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/raw_copper_block_decompacting.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { + "item": "squidcoder:raw_copper_block" + } + ], + "result": { + "item": "squidcoder:raw_copper", + "count": 9 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/raw_copper_compacting.json b/src/generated/resources/data/squidcoder/recipes/raw_copper_compacting.json new file mode 100644 index 0000000..f59d172 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/raw_copper_compacting.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "###", + "###" + ], + "key": { + "#": { + "item": "squidcoder:raw_copper" + } + }, + "result": { + "item": "squidcoder:raw_copper_block" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/raw_gold_block_decompacting.json b/src/generated/resources/data/squidcoder/recipes/raw_gold_block_decompacting.json new file mode 100644 index 0000000..d3bcf6f --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/raw_gold_block_decompacting.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { + "item": "squidcoder:raw_gold_block" + } + ], + "result": { + "item": "squidcoder:raw_gold", + "count": 9 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/raw_gold_compacting.json b/src/generated/resources/data/squidcoder/recipes/raw_gold_compacting.json new file mode 100644 index 0000000..6d5cb43 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/raw_gold_compacting.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "###", + "###" + ], + "key": { + "#": { + "item": "squidcoder:raw_gold" + } + }, + "result": { + "item": "squidcoder:raw_gold_block" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/raw_iron_block_decompacting.json b/src/generated/resources/data/squidcoder/recipes/raw_iron_block_decompacting.json new file mode 100644 index 0000000..b15eefc --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/raw_iron_block_decompacting.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { + "item": "squidcoder:raw_iron_block" + } + ], + "result": { + "item": "squidcoder:raw_iron", + "count": 9 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/raw_iron_compacting.json b/src/generated/resources/data/squidcoder/recipes/raw_iron_compacting.json new file mode 100644 index 0000000..49e65f5 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/raw_iron_compacting.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "###", + "###" + ], + "key": { + "#": { + "item": "squidcoder:raw_iron" + } + }, + "result": { + "item": "squidcoder:raw_iron_block" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/silver_block_decompacting.json b/src/generated/resources/data/squidcoder/recipes/silver_block_decompacting.json new file mode 100644 index 0000000..716a847 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/silver_block_decompacting.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { + "item": "squidcoder:silver_block" + } + ], + "result": { + "item": "squidcoder:silver_ingot", + "count": 9 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/silver_ingot_compacting.json b/src/generated/resources/data/squidcoder/recipes/silver_ingot_compacting.json new file mode 100644 index 0000000..a073a6c --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/silver_ingot_compacting.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "###", + "###" + ], + "key": { + "#": { + "item": "squidcoder:silver_ingot" + } + }, + "result": { + "item": "squidcoder:silver_block" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/silver_ingot_from_blasting_ore.json b/src/generated/resources/data/squidcoder/recipes/silver_ingot_from_blasting_ore.json new file mode 100644 index 0000000..c8944c5 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/silver_ingot_from_blasting_ore.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:blasting", + "ingredient": { + "item": "squidcoder:silver_ore" + }, + "result": "squidcoder:silver_ingot", + "experience": 0.7, + "cookingtime": 100 +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/silver_ingot_from_smelting_ore.json b/src/generated/resources/data/squidcoder/recipes/silver_ingot_from_smelting_ore.json new file mode 100644 index 0000000..479e242 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/silver_ingot_from_smelting_ore.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "squidcoder:silver_ore" + }, + "result": "squidcoder:silver_ingot", + "experience": 0.7, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/silver_nugget_compacting.json b/src/generated/resources/data/squidcoder/recipes/silver_nugget_compacting.json new file mode 100644 index 0000000..b90ab08 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/silver_nugget_compacting.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "###", + "###" + ], + "key": { + "#": { + "item": "squidcoder:silver_nugget" + } + }, + "result": { + "item": "squidcoder:silver_ingot" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/squidcoder/recipes/spyglass.json b/src/generated/resources/data/squidcoder/recipes/spyglass.json new file mode 100644 index 0000000..cd9fee8 --- /dev/null +++ b/src/generated/resources/data/squidcoder/recipes/spyglass.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + " a ", + " c ", + " c " + ], + "key": { + "c": { + "item": "squidcoder:copper_ingot" + }, + "a": { + "item": "squidcoder:amethyst_shard" + } + }, + "result": { + "item": "squidcoder:spyglass" + } +} \ No newline at end of file diff --git a/src/main/java/com/SquidCoder/squidcoder/SquidCoderMod.java b/src/main/java/com/SquidCoder/squidcoder/SquidCoderMod.java new file mode 100644 index 0000000..fdc5f85 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/SquidCoderMod.java @@ -0,0 +1,95 @@ +package com.SquidCoder.squidcoder; + +import com.SquidCoder.squidcoder.setup.ModBlocks; +import com.SquidCoder.squidcoder.setup.Registration; +import com.google.common.collect.ImmutableMap; +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import net.minecraft.block.Block; +import net.minecraft.item.AxeItem; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.eventbus.api.SubscribeEvent; +import net.minecraftforge.fml.InterModComms; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; +import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; +import net.minecraftforge.fml.event.lifecycle.InterModEnqueueEvent; +import net.minecraftforge.fml.event.lifecycle.InterModProcessEvent; +import net.minecraftforge.fml.event.server.FMLServerStartingEvent; +import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +import java.util.stream.Collectors; + +// The value here should match an entry in the META-INF/mods.toml file +@Mod(SquidCoderMod.MOD_ID) +public class SquidCoderMod +{ + public static final String MOD_ID = "squidcoder"; + public static final String VERSION = "0.1.0"; + public static final Gson GSON = new GsonBuilder().setPrettyPrinting() + .disableHtmlEscaping() + .create(); + // Directly reference a log4j logger. + public static final Logger LOGGER = LogManager.getLogger(); + + public SquidCoderMod() { + Registration.register(); + + // Register the setup method for modloading + FMLJavaModLoadingContext.get().getModEventBus().addListener(this::setup); + // Register the enqueueIMC method for modloading + FMLJavaModLoadingContext.get().getModEventBus().addListener(this::enqueueIMC); + // Register the processIMC method for modloading + FMLJavaModLoadingContext.get().getModEventBus().addListener(this::processIMC); + // Register the doClientStuff method for modloading + FMLJavaModLoadingContext.get().getModEventBus().addListener(this::doClientStuff); + + // Register ourselves for server and other game events we are interested in + MinecraftForge.EVENT_BUS.register(this); + } + + private void setup(final FMLCommonSetupEvent event) + { + event.enqueueWork(() -> { + AxeItem.STRIPABLES = new ImmutableMap.Builder().putAll(AxeItem.STRIPABLES) + .put(ModBlocks.WAXED_COPPER_BLOCK.get(), ModBlocks.COPPER_BLOCK.get()) + //etc. + .build(); + }); + + //Minecraft.getInstance().particleEngine.register(Registration.PARTICLE_TYPE, new IParticleFactory factory); + } + + private void doClientStuff(final FMLClientSetupEvent event) { + // do something that can only be done on the client + LOGGER.info("Got game settings {}", event.getMinecraftSupplier().get().options); + + } + + private void enqueueIMC(final InterModEnqueueEvent event) + { + // some example code to dispatch IMC to another mod + InterModComms.sendTo("squidcoder", "helloworld", () -> { LOGGER.info("Hello world from the MDK"); return "Hello world";}); + } + + private void processIMC(final InterModProcessEvent event) + { + // some example code to receive and process InterModComms from other mods + LOGGER.info("Got IMC {}", event.getIMCStream(). + map(m->m.getMessageSupplier().get()). + collect(Collectors.toList())); + } + // You can use SubscribeEvent and let the Event Bus discover methods to call + @SubscribeEvent + public void onServerStarting(FMLServerStartingEvent event) { + // do something when the server starts + LOGGER.info("HELLO from server starting"); + } + + public static ResourceLocation asResource(String path) { + return new ResourceLocation(MOD_ID, path); + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/DataGenerators.java b/src/main/java/com/SquidCoder/squidcoder/data/DataGenerators.java new file mode 100644 index 0000000..8ca1743 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/DataGenerators.java @@ -0,0 +1,31 @@ +package com.SquidCoder.squidcoder.data; + +import com.SquidCoder.squidcoder.SquidCoderMod; +import com.SquidCoder.squidcoder.data.client.ModBlockStateProvider; +import com.SquidCoder.squidcoder.data.client.ModItemModelProvider; +import net.minecraft.data.DataGenerator; +import net.minecraftforge.common.data.ExistingFileHelper; +import net.minecraftforge.eventbus.api.SubscribeEvent; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.fml.event.lifecycle.GatherDataEvent; + +@Mod.EventBusSubscriber(modid = SquidCoderMod.MOD_ID, bus = Mod.EventBusSubscriber.Bus.MOD) +public final class DataGenerators { + private DataGenerators() {} + + @SubscribeEvent + public static void gatherData(GatherDataEvent event) { + DataGenerator gen = event.getGenerator(); + ExistingFileHelper existingFileHelper = event.getExistingFileHelper(); + + gen.addProvider(new ModBlockStateProvider(gen, existingFileHelper)); + gen.addProvider(new ModItemModelProvider(gen, existingFileHelper)); + + ModBlockTagsProvider blockTags = new ModBlockTagsProvider(gen, existingFileHelper); + gen.addProvider(blockTags); + gen.addProvider(new ModItemTagsProvider(gen, blockTags, existingFileHelper)); + + gen.addProvider(new ModLootTableProvider(gen)); + gen.addProvider(new ModRecipeProvider(gen)); + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/ModBlockTagsProvider.java b/src/main/java/com/SquidCoder/squidcoder/data/ModBlockTagsProvider.java new file mode 100644 index 0000000..c5ec5e9 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/ModBlockTagsProvider.java @@ -0,0 +1,25 @@ +package com.SquidCoder.squidcoder.data; + +import com.SquidCoder.squidcoder.SquidCoderMod; +import com.SquidCoder.squidcoder.setup.ModBlocks; +import com.SquidCoder.squidcoder.setup.ModTags; +import net.minecraft.data.BlockTagsProvider; +import net.minecraft.data.DataGenerator; +import net.minecraftforge.common.Tags; +import net.minecraftforge.common.data.ExistingFileHelper; + +public class ModBlockTagsProvider extends BlockTagsProvider { + public ModBlockTagsProvider(DataGenerator generatorIn, ExistingFileHelper existingFileHelper) { + super(generatorIn, SquidCoderMod.MOD_ID, existingFileHelper); + } + + @Override + protected void addTags() { + tag(ModTags.Blocks.ORES_SILVER) + .add(ModBlocks.SILVER_ORE.get()); + tag(Tags.Blocks.ORES).addTag(ModTags.Blocks.ORES_SILVER); + tag(ModTags.Blocks.STORAGE_BLOCKS_SILVER) + .add(ModBlocks.SILVER_BLOCK.get()); + tag(Tags.Blocks.STORAGE_BLOCKS).addTag(ModTags.Blocks.STORAGE_BLOCKS_SILVER); + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/ModItemTagsProvider.java b/src/main/java/com/SquidCoder/squidcoder/data/ModItemTagsProvider.java new file mode 100644 index 0000000..9e5d2ee --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/ModItemTagsProvider.java @@ -0,0 +1,31 @@ +package com.SquidCoder.squidcoder.data; + +import com.SquidCoder.squidcoder.SquidCoderMod; +import com.SquidCoder.squidcoder.setup.ModItems; +import com.SquidCoder.squidcoder.setup.ModTags; +import net.minecraft.data.BlockTagsProvider; +import net.minecraft.data.DataGenerator; +import net.minecraft.data.ItemTagsProvider; +import net.minecraftforge.common.Tags; +import net.minecraftforge.common.data.ExistingFileHelper; + +public class ModItemTagsProvider extends ItemTagsProvider { + public ModItemTagsProvider(DataGenerator dataGenerator, BlockTagsProvider blockTagProvider, ExistingFileHelper existingFileHelper) { + super(dataGenerator, blockTagProvider, SquidCoderMod.MOD_ID, existingFileHelper); + } + + @Override + protected void addTags() { + copy(ModTags.Blocks.ORES_SILVER, ModTags.Items.ORES_SILVER); + copy(Tags.Blocks.ORES, Tags.Items.ORES); + copy(ModTags.Blocks.STORAGE_BLOCKS_SILVER, ModTags.Items.STORAGE_BLOCKS_SILVER); + copy(Tags.Blocks.STORAGE_BLOCKS, Tags.Items.STORAGE_BLOCKS); + + tag(ModTags.Items.INGOTS_SILVER).add(ModItems.SILVER_INGOT.get()); + tag(Tags.Items.INGOTS).addTag(ModTags.Items.INGOTS_SILVER); + tag(ModTags.Items.DUSTS_SILVER).add(ModItems.SILVER_DUST.get()); + tag(Tags.Items.DUSTS).addTag(ModTags.Items.DUSTS_SILVER); + tag(ModTags.Items.NUGGETS_SILVER).add(ModItems.SILVER_NUGGET.get()); + tag(Tags.Items.NUGGETS).addTag(ModTags.Items.NUGGETS_SILVER); + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/ModLootTableProvider.java b/src/main/java/com/SquidCoder/squidcoder/data/ModLootTableProvider.java new file mode 100644 index 0000000..b9e7eab --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/ModLootTableProvider.java @@ -0,0 +1,84 @@ +package com.SquidCoder.squidcoder.data; + +import com.SquidCoder.squidcoder.setup.ModBlocks; +import com.SquidCoder.squidcoder.setup.ModItems; +import com.SquidCoder.squidcoder.setup.Registration; +import com.google.common.collect.ImmutableList; +import com.mojang.datafixers.util.Pair; +import net.minecraft.block.Block; +import net.minecraft.data.DataGenerator; +import net.minecraft.data.LootTableProvider; +import net.minecraft.data.loot.BlockLootTables; +import net.minecraft.enchantment.Enchantments; +import net.minecraft.loot.*; +import net.minecraft.loot.functions.ApplyBonus; +import net.minecraft.loot.functions.SetCount; +import net.minecraft.util.IItemProvider; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.fml.RegistryObject; + +import javax.annotation.ParametersAreNonnullByDefault; +import java.util.List; +import java.util.Map; +import java.util.function.BiConsumer; +import java.util.function.Consumer; +import java.util.function.Supplier; +import java.util.stream.Collectors; + +public class ModLootTableProvider extends LootTableProvider { + public ModLootTableProvider(DataGenerator generator) { + super(generator); + } + + @Override + protected List>>, LootParameterSet>> getTables() { + return ImmutableList.of( + Pair.of(ModBlockLootTables::new, LootParameterSets.BLOCK) + ); + } + + @Override + protected void validate(Map map, ValidationTracker validationTracker) { + map.forEach((resourceLocation, lootTable) -> LootTableManager.validate(validationTracker, resourceLocation, lootTable)); + } + + public static class ModBlockLootTables extends BlockLootTables { + @Override + protected void addTables() { + dropSelf(ModBlocks.SILVER_ORE.get()); + dropSelf(ModBlocks.SILVER_BLOCK.get()); + + dropSelf(ModBlocks.COPPER_BLOCK.get()); + dropSelf(ModBlocks.EXPOSED_COPPER.get()); + dropSelf(ModBlocks.WEATHERED_COPPER.get()); + dropSelf(ModBlocks.OXIDIZED_COPPER.get()); + dropSelf(ModBlocks.WAXED_COPPER_BLOCK.get()); + dropSelf(ModBlocks.WAXED_EXPOSED_COPPER.get()); + dropSelf(ModBlocks.WAXED_WEATHERED_COPPER.get()); + dropSelf(ModBlocks.WAXED_OXIDIZED_COPPER.get()); + + dropSelf(ModBlocks.RAW_COPPER_BLOCK.get()); + dropSelf(ModBlocks.RAW_IRON_BLOCK.get()); + dropSelf(ModBlocks.RAW_GOLD_BLOCK.get()); + dropRaw(ModBlocks.COPPER_ORE.get(), ModItems.RAW_COPPER.get(), 2, 5); + + } + + private void dropRaw(Block minedBlock, IItemProvider droppingItem, float minItemsToDrop, float maxItemsToDrop) { + add(minedBlock, createSilkTouchDispatchTable(minedBlock, applyExplosionDecay(minedBlock, ItemLootEntry + .lootTableItem(droppingItem).apply(SetCount + .setCount(RandomValueRange + .between(minItemsToDrop, maxItemsToDrop))) + .apply(ApplyBonus.addUniformBonusCount(Enchantments.BLOCK_FORTUNE))))); + + } + + @Override + @ParametersAreNonnullByDefault + protected Iterable getKnownBlocks() { + return Registration.BLOCKS.getEntries().stream() + .map(RegistryObject::get) + .collect(Collectors.toList()); + } + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/ModRecipeProvider.java b/src/main/java/com/SquidCoder/squidcoder/data/ModRecipeProvider.java new file mode 100644 index 0000000..0fbda6d --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/ModRecipeProvider.java @@ -0,0 +1,114 @@ +package com.SquidCoder.squidcoder.data; + +import com.SquidCoder.squidcoder.SquidCoderMod; +import com.SquidCoder.squidcoder.setup.ModBlocks; +import com.SquidCoder.squidcoder.setup.ModItems; +import net.minecraft.block.Block; +import net.minecraft.data.*; +import net.minecraft.item.Item; +import net.minecraft.item.Items; +import net.minecraft.item.crafting.Ingredient; +import net.minecraft.util.IItemProvider; +import net.minecraft.util.ResourceLocation; + +import java.util.ArrayList; +import java.util.List; +import java.util.function.Consumer; + +public class ModRecipeProvider extends RecipeProvider { + + final List all = new ArrayList<>(); + public ModRecipeProvider(DataGenerator generatorIn) { + super(generatorIn); + } + + + @Override + protected void buildShapelessRecipes(Consumer consumer) { + makeDecompactingRecipe(ModBlocks.COPPER_BLOCK.get(), ModItems.COPPER_INGOT.get(), "copper_block", consumer); + makeDecompactingRecipe(ModBlocks.SILVER_BLOCK.get(), ModItems.SILVER_INGOT.get(), "silver_block", consumer); + + makeDecompactingRecipe(ModBlocks.RAW_COPPER_BLOCK.get(), ModItems.RAW_COPPER.get(), "raw_copper_block", consumer); + makeDecompactingRecipe(ModBlocks.RAW_IRON_BLOCK.get(), ModItems.RAW_IRON.get(), "raw_iron_block", consumer); + makeDecompactingRecipe(ModBlocks.RAW_GOLD_BLOCK.get(), ModItems.RAW_GOLD.get(), "raw_gold_block", consumer); + + makeCompactingRecipe(ModItems.SILVER_INGOT.get(), ModBlocks.SILVER_BLOCK.get(), "silver_ingot",consumer); + makeCompactingRecipe(ModItems.SILVER_NUGGET.get(), ModItems.SILVER_INGOT.get(), "silver_nugget", consumer); + makeCompactingRecipe(ModItems.COPPER_INGOT.get(), ModBlocks.COPPER_BLOCK.get(), "copper_ingot", consumer); + + makeCompactingRecipe(ModItems.RAW_COPPER.get(), ModBlocks.RAW_COPPER_BLOCK.get(), "raw_copper", consumer); + makeCompactingRecipe(ModItems.RAW_IRON.get(), ModBlocks.RAW_IRON_BLOCK.get(), "raw_iron", consumer); + makeCompactingRecipe(ModItems.RAW_GOLD.get(), ModBlocks.RAW_GOLD_BLOCK.get(), "raw_gold", consumer); + + ShapedRecipeBuilder.shaped(ModItems.SPYGLASS.get()) + .define('c', ModItems.COPPER_INGOT.get()) + .define('a', ModItems.AMETHYST_SHARD.get()) + .pattern(" a ") + .pattern(" c ") + .pattern(" c ") + .unlockedBy("has_item", has(ModItems.AMETHYST_SHARD.get())) + .save(consumer); + + + //Melting Recipes: + + //From ore block + makeMeltingRecipesFromOre(ModBlocks.SILVER_ORE.get(), ModItems.SILVER_INGOT.get(), 0.7f, "silver_ingot", consumer); + makeMeltingRecipesFromOre(ModBlocks.COPPER_ORE.get(), ModItems.COPPER_INGOT.get(), 0.7f, "copper_ingot", consumer); + + //From raw item + makeMeltingRecipesFromItem(ModItems.RAW_COPPER.get(), ModItems.COPPER_INGOT.get(), 0.7f, "copper_ingot", consumer); + makeMeltingRecipesFromItem(ModItems.RAW_IRON.get(), Items.IRON_INGOT.getItem(), 0.7f, "iron_ingot", consumer); + makeMeltingRecipesFromItem(ModItems.RAW_GOLD.get(), Items.GOLD_INGOT.getItem(), 1f, "gold_ingot", consumer); + } + + private void makeMeltingRecipesFromItem(Item ingredient, Item result, float exp, String result_name, Consumer consumer) { + CookingRecipeBuilder.smelting(Ingredient.of(ingredient), result, exp, 200) + .unlockedBy("has_item", has(ingredient)) + .save(consumer, modId(result_name+"_from_smelting_raw")); + CookingRecipeBuilder.blasting(Ingredient.of(ingredient), result, exp, 100) + .unlockedBy("has_item", has(ingredient)) + .save(consumer, modId(result_name+"_from_blasting_raw")); + } + + private void makeMeltingRecipesFromOre(Block ingredient, Item result, float exp, String result_name, Consumer consumer) { + CookingRecipeBuilder.smelting(Ingredient.of(ingredient), result, exp, 200) + .unlockedBy("has_item", has(ingredient)) + .save(consumer, modId(result_name+"_from_smelting_ore")); + CookingRecipeBuilder.blasting(Ingredient.of(ingredient), result, exp, 100) + .unlockedBy("has_item", has(ingredient)) + .save(consumer, modId(result_name+"_from_blasting_ore")); + } + + private void makeCompactingRecipe(IItemProvider input, IItemProvider output, String storing_item, Consumer consumer){ + ShapedRecipeBuilder.shaped(output) + .define('#', input) + .pattern("###") + .pattern("###") + .pattern("###") + .unlockedBy("has_item", has(input)) + .save(consumer, modId(storing_item +"_compacting")); + } + + private void makeDecompactingRecipe(Block storageBlock, Item decompactingResult, String block_name, Consumer consumer) { + ShapelessRecipeBuilder.shapeless(decompactingResult,9) + .requires(storageBlock) + .unlockedBy("has_item", has(storageBlock)) + .save(consumer,modId(block_name + "_decompacting")); + + } + + @FunctionalInterface + public interface GeneratedRecipe { + void register(Consumer consumer); + } + + protected GeneratedRecipe register(GeneratedRecipe recipe) { + all.add(recipe); + return recipe; + } + + private ResourceLocation modId(String path) { + return new ResourceLocation(SquidCoderMod.MOD_ID, path); + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/client/ModBlockStateProvider.java b/src/main/java/com/SquidCoder/squidcoder/data/client/ModBlockStateProvider.java new file mode 100644 index 0000000..7e89253 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/client/ModBlockStateProvider.java @@ -0,0 +1,29 @@ +package com.SquidCoder.squidcoder.data.client; + +import com.SquidCoder.squidcoder.SquidCoderMod; +import com.SquidCoder.squidcoder.setup.ModBlocks; +import net.minecraft.data.DataGenerator; +import net.minecraftforge.client.model.generators.BlockStateProvider; +import net.minecraftforge.common.data.ExistingFileHelper; + +public class ModBlockStateProvider extends BlockStateProvider { + + public ModBlockStateProvider(DataGenerator gen, ExistingFileHelper exFileHelper) { + super(gen, SquidCoderMod.MOD_ID, exFileHelper); + } + + @Override + protected void registerStatesAndModels() { + simpleBlock(ModBlocks.SILVER_BLOCK.get()); + simpleBlock(ModBlocks.COPPER_BLOCK.get()); + simpleBlock(ModBlocks.EXPOSED_COPPER.get()); + simpleBlock(ModBlocks.WEATHERED_COPPER.get()); + simpleBlock(ModBlocks.OXIDIZED_COPPER.get()); + simpleBlock(ModBlocks.WAXED_COPPER_BLOCK.get()); + simpleBlock(ModBlocks.SILVER_ORE.get()); + simpleBlock(ModBlocks.COPPER_ORE.get()); + simpleBlock(ModBlocks.RAW_COPPER_BLOCK.get()); + simpleBlock(ModBlocks.RAW_GOLD_BLOCK.get()); + simpleBlock(ModBlocks.RAW_IRON_BLOCK.get()); + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/client/ModItemModelProvider.java b/src/main/java/com/SquidCoder/squidcoder/data/client/ModItemModelProvider.java new file mode 100644 index 0000000..cdd60d5 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/client/ModItemModelProvider.java @@ -0,0 +1,56 @@ +package com.SquidCoder.squidcoder.data.client; + +import com.SquidCoder.squidcoder.SquidCoderMod; +import net.minecraft.data.DataGenerator; +import net.minecraft.item.BlockItem; +import net.minecraftforge.client.model.generators.ItemModelBuilder; +import net.minecraftforge.client.model.generators.ItemModelProvider; +import net.minecraftforge.client.model.generators.ModelFile; +import net.minecraftforge.common.data.ExistingFileHelper; + +public class ModItemModelProvider extends ItemModelProvider { + public ModItemModelProvider(DataGenerator generator, ExistingFileHelper existingFileHelper) { + super(generator, SquidCoderMod.MOD_ID, existingFileHelper); + } + + @Override + protected void registerModels() { + withExistingParent("silver_block", modLoc("block/silver_block")); + + //withExistingParent("copper_block", modLoc("block/copper_block")); + + withExistingParent("waxed_copper_block", modLoc("block/waxed_copper_block")); + + withExistingParent("silver_ore", modLoc("block/silver_ore")); + withExistingParent("copper_ore", modLoc("block/copper_ore")); + withExistingParent("raw_copper_block", modLoc("block/raw_copper_block")); + withExistingParent("raw_iron_block", modLoc("block/raw_iron_block")); + withExistingParent("raw_gold_block", modLoc("block/raw_gold_block")); + + ModelFile itemGenerated = getExistingFile(mcLoc("item/generated")); + + //Ingots + builder(itemGenerated, "silver_ingot"); + builder(itemGenerated, "copper_ingot"); + + //Dusts + builder(itemGenerated, "silver_dust"); + + //Nuggets + builder(itemGenerated, "silver_nugget"); + + //Raw Ores + builder(itemGenerated, "raw_copper"); + builder(itemGenerated, "raw_iron"); + builder(itemGenerated, "raw_gold"); + + //Misc + builder(itemGenerated, "amethyst_shard"); + builder(itemGenerated, "spyglass"); + + } + + private ItemModelBuilder builder(ModelFile itemGenerated, String name) { + return getBuilder(name).parent(itemGenerated).texture("layer0", "item/" + name); + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/AllRecipeTypes.java b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/AllRecipeTypes.java new file mode 100644 index 0000000..6a3f6e3 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/AllRecipeTypes.java @@ -0,0 +1,103 @@ +package com.SquidCoder.squidcoder.data.custom.Recipes; + +import java.util.Optional; +import java.util.function.Supplier; + +import com.SquidCoder.squidcoder.SquidCoderMod; +import com.SquidCoder.squidcoder.data.custom.Recipes.ProcessingRecipeBuilder.ProcessingRecipeFactory; +import com.SquidCoder.squidcoder.data.custom.Recipes.ProcessingRecipeSerializer; +import com.SquidCoder.squidcoder.data.custom.Recipes.IRecipeTypeInfo; + +import com.SquidCoder.squidcoder.data.util.Lang; +import net.minecraft.inventory.IInventory; +import net.minecraft.item.crafting.IRecipe; +import net.minecraft.item.crafting.IRecipeSerializer; +import net.minecraft.item.crafting.IRecipeType; +import net.minecraft.item.crafting.ShapedRecipe; +import net.minecraft.item.crafting.SpecialRecipeSerializer; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.registry.Registry; +import net.minecraft.world.World; +import net.minecraftforge.event.RegistryEvent; + +public enum AllRecipeTypes implements IRecipeTypeInfo { + + SANDPAPER_POLISHING(SandPaperPolishingRecipe::new), + + ; + + private ResourceLocation id; + private Supplier> serializerSupplier; + private Supplier> typeSupplier; + private IRecipeSerializer serializer; + private IRecipeType type; + + AllRecipeTypes(Supplier> serializerSupplier, Supplier> typeSupplier) { + this.id = SquidCoderMod.asResource(Lang.asId(name())); + this.serializerSupplier = serializerSupplier; + this.typeSupplier = typeSupplier; + } + + AllRecipeTypes(Supplier> serializerSupplier, IRecipeType existingType) { + this(serializerSupplier, () -> existingType); + } + + AllRecipeTypes(Supplier> serializerSupplier) { + this.id = SquidCoderMod.asResource(Lang.asId(name())); + this.serializerSupplier = serializerSupplier; + this.typeSupplier = () -> simpleType(id); + } + + AllRecipeTypes(ProcessingRecipeFactory processingFactory) { + this(processingSerializer(processingFactory)); + } + + @Override + public ResourceLocation getId() { + return id; + } + + @SuppressWarnings("unchecked") + @Override + public > T getSerializer() { + return (T) serializer; + } + + @SuppressWarnings("unchecked") + @Override + public > T getType() { + return (T) type; + } + + public > Optional find(C inv, World world) { + return world.getRecipeManager() + .getRecipeFor(getType(), inv, world); + } + + public static void register(RegistryEvent.Register> event) { + ShapedRecipe.setCraftingSize(9, 9); + + for (AllRecipeTypes r : AllRecipeTypes.values()) { + r.serializer = r.serializerSupplier.get(); + r.type = r.typeSupplier.get(); + r.serializer.setRegistryName(r.id); + event.getRegistry() + .register(r.serializer); + } + } + + private static Supplier> processingSerializer(ProcessingRecipeFactory factory) { + return () -> new ProcessingRecipeSerializer<>(factory); + } + + public static > IRecipeType simpleType(ResourceLocation id) { + String stringId = id.toString(); + return Registry.register(Registry.RECIPE_TYPE, id, new IRecipeType() { + @Override + public String toString() { + return stringId; + } + }); + } + +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/IRecipeTypeInfo.java b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/IRecipeTypeInfo.java new file mode 100644 index 0000000..e0c514c --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/IRecipeTypeInfo.java @@ -0,0 +1,15 @@ +package com.SquidCoder.squidcoder.data.custom.Recipes; + +import net.minecraft.item.crafting.IRecipeSerializer; +import net.minecraft.item.crafting.IRecipeType; +import net.minecraft.util.ResourceLocation; + +public interface IRecipeTypeInfo { + + ResourceLocation getId(); + + > T getSerializer(); + + > T getType(); + +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/PolishingRecipeGen.java b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/PolishingRecipeGen.java new file mode 100644 index 0000000..589b849 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/PolishingRecipeGen.java @@ -0,0 +1,23 @@ +package com.SquidCoder.squidcoder.data.custom.Recipes; + +import com.SquidCoder.squidcoder.setup.ModItems; +import net.minecraft.data.DataGenerator; + +public class PolishingRecipeGen extends ProcessingRecipeGen { + + GeneratedRecipe + + ROSE_QUARTZ = create(ModItems.AMETHYST_SHARD::get, b -> b.output(ModItems.AMETHYST_SHARD.get())) + + ; + + public PolishingRecipeGen(DataGenerator p_i48262_1_) { + super(p_i48262_1_); + } + + @Override + protected AllRecipeTypes getRecipeType() { + return AllRecipeTypes.SANDPAPER_POLISHING; + } + +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingOutput.java b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingOutput.java new file mode 100644 index 0000000..22d4e4d --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingOutput.java @@ -0,0 +1,109 @@ +package com.SquidCoder.squidcoder.data.custom.Recipes; + +import java.util.Random; + +import com.SquidCoder.squidcoder.SquidCoderMod; +import com.SquidCoder.squidcoder.data.util.Pair; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import com.google.gson.JsonSyntaxException; +import com.mojang.brigadier.exceptions.CommandSyntaxException; + +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.JsonToNBT; +import net.minecraft.network.PacketBuffer; +import net.minecraft.util.JSONUtils; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.registries.ForgeRegistries; + +public class ProcessingOutput { + + public static final ProcessingOutput EMPTY = new ProcessingOutput(ItemStack.EMPTY, 1); + + private static final Random r = new Random(); + private final ItemStack stack; + private final float chance; + + private Pair compatDatagenOutput; + + public ProcessingOutput(ItemStack stack, float chance) { + this.stack = stack; + this.chance = chance; + } + + public ProcessingOutput(Pair item, float chance) { + this.stack = ItemStack.EMPTY; + this.compatDatagenOutput = item; + this.chance = chance; + } + + public ItemStack getStack() { + return stack; + } + + public float getChance() { + return chance; + } + + public ItemStack rollOutput() { + int outputAmount = stack.getCount(); + for (int roll = 0; roll < stack.getCount(); roll++) + if (r.nextFloat() > chance) + outputAmount--; + if (outputAmount == 0) + return ItemStack.EMPTY; + ItemStack out = stack.copy(); + out.setCount(outputAmount); + return out; + } + + public JsonElement serialize() { + JsonObject json = new JsonObject(); + ResourceLocation resourceLocation = compatDatagenOutput == null ? stack.getItem() + .getRegistryName() : compatDatagenOutput.getFirst(); + json.addProperty("item", resourceLocation.toString()); + int count = compatDatagenOutput == null ? stack.getCount() : compatDatagenOutput.getSecond(); + if (count != 1) + json.addProperty("count", count); + if (stack.hasTag()) + json.add("nbt", new JsonParser().parse(stack.getTag() + .toString())); + if (chance != 1) + json.addProperty("chance", chance); + return json; + } + + public static ProcessingOutput deserialize(JsonElement je) { + if (!je.isJsonObject()) + throw new JsonSyntaxException("ProcessingOutput must be a json object"); + + JsonObject json = je.getAsJsonObject(); + String itemId = JSONUtils.getAsString(json, "item"); + int count = JSONUtils.getAsInt(json, "count", 1); + float chance = JSONUtils.isValidNode(json, "chance") ? JSONUtils.getAsFloat(json, "chance") : 1; + ItemStack itemstack = new ItemStack(ForgeRegistries.ITEMS.getValue(new ResourceLocation(itemId)), count); + + if (JSONUtils.isValidNode(json, "nbt")) { + try { + JsonElement element = json.get("nbt"); + itemstack.setTag(JsonToNBT.parseTag( + element.isJsonObject() ? SquidCoderMod.GSON.toJson(element) : JSONUtils.convertToString(element, "nbt"))); + } catch (CommandSyntaxException e) { + e.printStackTrace(); + } + } + + return new ProcessingOutput(itemstack, chance); + } + + public void write(PacketBuffer buf) { + buf.writeItem(getStack()); + buf.writeFloat(getChance()); + } + + public static ProcessingOutput read(PacketBuffer buf) { + return new ProcessingOutput(buf.readItem(), buf.readFloat()); + } + +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingRecipe.java b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingRecipe.java new file mode 100644 index 0000000..9f12261 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingRecipe.java @@ -0,0 +1,194 @@ +package com.SquidCoder.squidcoder.data.custom.Recipes; + +import java.util.ArrayList; +import java.util.List; +import java.util.function.Supplier; +import java.util.stream.Collectors; + +import javax.annotation.ParametersAreNonnullByDefault; + +import com.SquidCoder.squidcoder.SquidCoderMod; +import com.SquidCoder.squidcoder.data.util.Lang; +import org.apache.logging.log4j.Logger; + +import com.google.gson.JsonObject; +import com.SquidCoder.squidcoder.data.custom.Recipes.ProcessingRecipeBuilder.ProcessingRecipeParams; + +import mcp.MethodsReturnNonnullByDefault; +import net.minecraft.inventory.IInventory; +import net.minecraft.item.ItemStack; +import net.minecraft.item.crafting.IRecipe; +import net.minecraft.item.crafting.IRecipeSerializer; +import net.minecraft.item.crafting.IRecipeType; +import net.minecraft.item.crafting.Ingredient; +import net.minecraft.network.PacketBuffer; +import net.minecraft.util.NonNullList; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.fluids.FluidStack; + +@MethodsReturnNonnullByDefault +@ParametersAreNonnullByDefault +public abstract class ProcessingRecipe implements IRecipe { + + protected ResourceLocation id; + protected NonNullList ingredients; + protected NonNullList results; + protected int processingDuration; + + private IRecipeType type; + private IRecipeSerializer serializer; + private AllRecipeTypes enumType; + private Supplier forcedResult; + + public ProcessingRecipe(AllRecipeTypes recipeType, ProcessingRecipeParams params) { + + this.forcedResult = null; + this.enumType = recipeType; + this.processingDuration = params.processingDuration; + this.serializer = recipeType.getSerializer(); + this.ingredients = params.ingredients; + this.type = recipeType.getType(); + this.results = params.results; + this.id = params.id; + + validate(Lang.asId(recipeType.name())); + } + + // Recipe type options: + + protected abstract int getMaxInputCount(); + + protected abstract int getMaxOutputCount(); + + protected boolean canRequireHeat() { + return false; + } + + protected boolean canSpecifyDuration() { + return true; + } + + protected int getMaxFluidInputCount() { + return 0; + } + + protected int getMaxFluidOutputCount() { + return 0; + } + + // + + private void validate(String recipeTypeName) { + String messageHeader = "Your custom " + recipeTypeName + " recipe (" + id.toString() + ")"; + Logger logger = SquidCoderMod.LOGGER; + int ingredientCount = ingredients.size(); + int outputCount = results.size(); + + if (ingredientCount > getMaxInputCount()) + logger.warn(messageHeader + " has more item inputs (" + ingredientCount + ") than supported (" + + getMaxInputCount() + ")."); + + if (outputCount > getMaxOutputCount()) + logger.warn(messageHeader + " has more item outputs (" + outputCount + ") than supported (" + + getMaxOutputCount() + ")."); + + if (processingDuration > 0 && !canSpecifyDuration()) + logger.warn(messageHeader + " specified a duration. Durations have no impact on this type of recipe."); + + } + + @Override + public NonNullList getIngredients() { + return ingredients; + } + + public NonNullList getRollableResults() { + return results; + } + + public List getRollableResultsAsItemStacks() { + return getRollableResults().stream() + .map(ProcessingOutput::getStack) + .collect(Collectors.toList()); + } + + public void enforceNextResult(Supplier stack) { + forcedResult = stack; + } + + public List rollResults() { + List results = new ArrayList<>(); + NonNullList rollableResults = getRollableResults(); + for (int i = 0; i < rollableResults.size(); i++) { + ProcessingOutput output = rollableResults.get(i); + ItemStack stack = i == 0 && forcedResult != null ? forcedResult.get() : output.rollOutput(); + if (!stack.isEmpty()) + results.add(stack); + } + return results; + } + + public int getProcessingDuration() { + return processingDuration; + } + + // IRecipe<> paperwork + + @Override + public ItemStack assemble(T inv) { + return getResultItem(); + } + + @Override + public boolean canCraftInDimensions(int width, int height) { + return true; + } + + @Override + public ItemStack getResultItem() { + return getRollableResults().isEmpty() ? ItemStack.EMPTY + : getRollableResults().get(0) + .getStack(); + } + + @Override + public ResourceLocation getId() { + return id; + } + + @Override + public boolean isSpecial() { + return true; + } + + @Override + public IRecipeSerializer getSerializer() { + return serializer; + } + + // Processing recipes do not show up in the recipe book + @Override + public String getGroup() { + return "processing"; + } + + @Override + public IRecipeType getType() { + return type; + } + + // Additional Data added by subtypes + + public void readAdditional(JsonObject json) {} + + public void readAdditional(PacketBuffer buffer) {} + + public void writeAdditional(JsonObject json) {} + + public void writeAdditional(PacketBuffer buffer) {} + + public AllRecipeTypes getEnumType() { + return enumType; + } + +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingRecipeBuilder.java b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingRecipeBuilder.java new file mode 100644 index 0000000..c0ef230 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingRecipeBuilder.java @@ -0,0 +1,215 @@ +package com.SquidCoder.squidcoder.data.custom.Recipes; + +import com.SquidCoder.squidcoder.data.util.Lang; +import com.SquidCoder.squidcoder.data.util.Pair; +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; +import net.minecraft.data.IFinishedRecipe; +import net.minecraft.fluid.Fluid; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.item.crafting.IRecipeSerializer; +import net.minecraft.item.crafting.Ingredient; +import net.minecraft.tags.ITag; +import net.minecraft.util.IItemProvider; +import net.minecraft.util.NonNullList; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.common.crafting.CraftingHelper; +import net.minecraftforge.common.crafting.conditions.ICondition; +import net.minecraftforge.common.crafting.conditions.ModLoadedCondition; +import net.minecraftforge.common.crafting.conditions.NotCondition; +import net.minecraftforge.fluids.FluidStack; + +import java.util.ArrayList; +import java.util.List; +import java.util.function.Consumer; + +public class ProcessingRecipeBuilder> { + + protected ProcessingRecipeFactory factory; + protected ProcessingRecipeParams params; + protected List recipeConditions; + + public ProcessingRecipeBuilder(ProcessingRecipeFactory factory, ResourceLocation recipeId) { + params = new ProcessingRecipeParams(recipeId); + recipeConditions = new ArrayList<>(); + this.factory = factory; + } + + public ProcessingRecipeBuilder withItemIngredients(Ingredient... ingredients) { + return withItemIngredients(NonNullList.of(Ingredient.EMPTY, ingredients)); + } + + public ProcessingRecipeBuilder withItemIngredients(NonNullList ingredients) { + params.ingredients = ingredients; + return this; + } + + public ProcessingRecipeBuilder withSingleItemOutput(ItemStack output) { + return withItemOutputs(new ProcessingOutput(output, 1)); + } + + public ProcessingRecipeBuilder withItemOutputs(ProcessingOutput... outputs) { + return withItemOutputs(NonNullList.of(ProcessingOutput.EMPTY, outputs)); + } + + public ProcessingRecipeBuilder withItemOutputs(NonNullList outputs) { + params.results = outputs; + return this; + } + + public ProcessingRecipeBuilder duration(int ticks) { + params.processingDuration = ticks; + return this; + } + + public ProcessingRecipeBuilder averageProcessingDuration() { + return duration(100); + } + + + public T build() { + return factory.create(params); + } + + public void build(Consumer consumer) { + consumer.accept(new DataGenResult<>(build(), recipeConditions)); + } + + // Datagen shortcuts + + public ProcessingRecipeBuilder require(ITag.INamedTag tag) { + return require(Ingredient.of(tag)); + } + + public ProcessingRecipeBuilder require(IItemProvider item) { + return require(Ingredient.of(item)); + } + + public ProcessingRecipeBuilder require(Ingredient ingredient) { + params.ingredients.add(ingredient); + return this; + } + + public ProcessingRecipeBuilder output(IItemProvider item) { + return output(item, 1); + } + + public ProcessingRecipeBuilder output(float chance, IItemProvider item) { + return output(chance, item, 1); + } + + public ProcessingRecipeBuilder output(IItemProvider item, int amount) { + return output(1, item, amount); + } + + public ProcessingRecipeBuilder output(float chance, IItemProvider item, int amount) { + return output(chance, new ItemStack(item, amount)); + } + + public ProcessingRecipeBuilder output(ItemStack output) { + return output(1, output); + } + + public ProcessingRecipeBuilder output(float chance, ItemStack output) { + params.results.add(new ProcessingOutput(output, chance)); + return this; + } + + public ProcessingRecipeBuilder output(float chance, ResourceLocation registryName, int amount) { + params.results.add(new ProcessingOutput(Pair.of(registryName, amount), chance)); + return this; + } + + // + + public ProcessingRecipeBuilder whenModLoaded(String modid) { + return withCondition(new ModLoadedCondition(modid)); + } + + public ProcessingRecipeBuilder whenModMissing(String modid) { + return withCondition(new NotCondition(new ModLoadedCondition(modid))); + } + + public ProcessingRecipeBuilder withCondition(ICondition condition) { + recipeConditions.add(condition); + return this; + } + + @FunctionalInterface + public interface ProcessingRecipeFactory> { + T create(ProcessingRecipeParams params); + } + + public static class ProcessingRecipeParams { + + ResourceLocation id; + NonNullList ingredients; + NonNullList results; + int processingDuration; + + ProcessingRecipeParams(ResourceLocation id) { + this.id = id; + ingredients = NonNullList.create(); + results = NonNullList.create(); + processingDuration = 0; + } + + } + + public static class DataGenResult> implements IFinishedRecipe { + + private final List recipeConditions; + private final ProcessingRecipeSerializer serializer; + private final ResourceLocation id; + private final S recipe; + + @SuppressWarnings("unchecked") + public DataGenResult(S recipe, List recipeConditions) { + this.recipeConditions = recipeConditions; + AllRecipeTypes recipeType = recipe.getEnumType(); + String typeName = Lang.asId(recipeType.name()); + this.recipe = recipe; + + if (!(recipeType.getSerializer() instanceof ProcessingRecipeSerializer)) + throw new IllegalStateException("Cannot datagen ProcessingRecipe of type: " + typeName); + + this.id = new ResourceLocation(recipe.getId().getNamespace(), + typeName + "/" + recipe.getId().getPath()); + this.serializer = (ProcessingRecipeSerializer) recipe.getSerializer(); + } + + @Override + public void serializeRecipeData(JsonObject json) { + serializer.write(json, recipe); + if (recipeConditions.isEmpty()) + return; + + JsonArray conds = new JsonArray(); + recipeConditions.forEach(c -> conds.add(CraftingHelper.serialize(c))); + json.add("conditions", conds); + } + + @Override + public ResourceLocation getId() { + return id; + } + + @Override + public IRecipeSerializer getType() { + return serializer; + } + + @Override + public JsonObject serializeAdvancement() { + return null; + } + + @Override + public ResourceLocation getAdvancementId() { + return null; + } + + } + +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingRecipeGen.java b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingRecipeGen.java new file mode 100644 index 0000000..568c622 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingRecipeGen.java @@ -0,0 +1,121 @@ +package com.SquidCoder.squidcoder.data.custom.Recipes; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import java.util.function.Supplier; +import java.util.function.UnaryOperator; + +import com.SquidCoder.squidcoder.data.ModRecipeProvider; +import com.SquidCoder.squidcoder.data.custom.Recipes.AllRecipeTypes; +import com.SquidCoder.squidcoder.SquidCoderMod; +import com.SquidCoder.squidcoder.data.custom.Recipes.ProcessingRecipe; +import com.SquidCoder.squidcoder.data.custom.Recipes.ProcessingRecipeBuilder; +import com.SquidCoder.squidcoder.data.custom.Recipes.ProcessingRecipeSerializer; + +import net.minecraft.data.DataGenerator; +import net.minecraft.data.DirectoryCache; +import net.minecraft.data.IDataProvider; +import net.minecraft.item.crafting.Ingredient; +import net.minecraft.util.IItemProvider; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.fluids.FluidAttributes; + +public abstract class ProcessingRecipeGen extends ModRecipeProvider { + + final List all = new ArrayList<>(); + protected static List generators = new ArrayList<>(); + protected static final int BUCKET = FluidAttributes.BUCKET_VOLUME; + protected static final int BOTTLE = 250; + + public static void registerAll(DataGenerator gen) { + generators.add(new PolishingRecipeGen(gen)); + + gen.addProvider(new IDataProvider() { + + @Override + public String getName() { + return "SquidCoder's Processing Recipes"; + } + + @Override + public void run(DirectoryCache dc) throws IOException { + generators.forEach(g -> { + try { + g.run(dc); + } catch (IOException e) { + e.printStackTrace(); + } + }); + } + }); + } + + public ProcessingRecipeGen(DataGenerator genIn) { + super(genIn); + } + + /** + * Create a processing recipe with a single itemstack ingredient, using its id + * as the name of the recipe + */ + protected > GeneratedRecipe create(String namespace, Supplier singleIngredient, + UnaryOperator> transform) { + ProcessingRecipeSerializer serializer = getSerializer(); + GeneratedRecipe generatedRecipe = c -> { + IItemProvider iItemProvider = singleIngredient.get(); + transform + .apply(new ProcessingRecipeBuilder<>(serializer.getFactory(), new ResourceLocation(namespace, iItemProvider.asItem() + .getRegistryName() + .getPath())).withItemIngredients(Ingredient.of(iItemProvider))) + .build(c); + }; + all.add(generatedRecipe); + return generatedRecipe; + } + + /** + * Create a processing recipe with a single itemstack ingredient, using its id + * as the name of the recipe + */ + protected > GeneratedRecipe create(Supplier singleIngredient, + UnaryOperator> transform) { + return create(SquidCoderMod.MOD_ID, singleIngredient, transform); + } + + /** + * Create a new processing recipe, with recipe definitions provided by the + * function + */ + protected > GeneratedRecipe create(ResourceLocation name, + UnaryOperator> transform) { + ProcessingRecipeSerializer serializer = getSerializer(); + GeneratedRecipe generatedRecipe = + c -> transform.apply(new ProcessingRecipeBuilder<>(serializer.getFactory(), name)) + .build(c); + all.add(generatedRecipe); + return generatedRecipe; + } + + /** + * Create a new processing recipe, with recipe definitions provided by the + * function + */ + protected > GeneratedRecipe create(String name, + UnaryOperator> transform) { + return create(SquidCoderMod.asResource(name), transform); + } + + protected > ProcessingRecipeSerializer getSerializer() { + ProcessingRecipeSerializer serializer = getRecipeType().getSerializer(); + return serializer; + } + + @Override + public final String getName() { + return "SquidCoder's Processing Recipes: " + getRecipeType(); + } + + protected abstract AllRecipeTypes getRecipeType(); + +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingRecipeSerializer.java b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingRecipeSerializer.java new file mode 100644 index 0000000..cb19356 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/ProcessingRecipeSerializer.java @@ -0,0 +1,127 @@ +package com.SquidCoder.squidcoder.data.custom.Recipes; + +import javax.annotation.ParametersAreNonnullByDefault; + +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.SquidCoder.squidcoder.data.custom.Recipes.ProcessingRecipeBuilder.ProcessingRecipeFactory; + +import mcp.MethodsReturnNonnullByDefault; +import net.minecraft.item.crafting.IRecipeSerializer; +import net.minecraft.item.crafting.Ingredient; +import net.minecraft.network.PacketBuffer; +import net.minecraft.util.JSONUtils; +import net.minecraft.util.NonNullList; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.registries.ForgeRegistryEntry; + +@MethodsReturnNonnullByDefault +@ParametersAreNonnullByDefault +public class ProcessingRecipeSerializer> extends ForgeRegistryEntry> + implements IRecipeSerializer { + + private final ProcessingRecipeFactory factory; + + public ProcessingRecipeSerializer(ProcessingRecipeFactory factory) { + this.factory = factory; + } + + protected void writeToJson(JsonObject json, T recipe) { + JsonArray jsonIngredients = new JsonArray(); + JsonArray jsonOutputs = new JsonArray(); + + recipe.getIngredients() + .forEach(i -> jsonIngredients.add(i.toJson())); + + recipe.getRollableResults() + .forEach(o -> jsonOutputs.add(o.serialize())); + + json.add("ingredients", jsonIngredients); + json.add("results", jsonOutputs); + + int processingDuration = recipe.getProcessingDuration(); + if (processingDuration > 0) + json.addProperty("processingTime", processingDuration); + + + recipe.writeAdditional(json); + } + + protected T readFromJson(ResourceLocation recipeId, JsonObject json) { + ProcessingRecipeBuilder builder = new ProcessingRecipeBuilder<>(factory, recipeId); + NonNullList ingredients = NonNullList.create(); + NonNullList results = NonNullList.create(); + + for (JsonElement je : JSONUtils.getAsJsonArray(json, "ingredients")) { + ingredients.add(Ingredient.fromJson(je)); + } + + for (JsonElement je : JSONUtils.getAsJsonArray(json, "results")) { + JsonObject jsonObject = je.getAsJsonObject(); + results.add(ProcessingOutput.deserialize(je)); + } + + builder.withItemIngredients(ingredients) + .withItemOutputs(results); + + if (JSONUtils.isValidNode(json, "processingTime")) + builder.duration(JSONUtils.getAsInt(json, "processingTime")); + return builder.build(); + } + + protected void writeToBuffer(PacketBuffer buffer, T recipe) { + NonNullList ingredients = recipe.getIngredients(); + NonNullList outputs = recipe.getRollableResults(); + + buffer.writeVarInt(ingredients.size()); + ingredients.forEach(i -> i.toNetwork(buffer)); + + buffer.writeVarInt(outputs.size()); + outputs.forEach(o -> o.write(buffer)); + + buffer.writeVarInt(recipe.getProcessingDuration()); + } + + protected T readFromBuffer(ResourceLocation recipeId, PacketBuffer buffer) { + NonNullList ingredients = NonNullList.create(); + NonNullList results = NonNullList.create(); + + int size = buffer.readVarInt(); + for (int i = 0; i < size; i++) + ingredients.add(Ingredient.fromNetwork(buffer)); + + size = buffer.readVarInt(); + for (int i = 0; i < size; i++) + results.add(ProcessingOutput.read(buffer)); + + return new ProcessingRecipeBuilder<>(factory, recipeId).withItemIngredients(ingredients) + .withItemOutputs(results) + .duration(buffer.readVarInt()) + .build(); + } + + public final void write(JsonObject json, T recipe) { + writeToJson(json, recipe); + } + + @Override + public final T fromJson(ResourceLocation id, JsonObject json) { + return readFromJson(id, json); + } + + @Override + public final void toNetwork(PacketBuffer buffer, T recipe) { + writeToBuffer(buffer, recipe); + } + + @Override + public final T fromNetwork(ResourceLocation id, PacketBuffer buffer) { + return readFromBuffer(id, buffer); + } + + public ProcessingRecipeFactory getFactory() { + return factory; + } + +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/SandPaperPolishingRecipe.java b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/SandPaperPolishingRecipe.java new file mode 100644 index 0000000..2ce2b53 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/custom/Recipes/SandPaperPolishingRecipe.java @@ -0,0 +1,67 @@ +package com.SquidCoder.squidcoder.data.custom.Recipes; + +import java.util.List; + +import javax.annotation.ParametersAreNonnullByDefault; + +import com.SquidCoder.squidcoder.data.custom.Recipes.ProcessingRecipeBuilder.ProcessingRecipeParams; +import com.SquidCoder.squidcoder.data.custom.Recipes.SandPaperPolishingRecipe.SandPaperInv; + +import net.minecraft.item.ItemStack; +import net.minecraft.item.crafting.IRecipe; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.World; +import net.minecraftforge.items.ItemStackHandler; +import net.minecraftforge.items.wrapper.RecipeWrapper; + +@ParametersAreNonnullByDefault +public class SandPaperPolishingRecipe extends ProcessingRecipe { + + public SandPaperPolishingRecipe(ProcessingRecipeParams params) { + super(AllRecipeTypes.SANDPAPER_POLISHING, params); + } + + @Override + public boolean matches(SandPaperInv inv, World worldIn) { + return ingredients.get(0) + .test(inv.getItem(0)); + } + + @Override + protected int getMaxInputCount() { + return 1; + } + + @Override + protected int getMaxOutputCount() { + return 1; + } + + public static boolean canPolish(World world, ItemStack stack) { + return !getMatchingRecipes(world, stack).isEmpty(); + } + + public static ItemStack applyPolish(World world, Vector3d position, ItemStack stack, ItemStack sandPaperStack) { + List> matchingRecipes = getMatchingRecipes(world, stack); + if (!matchingRecipes.isEmpty()) + return matchingRecipes.get(0) + .assemble(new SandPaperInv(stack)) + .copy(); + return stack; + } + + public static List> getMatchingRecipes(World world, ItemStack stack) { + return world.getRecipeManager() + .getRecipesFor(AllRecipeTypes.SANDPAPER_POLISHING.getType(), new SandPaperInv(stack), world); + } + + public static class SandPaperInv extends RecipeWrapper { + + public SandPaperInv(ItemStack stack) { + super(new ItemStackHandler(1)); + inv.setStackInSlot(0, stack); + } + + } + +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/custom/blocks/OxidizingBlock.java b/src/main/java/com/SquidCoder/squidcoder/data/custom/blocks/OxidizingBlock.java new file mode 100644 index 0000000..6a3a6d6 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/custom/blocks/OxidizingBlock.java @@ -0,0 +1,122 @@ +package com.SquidCoder.squidcoder.data.custom.blocks; + +import java.util.LinkedList; +import java.util.OptionalDouble; +import java.util.Random; + + +import com.SquidCoder.squidcoder.data.custom.items.SandPaperItem; +import com.SquidCoder.squidcoder.data.util.BlockHelper; +import com.SquidCoder.squidcoder.data.util.Iterate; +import com.SquidCoder.squidcoder.setup.ModParticleTypes; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.AxeItem; +import net.minecraft.item.Items; +import net.minecraft.particles.BlockParticleData; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.state.IntegerProperty; +import net.minecraft.state.StateContainer.Builder; +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.world.World; +import net.minecraft.world.server.ServerWorld; + +public class OxidizingBlock extends Block { + + public static final IntegerProperty OXIDIZATION = IntegerProperty.create("oxidization", 0, 3); + private float chance; + + public OxidizingBlock(Properties properties, float chance) { + super(properties); + this.chance = chance; + registerDefaultState(defaultBlockState().setValue(OXIDIZATION, 0)); + } + + @Override + protected void createBlockStateDefinition(Builder builder) { + super.createBlockStateDefinition(builder.add(OXIDIZATION)); + } + + @Override + public boolean isRandomlyTicking(BlockState state) { + return super.isRandomlyTicking(state) || state.getValue(OXIDIZATION) < 3; + } + + @Override + public void randomTick(BlockState state, ServerWorld worldIn, BlockPos pos, Random random) { + if (worldIn.getRandom() + .nextFloat() <= chance) { + int currentState = state.getValue(OXIDIZATION); + boolean canIncrease = false; + LinkedList neighbors = new LinkedList<>(); + for (Direction facing : Iterate.directions) { + BlockPos neighbourPos = pos.relative(facing); + if (!worldIn.isAreaLoaded(neighbourPos, 0)) + continue; + if (!worldIn.isLoaded(neighbourPos)) + continue; + BlockState neighborState = worldIn.getBlockState(neighbourPos); + if (neighborState.hasProperty(OXIDIZATION) && neighborState.getValue(OXIDIZATION) != 0) { + neighbors.add(neighborState.getValue(OXIDIZATION)); + } + if (BlockHelper.hasBlockSolidSide(neighborState, worldIn, neighbourPos, facing.getOpposite())) { + continue; + } + canIncrease = true; + } + if (canIncrease) { + OptionalDouble average = neighbors.stream() + .mapToInt(v -> v) + .average(); + if (average.orElse(3d) >= currentState) + worldIn.setBlockAndUpdate(pos, state.setValue(OXIDIZATION, Math.min(currentState + 1, 3))); + } + } + } + + @SuppressWarnings("deprecation") + @Override + public ActionResultType use(BlockState state, World worldIn, BlockPos pos, PlayerEntity player, Hand handIn, BlockRayTraceResult hit) { + if(!worldIn.isClientSide()){ + + if(player.getItemInHand(handIn).getItem() == Items.HONEYCOMB){ + System.out.println("Used a honeycomb item on copper block."); + if (!player.isCreative()) + player.getItemInHand(handIn).shrink(1); + return ActionResultType.CONSUME; + } + if (state.getValue(OXIDIZATION) > 0 && player.getItemInHand(handIn) + .getItem() instanceof AxeItem) { + if (!player.isCreative()) + player.getItemInHand(handIn) + .hurtAndBreak(1, player, p -> p.broadcastBreakEvent(p.getUsedItemHand())); + worldIn.setBlockAndUpdate(pos, state.setValue(OXIDIZATION, state.getValue(OXIDIZATION)-1)); + return ActionResultType.SUCCESS; + } + return ActionResultType.PASS; + } + return ActionResultType.FAIL; + } + + + @Override + public void animateTick(BlockState stateIn, World worldIn, BlockPos pos, Random rand) { + float chance = 0.00f; + if(chance < rand.nextFloat()) { + worldIn.addParticle(ParticleTypes.END_ROD, pos.getX() + rand.nextDouble(), + pos.getY() + 0.5D, pos.getZ() + rand.nextDouble(), + 0d,0.05d,0d); + + worldIn.addParticle(new BlockParticleData(ModParticleTypes.BLOCK, stateIn), pos.getX() + rand.nextDouble(), + pos.getY() + 0.5D, pos.getZ() + rand.nextDouble(), + 0.0D, 0.05D, 0.0D); + } + + super.animateTick(stateIn, worldIn, pos, rand); + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/custom/blocks/OxidizingBlock3.java b/src/main/java/com/SquidCoder/squidcoder/data/custom/blocks/OxidizingBlock3.java new file mode 100644 index 0000000..e86418e --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/custom/blocks/OxidizingBlock3.java @@ -0,0 +1,103 @@ +package com.SquidCoder.squidcoder.data.custom.blocks; + +import com.SquidCoder.squidcoder.setup.ModParticleTypes; +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.AxeItem; +import net.minecraft.item.Items; +import net.minecraft.particles.BlockParticleData; +import net.minecraft.particles.ParticleTypes; +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.World; +import net.minecraft.world.server.ServerWorld; + +import java.util.ArrayList; +import java.util.Random; + +public class OxidizingBlock3 extends Block { + private BlockState currentState; + private ArrayList possibleStates = new ArrayList(4); + private final float chance = 64f / 1125f; + + public OxidizingBlock3(Properties properties, float chance) { + super(properties); + } + + @Override + public boolean isRandomlyTicking(BlockState state) { + return super.isRandomlyTicking(state) || getOxiLevel(state) < 3; + } + + @SuppressWarnings("deprecation") + @Override + public ActionResultType use(BlockState state, World worldIn, BlockPos pos, PlayerEntity player, Hand handIn, BlockRayTraceResult hit) { + if(!worldIn.isClientSide()){ + + if(player.getItemInHand(handIn).getItem() == Items.HONEYCOMB){ + System.out.println("Trigger Wax Event"); + if (!player.isCreative()) + player.getItemInHand(handIn).shrink(1); + return ActionResultType.CONSUME; + } + if (getOxiLevel(state) > 0 && player.getItemInHand(handIn) + .getItem() instanceof AxeItem) { + if (!player.isCreative()) + player.getItemInHand(handIn) + .hurtAndBreak(1, player, p -> p.broadcastBreakEvent(p.getUsedItemHand())); + worldIn.setBlockAndUpdate(pos, getPreviousState(state)); + return ActionResultType.SUCCESS; + } + return ActionResultType.PASS; + } + return ActionResultType.FAIL; + } + + private int getOxiLevel(BlockState state) { + return possibleStates.indexOf(state.getBlockState()); + } + + @Override + public void animateTick(BlockState stateIn, World worldIn, BlockPos pos, Random rand) { + float chance = 0.00f; + if(chance < rand.nextFloat()) { + worldIn.addParticle(ParticleTypes.END_ROD, pos.getX() + rand.nextDouble(), + pos.getY() + 0.5D, pos.getZ() + rand.nextDouble(), + 0d,0.05d,0d); + + worldIn.addParticle(new BlockParticleData(ModParticleTypes.BLOCK, stateIn), pos.getX() + rand.nextDouble(), + pos.getY() + 0.5D, pos.getZ() + rand.nextDouble(), + 0.0D, 0.05D, 0.0D); + } + + super.animateTick(stateIn, worldIn, pos, rand); + } + + @SuppressWarnings("deprecation") + @Override + public void randomTick(BlockState stateIn, ServerWorld worldIn, BlockPos pos, Random randIn) { + if(randIn.nextFloat() > chance){ + System.out.println("Block at pos: " + pos.toShortString()+" entered pre-oxidation state."); + } + super.randomTick(stateIn, worldIn, pos, randIn); + } + + private BlockState getNextState(BlockState currentState) { + int oxidationValue = possibleStates.indexOf(currentState); + if(oxidationValue < 3){ + return possibleStates.get(oxidationValue+1); + } + return this.currentState; + } + private BlockState getPreviousState(BlockState currentState) { + int oxidationValue = possibleStates.indexOf(currentState); + if(oxidationValue > 0){ + return possibleStates.get(oxidationValue-1); + } + return this.currentState; + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/custom/items/SandPaperItem.java b/src/main/java/com/SquidCoder/squidcoder/data/custom/items/SandPaperItem.java new file mode 100644 index 0000000..2475ea2 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/custom/items/SandPaperItem.java @@ -0,0 +1,188 @@ +package com.SquidCoder.squidcoder.data.custom.items; + +import javax.annotation.ParametersAreNonnullByDefault; + +import com.SquidCoder.squidcoder.data.custom.Recipes.SandPaperPolishingRecipe; + +import com.SquidCoder.squidcoder.data.util.VecHelper; +import mcp.MethodsReturnNonnullByDefault; +import net.minecraft.enchantment.Enchantment; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.item.ItemEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.item.ItemUseContext; +import net.minecraft.item.UseAction; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.particles.ItemParticleData; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.util.ActionResult; +import net.minecraft.util.ActionResultType; +import net.minecraft.util.Hand; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockRayTraceResult; +import net.minecraft.util.math.RayTraceContext; +import net.minecraft.util.math.RayTraceResult; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.world.World; +import net.minecraftforge.common.util.FakePlayer; + +@MethodsReturnNonnullByDefault +@ParametersAreNonnullByDefault +public class SandPaperItem extends Item { + + public SandPaperItem(Properties properties) { + super(properties.durability(8)); + } + + @Override + public UseAction getUseAnimation(ItemStack stack) { + return UseAction.EAT; + } + + @Override + public ActionResultType useOn(ItemUseContext context) { + return ActionResultType.PASS; + } + + @Override + public ActionResult use(World worldIn, PlayerEntity playerIn, Hand handIn) { + ItemStack itemstack = playerIn.getItemInHand(handIn); + ActionResult FAIL = new ActionResult<>(ActionResultType.FAIL, itemstack); + + if (itemstack.getOrCreateTag() + .contains("Polishing")) { + playerIn.startUsingItem(handIn); + return new ActionResult<>(ActionResultType.PASS, itemstack); + } + + Hand otherHand = handIn == Hand.MAIN_HAND ? Hand.OFF_HAND : Hand.MAIN_HAND; + ItemStack itemInOtherHand = playerIn.getItemInHand(otherHand); + if (SandPaperPolishingRecipe.canPolish(worldIn, itemInOtherHand)) { + ItemStack item = itemInOtherHand.copy(); + ItemStack toPolish = item.split(1); + playerIn.startUsingItem(handIn); + itemstack.getOrCreateTag() + .put("Polishing", toPolish.serializeNBT()); + playerIn.setItemInHand(otherHand, item); + return new ActionResult<>(ActionResultType.SUCCESS, itemstack); + } + + RayTraceResult raytraceresult = getPlayerPOVHitResult(worldIn, playerIn, RayTraceContext.FluidMode.NONE); + if (!(raytraceresult instanceof BlockRayTraceResult)) + return FAIL; + BlockRayTraceResult ray = (BlockRayTraceResult) raytraceresult; + Vector3d hitVec = ray.getLocation(); + + AxisAlignedBB bb = new AxisAlignedBB(hitVec, hitVec).inflate(1f); + ItemEntity pickUp = null; + for (ItemEntity itemEntity : worldIn.getEntitiesOfClass(ItemEntity.class, bb)) { + if (!itemEntity.isAlive()) + continue; + if (itemEntity.position() + .distanceTo(playerIn.position()) > 3) + continue; + ItemStack stack = itemEntity.getItem(); + if (!SandPaperPolishingRecipe.canPolish(worldIn, stack)) + continue; + pickUp = itemEntity; + break; + } + + if (pickUp == null) + return FAIL; + + ItemStack item = pickUp.getItem() + .copy(); + ItemStack toPolish = item.split(1); + + playerIn.startUsingItem(handIn); + + if (!worldIn.isClientSide) { + itemstack.getOrCreateTag() + .put("Polishing", toPolish.serializeNBT()); + if (item.isEmpty()) + pickUp.remove(); + else + pickUp.setItem(item); + } + + return new ActionResult<>(ActionResultType.SUCCESS, itemstack); + } + + @Override + public boolean canApplyAtEnchantingTable(ItemStack stack, Enchantment enchantment) { + return super.canApplyAtEnchantingTable(stack, enchantment); + } + + @Override + public int getItemEnchantability(ItemStack stack) { + return 1; + } + + @Override + public ItemStack finishUsingItem(ItemStack stack, World worldIn, LivingEntity entityLiving) { + if (!(entityLiving instanceof PlayerEntity)) + return stack; + PlayerEntity player = (PlayerEntity) entityLiving; + CompoundNBT tag = stack.getOrCreateTag(); + if (tag.contains("Polishing")) { + ItemStack toPolish = ItemStack.of(tag.getCompound("Polishing")); + ItemStack polished = + SandPaperPolishingRecipe.applyPolish(worldIn, entityLiving.position(), toPolish, stack); + + if (worldIn.isClientSide) { + spawnParticles(entityLiving.getEyePosition(1) + .add(entityLiving.getLookAngle() + .scale(.5f)), + toPolish, worldIn); + return stack; + } + + if (!polished.isEmpty()) { + if (player instanceof FakePlayer) { + player.drop(polished, false, false); + } else { + player.inventory.placeItemBackInInventory(worldIn, polished); + } + } + tag.remove("Polishing"); + stack.hurtAndBreak(1, entityLiving, p -> p.broadcastBreakEvent(p.getUsedItemHand())); + } + + return stack; + } + + public static void spawnParticles(Vector3d location, ItemStack polishedStack, World world) { + for (int i = 0; i < 20; i++) { + Vector3d motion = VecHelper.offsetRandomly(Vector3d.ZERO, world.random, 1 / 8f); + world.addParticle(new ItemParticleData(ParticleTypes.ITEM, polishedStack), location.x, location.y, + location.z, motion.x, motion.y, motion.z); + } + } + + @Override + public void releaseUsing(ItemStack stack, World worldIn, LivingEntity entityLiving, int timeLeft) { + if (!(entityLiving instanceof PlayerEntity)) + return; + PlayerEntity player = (PlayerEntity) entityLiving; + CompoundNBT tag = stack.getOrCreateTag(); + if (tag.contains("Polishing")) { + ItemStack toPolish = ItemStack.of(tag.getCompound("Polishing")); + player.inventory.placeItemBackInInventory(worldIn, toPolish); + tag.remove("Polishing"); + } + } + + @Override + public int getUseDuration(ItemStack stack) { + return 32; + } + + @Override + public int getEnchantmentValue() { + return 5; + } + +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/custom/particles/GlowParticle.java b/src/main/java/com/SquidCoder/squidcoder/data/custom/particles/GlowParticle.java new file mode 100644 index 0000000..a0a8974 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/custom/particles/GlowParticle.java @@ -0,0 +1,120 @@ +package com.SquidCoder.squidcoder.data.custom.particles; + +import com.mojang.blaze3d.vertex.IVertexBuilder; +import net.minecraft.client.particle.IParticleFactory; +import net.minecraft.client.particle.IParticleRenderType; +import net.minecraft.client.particle.Particle; +import net.minecraft.client.particle.SpriteTexturedParticle; +import net.minecraft.client.renderer.ActiveRenderInfo; +import net.minecraft.client.world.ClientWorld; +import net.minecraft.particles.BasicParticleType; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; + +import javax.annotation.Nullable; +import java.awt.*; + +@OnlyIn(Dist.CLIENT) +public class GlowParticle extends SpriteTexturedParticle { + + /* + * Just like all other SpriteTexturedParticles this class is more or less copied, take a look at existing + * particles and add change some numbers around until you get what you need! + */ + + protected GlowParticle(ClientWorld worldIn, double xCoordIn, double yCoordIn, double zCoordIn, double xSpeedIn, double ySpeedIn, double zSpeedIn) { + super(worldIn, xCoordIn, yCoordIn, zCoordIn, xSpeedIn, ySpeedIn, zSpeedIn); + + float f = this.random.nextFloat() * 1.0f; + this.rCol = f; + this.gCol = f; + this.bCol = f; + + this.setSize(0.02f, 0.02f); + this.scale(this.random.nextFloat() * 1.1F); + this.xd *= (double)0.02f; + this.yd *= (double)0.02f; + this.zd *= (double)0.02f; + this.lifetime = (int)(20.0D / (Math.random() * 1.0D)); + + } + + @Override + public void tick() { + this.xo = this.x; + this.yo = this.y; + this.zo = this.z; + if (this.age++ >= this.lifetime) { + this.remove(); + } else { + this.yd -= 0.04D * (double)this.gravity; + this.move(this.xd, this.yd, this.zd); + this.xd *= 0.9800000190734863D; + this.yd *= 0.9800000190734863D; + this.zd *= 0.9800000190734863D; + if (this.onGround) { + this.xd *= 0.699999988079071D; + this.zd *= 0.699999988079071D; + } + } + + } + + @Override + public IParticleRenderType getRenderType() { + return IParticleRenderType.PARTICLE_SHEET_OPAQUE; + } + + + @OnlyIn(Dist.CLIENT) + public static class Factory implements IParticleFactory { + private final Color color; + public Factory(Color color) { + this.color = color; + } + + + @Nullable + @Override + public Particle createParticle(BasicParticleType typeIn, ClientWorld worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { + return new Particle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed) { + @Override + public void render(IVertexBuilder iVertexBuilder, ActiveRenderInfo activeRenderInfo, float v) { + + } + + @Override + public IParticleRenderType getRenderType() { + return IParticleRenderType.PARTICLE_SHEET_OPAQUE; + } + + }; + } + + } + + +} + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/java/com/SquidCoder/squidcoder/data/util/BlockHelper.java b/src/main/java/com/SquidCoder/squidcoder/data/util/BlockHelper.java new file mode 100644 index 0000000..ab9b162 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/util/BlockHelper.java @@ -0,0 +1,338 @@ +package com.SquidCoder.squidcoder.data.util; + +import java.util.function.Consumer; + +import javax.annotation.Nullable; + +import org.apache.commons.lang3.mutable.MutableInt; + +import net.minecraft.block.AbstractRailBlock; +import net.minecraft.block.BedBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SlimeBlock; +import net.minecraft.client.particle.DiggingParticle; +import net.minecraft.client.particle.ParticleManager; +import net.minecraft.client.world.ClientWorld; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.fluid.FluidState; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.nbt.CompoundNBT; +import net.minecraft.particles.ParticleTypes; +import net.minecraft.state.properties.BlockStateProperties; +import net.minecraft.state.properties.SlabType; +import net.minecraft.stats.Stats; +import net.minecraft.tags.BlockTags; +import net.minecraft.tags.FluidTags; +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.util.math.MathHelper; +import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.world.GameRules; +import net.minecraft.world.IBlockReader; +import net.minecraft.world.World; +import net.minecraft.world.chunk.Chunk; +import net.minecraft.world.chunk.ChunkSection; +import net.minecraft.world.server.ServerWorld; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; +import net.minecraftforge.common.IPlantable; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.event.world.BlockEvent; + +public class BlockHelper { + + @OnlyIn(Dist.CLIENT) + public static void addReducedDestroyEffects(BlockState state, World worldIn, BlockPos pos, + ParticleManager manager) { + if (!(worldIn instanceof ClientWorld)) + return; + ClientWorld world = (ClientWorld) worldIn; + VoxelShape voxelshape = state.getShape(world, pos); + MutableInt amtBoxes = new MutableInt(0); + voxelshape.forAllBoxes((x1, y1, z1, x2, y2, z2) -> amtBoxes.increment()); + double chance = 1d / amtBoxes.getValue(); + + voxelshape.forAllBoxes((x1, y1, z1, x2, y2, z2) -> { + double d1 = Math.min(1.0D, x2 - x1); + double d2 = Math.min(1.0D, y2 - y1); + double d3 = Math.min(1.0D, z2 - z1); + int i = Math.max(2, MathHelper.ceil(d1 / 0.25D)); + int j = Math.max(2, MathHelper.ceil(d2 / 0.25D)); + int k = Math.max(2, MathHelper.ceil(d3 / 0.25D)); + + for (int l = 0; l < i; ++l) { + for (int i1 = 0; i1 < j; ++i1) { + for (int j1 = 0; j1 < k; ++j1) { + if (world.random.nextDouble() > chance) + continue; + + double d4 = ((double) l + 0.5D) / (double) i; + double d5 = ((double) i1 + 0.5D) / (double) j; + double d6 = ((double) j1 + 0.5D) / (double) k; + double d7 = d4 * d1 + x1; + double d8 = d5 * d2 + y1; + double d9 = d6 * d3 + z1; + manager + .add((new DiggingParticle(world, (double) pos.getX() + d7, (double) pos.getY() + d8, + (double) pos.getZ() + d9, d4 - 0.5D, d5 - 0.5D, d6 - 0.5D, state)).init(pos)); + } + } + } + + }); + } + + public static BlockState setZeroAge(BlockState blockState) { + if (blockState.hasProperty(BlockStateProperties.AGE_1)) + return blockState.setValue(BlockStateProperties.AGE_1, 0); + if (blockState.hasProperty(BlockStateProperties.AGE_2)) + return blockState.setValue(BlockStateProperties.AGE_2, 0); + if (blockState.hasProperty(BlockStateProperties.AGE_3)) + return blockState.setValue(BlockStateProperties.AGE_3, 0); + if (blockState.hasProperty(BlockStateProperties.AGE_5)) + return blockState.setValue(BlockStateProperties.AGE_5, 0); + if (blockState.hasProperty(BlockStateProperties.AGE_7)) + return blockState.setValue(BlockStateProperties.AGE_7, 0); + if (blockState.hasProperty(BlockStateProperties.AGE_15)) + return blockState.setValue(BlockStateProperties.AGE_15, 0); + if (blockState.hasProperty(BlockStateProperties.AGE_25)) + return blockState.setValue(BlockStateProperties.AGE_25, 0); + if (blockState.hasProperty(BlockStateProperties.LEVEL_HONEY)) + return blockState.setValue(BlockStateProperties.LEVEL_HONEY, 0); + if (blockState.hasProperty(BlockStateProperties.HATCH)) + return blockState.setValue(BlockStateProperties.HATCH, 0); + if (blockState.hasProperty(BlockStateProperties.STAGE)) + return blockState.setValue(BlockStateProperties.STAGE, 0); + if (blockState.hasProperty(BlockStateProperties.LEVEL_CAULDRON)) + return blockState.setValue(BlockStateProperties.LEVEL_CAULDRON, 0); + if (blockState.hasProperty(BlockStateProperties.LEVEL_COMPOSTER)) + return blockState.setValue(BlockStateProperties.LEVEL_COMPOSTER, 0); + if (blockState.hasProperty(BlockStateProperties.EXTENDED)) + return blockState.setValue(BlockStateProperties.EXTENDED, false); + return blockState; + } + + public static int findAndRemoveInInventory(BlockState block, PlayerEntity player, int amount) { + int amountFound = 0; + Item required = getRequiredItem(block).getItem(); + + boolean needsTwo = block.hasProperty(BlockStateProperties.SLAB_TYPE) + && block.getValue(BlockStateProperties.SLAB_TYPE) == SlabType.DOUBLE; + + if (needsTwo) + amount *= 2; + + if (block.hasProperty(BlockStateProperties.EGGS)) + amount *= block.getValue(BlockStateProperties.EGGS); + + if (block.hasProperty(BlockStateProperties.PICKLES)) + amount *= block.getValue(BlockStateProperties.PICKLES); + + { + // Try held Item first + int preferredSlot = player.inventory.selected; + ItemStack itemstack = player.inventory.getItem(preferredSlot); + int count = itemstack.getCount(); + if (itemstack.getItem() == required && count > 0) { + int taken = Math.min(count, amount - amountFound); + player.inventory.setItem(preferredSlot, + new ItemStack(itemstack.getItem(), count - taken)); + amountFound += taken; + } + } + + // Search inventory + for (int i = 0; i < player.inventory.getContainerSize(); ++i) { + if (amountFound == amount) + break; + + ItemStack itemstack = player.inventory.getItem(i); + int count = itemstack.getCount(); + if (itemstack.getItem() == required && count > 0) { + int taken = Math.min(count, amount - amountFound); + player.inventory.setItem(i, new ItemStack(itemstack.getItem(), count - taken)); + amountFound += taken; + } + } + + if (needsTwo) { + // Give back 1 if uneven amount was removed + if (amountFound % 2 != 0) + player.inventory.add(new ItemStack(required)); + amountFound /= 2; + } + + return amountFound; + } + + public static ItemStack getRequiredItem(BlockState state) { + ItemStack itemStack = new ItemStack(state.getBlock()); + if (itemStack.getItem() == Items.FARMLAND) + itemStack = new ItemStack(Items.DIRT); + else if (itemStack.getItem() == Items.GRASS_PATH) + itemStack = new ItemStack(Items.GRASS_BLOCK); + return itemStack; + } + + public static void destroyBlock(World world, BlockPos pos, float effectChance) { + destroyBlock(world, pos, effectChance, stack -> Block.popResource(world, pos, stack)); + } + + public static void destroyBlock(World world, BlockPos pos, float effectChance, + Consumer droppedItemCallback) { + destroyBlockAs(world, pos, null, ItemStack.EMPTY, effectChance, droppedItemCallback); + } + + public static void destroyBlockAs(World world, BlockPos pos, @Nullable PlayerEntity player, ItemStack usedTool, + float effectChance, Consumer droppedItemCallback) { + FluidState fluidState = world.getFluidState(pos); + BlockState state = world.getBlockState(pos); + if (world.random.nextFloat() < effectChance) + world.levelEvent(2001, pos, Block.getId(state)); + TileEntity tileentity = state.hasTileEntity() ? world.getBlockEntity(pos) : null; + if (player != null) { + BlockEvent.BreakEvent event = new BlockEvent.BreakEvent(world, pos, state, player); + MinecraftForge.EVENT_BUS.post(event); + if (event.isCanceled()) + return; + + if (event.getExpToDrop() > 0 && world instanceof ServerWorld) + state.getBlock() + .popExperience((ServerWorld) world, pos, event.getExpToDrop()); + + usedTool.mineBlock(world, state, pos, player); + player.awardStat(Stats.BLOCK_MINED.get(state.getBlock())); + } + + if (world instanceof ServerWorld && world.getGameRules() + .getBoolean(GameRules.RULE_DOBLOCKDROPS) && !world.restoringBlockSnapshots + && (player == null || !player.isCreative())) { + for (ItemStack itemStack : Block.getDrops(state, (ServerWorld) world, pos, tileentity, player, usedTool)) + droppedItemCallback.accept(itemStack); + state.spawnAfterBreak((ServerWorld) world, pos, ItemStack.EMPTY); + } + + world.setBlockAndUpdate(pos, fluidState.createLegacyBlock()); + } + + public static boolean isSolidWall(IBlockReader reader, BlockPos fromPos, Direction toDirection) { + return hasBlockSolidSide(reader.getBlockState(fromPos.relative(toDirection)), reader, fromPos.relative(toDirection), + toDirection.getOpposite()); + } + + public static boolean noCollisionInSpace(IBlockReader reader, BlockPos pos) { + return reader.getBlockState(pos) + .getCollisionShape(reader, pos) + .isEmpty(); + } + + private static void placeRailWithoutUpdate(World world, BlockState state, BlockPos target) { + int i = target.getX() & 15; + int j = target.getY(); + int k = target.getZ() & 15; + Chunk chunk = world.getChunkAt(target); + ChunkSection chunksection = chunk.getSections()[j >> 4]; + if (chunksection == Chunk.EMPTY_SECTION) { + chunksection = new ChunkSection(j >> 4 << 4); + chunk.getSections()[j >> 4] = chunksection; + } + BlockState old = chunksection.setBlockState(i, j & 15, k, state); + chunk.markUnsaved(); + world.markAndNotifyBlock(target, chunk, old, state, 82, 512); + + world.setBlock(target, state, 82); + world.neighborChanged(target, world.getBlockState(target.below()).getBlock(), target.below()); + } + + public static void placeSchematicBlock(World world, BlockState state, BlockPos target, ItemStack stack, + @Nullable CompoundNBT data) { + // Piston + if (state.hasProperty(BlockStateProperties.EXTENDED)) + state = state.setValue(BlockStateProperties.EXTENDED, Boolean.FALSE); + if (state.hasProperty(BlockStateProperties.WATERLOGGED)) + state = state.setValue(BlockStateProperties.WATERLOGGED, Boolean.FALSE); + + if (false) { + world.setBlock(target, state, 2); + return; + } else if (state.getBlock() == Blocks.COMPOSTER) + state = Blocks.COMPOSTER.defaultBlockState(); + else if (state.getBlock() != Blocks.SEA_PICKLE && state.getBlock() instanceof IPlantable) + state = ((IPlantable) state.getBlock()).getPlant(world, target); + + if (world.dimensionType() + .ultraWarm() + && state.getFluidState() + .getType() + .is(FluidTags.WATER)) { + int i = target.getX(); + int j = target.getY(); + int k = target.getZ(); + world.playSound(null, target, SoundEvents.FIRE_EXTINGUISH, SoundCategory.BLOCKS, 0.5F, + 2.6F + (world.random.nextFloat() - world.random.nextFloat()) * 0.8F); + + for (int l = 0; l < 8; ++l) { + world.addParticle(ParticleTypes.LARGE_SMOKE, i + Math.random(), j + Math.random(), k + Math.random(), + 0.0D, 0.0D, 0.0D); + } + Block.dropResources(state, world, target); + return; + } + + if (state.getBlock() instanceof AbstractRailBlock) { + placeRailWithoutUpdate(world, state, target); + } else { + world.setBlock(target, state, 18); + } + + if (data != null) { + TileEntity tile = world.getBlockEntity(target); + if (tile != null) { + data.putInt("x", target.getX()); + data.putInt("y", target.getY()); + data.putInt("z", target.getZ()); + tile.load(tile.getBlockState(), data); + } + } + + try { + state.getBlock() + .setPlacedBy(world, target, state, null, stack); + } catch (Exception e) { + } + } + + public static double getBounceMultiplier(Block block) { + if (block instanceof SlimeBlock) + return 0.8D; + if (block instanceof BedBlock) + return 0.66 * 0.8D; + return 0; + } + + public static boolean hasBlockSolidSide(BlockState p_220056_0_, IBlockReader p_220056_1_, BlockPos p_220056_2_, + Direction p_220056_3_) { + return !p_220056_0_.is(BlockTags.LEAVES) + && Block.isFaceFull(p_220056_0_.getCollisionShape(p_220056_1_, p_220056_2_), p_220056_3_); + } + + public static boolean extinguishFire(World world, @Nullable PlayerEntity p_175719_1_, BlockPos p_175719_2_, + Direction p_175719_3_) { + p_175719_2_ = p_175719_2_.relative(p_175719_3_); + if (world.getBlockState(p_175719_2_) + .getBlock() == Blocks.FIRE) { + world.levelEvent(p_175719_1_, 1009, p_175719_2_, 0); + world.removeBlock(p_175719_2_, false); + return true; + } else { + return false; + } + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/util/Iterate.java b/src/main/java/com/SquidCoder/squidcoder/data/util/Iterate.java new file mode 100644 index 0000000..f132e67 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/util/Iterate.java @@ -0,0 +1,47 @@ +package com.SquidCoder.squidcoder.data.util; + +import java.util.Arrays; +import java.util.EnumSet; +import java.util.List; + +import net.minecraft.util.Direction; +import net.minecraft.util.Direction.Axis; +import net.minecraft.util.math.BlockPos; + +public class Iterate { + + public static final boolean[] trueAndFalse = { true, false }; + public static final int[] zeroAndOne = { 0, 1 }; + public static final int[] positiveAndNegative = { 1, -1 }; + public static final Direction[] directions = Direction.values(); + public static final Direction[] horizontalDirections = getHorizontals(); + public static final Axis[] axes = Axis.values(); + public static final EnumSet axisSet = EnumSet.allOf(Direction.Axis.class); + + private static Direction[] getHorizontals() { + Direction[] directions = new Direction[4]; + for (int i = 0; i < 4; i++) + directions[i] = Direction.from2DDataValue(i); + return directions; + } + + public static Direction[] directionsInAxis(Axis axis) { + switch (axis) { + case X: + return new Direction[] { Direction.EAST, Direction.WEST }; + case Y: + return new Direction[] { Direction.UP, Direction.DOWN }; + default: + case Z: + return new Direction[] { Direction.SOUTH, Direction.NORTH }; + } + } + + public static List hereAndBelow(BlockPos pos) { + return Arrays.asList(pos, pos.below()); + } + + public static List hereBelowAndAbove(BlockPos pos) { + return Arrays.asList(pos, pos.below(), pos.above()); + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/util/Lang.java b/src/main/java/com/SquidCoder/squidcoder/data/util/Lang.java new file mode 100644 index 0000000..c83cae3 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/util/Lang.java @@ -0,0 +1,39 @@ +package com.SquidCoder.squidcoder.data.util; + +import java.util.ArrayList; +import java.util.List; +import java.util.Locale; + +import com.SquidCoder.squidcoder.SquidCoderMod; + +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.util.text.ITextComponent; +import net.minecraft.util.text.TranslationTextComponent; + +public class Lang { + + public static TranslationTextComponent translate(String key, Object... args) { + return createTranslationTextComponent(key, args); + } + + public static TranslationTextComponent createTranslationTextComponent(String key, Object... args) { + return new TranslationTextComponent(SquidCoderMod.MOD_ID + "." + key, args); + } + + public static void sendStatus(PlayerEntity player, String key, Object... args) { + player.displayClientMessage(createTranslationTextComponent(key, args), true); + } + + public static List translatedOptions(String prefix, String... keys) { + List result = new ArrayList<>(keys.length); + for (String key : keys) + result.add(translate(prefix + "." + key)); + + return result; + } + + public static String asId(String name) { + return name.toLowerCase(Locale.ROOT); + } + +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/util/Pair.java b/src/main/java/com/SquidCoder/squidcoder/data/util/Pair.java new file mode 100644 index 0000000..e394ecd --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/util/Pair.java @@ -0,0 +1,68 @@ +package com.SquidCoder.squidcoder.data.util; + +import java.util.Objects; + +public class Pair { + + F first; + S second; + + protected Pair(F first, S second) { + this.first = first; + this.second = second; + } + + public static Pair of(F first, S second) { + return new Pair<>(first, second); + } + + public F getFirst() { + return first; + } + + public S getSecond() { + return second; + } + + public void setFirst(F first) { + this.first = first; + } + + public void setSecond(S second) { + this.second = second; + } + + public Pair copy() { + return Pair.of(first, second); + } + + @Override + public boolean equals(final Object obj) { + if (obj == this) + return true; + if (obj instanceof Pair) { + final Pair other = (Pair) obj; + return Objects.equals(first, other.first) && Objects.equals(second, other.second); + } + return false; + } + + @Override + public int hashCode() { + return (nullHash(first) * 31) ^ nullHash(second); + } + + int nullHash(Object o) { + return o == null ? 0 : o.hashCode(); + } + + @Override + public String toString() { + return "(" + first + ", " + second + ")"; + } + + public Pair swap() { + return Pair.of(second, first); + } + +} diff --git a/src/main/java/com/SquidCoder/squidcoder/data/util/VecHelper.java b/src/main/java/com/SquidCoder/squidcoder/data/util/VecHelper.java new file mode 100644 index 0000000..87e5734 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/data/util/VecHelper.java @@ -0,0 +1,253 @@ +package com.SquidCoder.squidcoder.data.util; + +import java.util.Random; + +import javax.annotation.Nullable; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.ActiveRenderInfo; +import net.minecraft.entity.Entity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.nbt.DoubleNBT; +import net.minecraft.nbt.ListNBT; +import net.minecraft.util.Direction; +import net.minecraft.util.Direction.Axis; +import net.minecraft.util.Mirror; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.MathHelper; +import net.minecraft.util.math.vector.Quaternion; +import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.util.math.vector.Vector3f; +import net.minecraft.util.math.vector.Vector3i; + +public class VecHelper { + + public static final Vector3f ZERO_3F = new Vector3f(0, 0, 0); + public static final Vector3d CENTER_OF_ORIGIN = new Vector3d(.5, .5, .5); + + public static Vector3d rotate(Vector3d vec, Vector3d rotationVec) { + return rotate(vec, rotationVec.x, rotationVec.y, rotationVec.z); + } + + public static Vector3d rotate(Vector3d vec, double xRot, double yRot, double zRot) { + return rotate(rotate(rotate(vec, xRot, Axis.X), yRot, Axis.Y), zRot, Axis.Z); + } + + public static Vector3d rotateCentered(Vector3d vec, double deg, Axis axis) { + Vector3d shift = getCenterOf(BlockPos.ZERO); + return VecHelper.rotate(vec.subtract(shift), deg, axis).add(shift); + } + + public static Vector3d rotate(Vector3d vec, double deg, Axis axis) { + if (deg == 0) + return vec; + if (vec == Vector3d.ZERO) + return vec; + + float angle = (float) (deg / 180f * Math.PI); + double sin = MathHelper.sin(angle); + double cos = MathHelper.cos(angle); + double x = vec.x; + double y = vec.y; + double z = vec.z; + + if (axis == Axis.X) + return new Vector3d(x, y * cos - z * sin, z * cos + y * sin); + if (axis == Axis.Y) + return new Vector3d(x * cos + z * sin, y, z * cos - x * sin); + if (axis == Axis.Z) + return new Vector3d(x * cos - y * sin, y * cos + x * sin, z); + return vec; + } + + public static Vector3d mirrorCentered(Vector3d vec, Mirror mirror) { + Vector3d shift = getCenterOf(BlockPos.ZERO); + return VecHelper.mirror(vec.subtract(shift), mirror).add(shift); + } + + public static Vector3d mirror(Vector3d vec, Mirror mirror) { + if (mirror == null || mirror == Mirror.NONE) + return vec; + if (vec == Vector3d.ZERO) + return vec; + + double x = vec.x; + double y = vec.y; + double z = vec.z; + + if (mirror == Mirror.LEFT_RIGHT) + return new Vector3d(x, y, -z); + if (mirror == Mirror.FRONT_BACK) + return new Vector3d(-x, y, z); + return vec; + } + + public static Vector3d lookAt(Vector3d vec, Vector3d fwd) { + fwd = fwd.normalize(); + Vector3d up = new Vector3d(0,1,0); + double dot = fwd.dot(up); + if (Math.abs(dot) > 1 - 1.0E-3) + up = new Vector3d(0, 0, dot > 0 ? 1 : -1); + Vector3d right = fwd.cross(up).normalize(); + up = right.cross(fwd).normalize(); + double x = vec.x * right.x + vec.y * up.x + vec.z * fwd.x; + double y = vec.x * right.y + vec.y * up.y + vec.z * fwd.y; + double z = vec.x * right.z + vec.y * up.z + vec.z * fwd.z; + return new Vector3d(x, y, z); + } + + public static boolean isVecPointingTowards(Vector3d vec, Direction direction) { + return Vector3d.atLowerCornerOf(direction.getNormal()) + .dot(vec.normalize()) > 0.125; // slight tolerance to activate perpendicular movement actors + } + + public static Vector3d getCenterOf(Vector3i pos) { + if (pos.equals(Vector3i.ZERO)) + return CENTER_OF_ORIGIN; + return Vector3d.atLowerCornerOf(pos) + .add(.5f, .5f, .5f); + } + + public static Vector3d offsetRandomly(Vector3d vec, Random r, float radius) { + return new Vector3d(vec.x + (r.nextFloat() - .5f) * 2 * radius, vec.y + (r.nextFloat() - .5f) * 2 * radius, + vec.z + (r.nextFloat() - .5f) * 2 * radius); + } + + public static Vector3d axisAlingedPlaneOf(Vector3d vec) { + vec = vec.normalize(); + return new Vector3d(1, 1, 1).subtract(Math.abs(vec.x), Math.abs(vec.y), Math.abs(vec.z)); + } + + public static Vector3d axisAlingedPlaneOf(Direction face) { + return axisAlingedPlaneOf(Vector3d.atLowerCornerOf(face.getNormal())); + } + + public static ListNBT writeNBT(Vector3d vec) { + ListNBT listnbt = new ListNBT(); + listnbt.add(DoubleNBT.valueOf(vec.x)); + listnbt.add(DoubleNBT.valueOf(vec.y)); + listnbt.add(DoubleNBT.valueOf(vec.z)); + return listnbt; + } + + public static Vector3d readNBT(ListNBT list) { + if (list.isEmpty()) + return Vector3d.ZERO; + return new Vector3d(list.getDouble(0), list.getDouble(1), list.getDouble(2)); + } + + public static Vector3d voxelSpace(double x, double y, double z) { + return new Vector3d(x, y, z).scale(1 / 16f); + } + + public static int getCoordinate(Vector3i pos, Axis axis) { + return axis.choose(pos.getX(), pos.getY(), pos.getZ()); + } + + public static float getCoordinate(Vector3d vec, Axis axis) { + return (float) axis.choose(vec.x, vec.y, vec.z); + } + + public static boolean onSameAxis(BlockPos pos1, BlockPos pos2, Axis axis) { + if (pos1.equals(pos2)) + return true; + for (Axis otherAxis : Axis.values()) + if (axis != otherAxis) + if (getCoordinate(pos1, otherAxis) != getCoordinate(pos2, otherAxis)) + return false; + return true; + } + + public static Vector3d clamp(Vector3d vec, float maxLength) { + return vec.length() > maxLength ? vec.normalize() + .scale(maxLength) : vec; + } + + public static Vector3d lerp(float p, Vector3d from, Vector3d to) { + return from.add(to.subtract(from) + .scale(p)); + } + + public static Vector3d clampComponentWise(Vector3d vec, float maxLength) { + return new Vector3d(MathHelper.clamp(vec.x, -maxLength, maxLength), + MathHelper.clamp(vec.y, -maxLength, maxLength), MathHelper.clamp(vec.z, -maxLength, maxLength)); + } + + public static Vector3d project(Vector3d vec, Vector3d ontoVec) { + if (ontoVec.equals(Vector3d.ZERO)) + return Vector3d.ZERO; + return ontoVec.scale(vec.dot(ontoVec) / ontoVec.lengthSqr()); + } + + @Nullable + public static Vector3d intersectSphere(Vector3d origin, Vector3d lineDirection, Vector3d sphereCenter, + double radius) { + if (lineDirection.equals(Vector3d.ZERO)) + return null; + if (lineDirection.length() != 1) + lineDirection = lineDirection.normalize(); + + Vector3d diff = origin.subtract(sphereCenter); + double lineDotDiff = lineDirection.dot(diff); + double delta = lineDotDiff * lineDotDiff - (diff.lengthSqr() - radius * radius); + if (delta < 0) + return null; + double t = -lineDotDiff + MathHelper.sqrt(delta); + return origin.add(lineDirection.scale(t)); + } + + // https://forums.minecraftforge.net/topic/88562-116solved-3d-to-2d-conversion/?do=findComment&comment=413573 slightly modified + public static Vector3d projectToPlayerView(Vector3d target, float partialTicks) { + /* + * The (centered) location on the screen of the given 3d point in the world. + * Result is (dist right of center screen, dist up from center screen, if < 0, then in front of view plane) + */ + ActiveRenderInfo ari = Minecraft.getInstance().gameRenderer.getMainCamera(); + Vector3d camera_pos = ari.getPosition(); + Quaternion camera_rotation_conj = ari.rotation() + .copy(); + camera_rotation_conj.conj(); + + Vector3f result3f = new Vector3f((float) (camera_pos.x - target.x), (float) (camera_pos.y - target.y), + (float) (camera_pos.z - target.z)); + result3f.transform(camera_rotation_conj); + + // ----- compensate for view bobbing (if active) ----- + // the following code adapted from GameRenderer::applyBobbing (to invert it) + Minecraft mc = Minecraft.getInstance(); + if (mc.options.bobView) { + Entity renderViewEntity = mc.getCameraEntity(); + if (renderViewEntity instanceof PlayerEntity) { + PlayerEntity playerentity = (PlayerEntity) renderViewEntity; + float distwalked_modified = playerentity.walkDist; + + float f = distwalked_modified - playerentity.walkDistO; + float f1 = -(distwalked_modified + f * partialTicks); + float f2 = MathHelper.lerp(partialTicks, playerentity.oBob, playerentity.bob); + Quaternion q2 = new Quaternion(Vector3f.XP, + Math.abs(MathHelper.cos(f1 * (float) Math.PI - 0.2F) * f2) * 5.0F, true); + q2.conj(); + result3f.transform(q2); + + Quaternion q1 = + new Quaternion(Vector3f.ZP, MathHelper.sin(f1 * (float) Math.PI) * f2 * 3.0F, true); + q1.conj(); + result3f.transform(q1); + + Vector3f bob_translation = new Vector3f((MathHelper.sin(f1 * (float) Math.PI) * f2 * 0.5F), + (-Math.abs(MathHelper.cos(f1 * (float) Math.PI) * f2)), 0.0f); + bob_translation.setY(-bob_translation.y()); // this is weird but hey, if it works + result3f.add(bob_translation); + } + } + + // ----- adjust for fov ----- + float fov = (float) mc.gameRenderer.getFov(ari, partialTicks, true); + + float half_height = (float) mc.getWindow() + .getGuiScaledHeight() / 2; + float scale_factor = half_height / (result3f.z() * (float) Math.tan(Math.toRadians(fov / 2))); + return new Vector3d(-result3f.x() * scale_factor, result3f.y() * scale_factor, result3f.z()); + } + +} diff --git a/src/main/java/com/SquidCoder/squidcoder/setup/ModBlocks.java b/src/main/java/com/SquidCoder/squidcoder/setup/ModBlocks.java new file mode 100644 index 0000000..e3265b5 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/setup/ModBlocks.java @@ -0,0 +1,157 @@ +package com.SquidCoder.squidcoder.setup; + +import com.SquidCoder.squidcoder.data.custom.blocks.OxidizingBlock; +import com.SquidCoder.squidcoder.data.custom.blocks.OxidizingBlock3; +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.item.BlockItem; +import net.minecraft.item.Item; +import net.minecraftforge.common.ToolType; +import net.minecraftforge.fml.RegistryObject; + +import java.util.function.Supplier; + +public class ModBlocks { + public static final RegistryObject SILVER_BLOCK = register("silver_block", () -> + new Block(AbstractBlock.Properties + .of(Material.METAL) + .strength(3, 10) + .sound(SoundType.METAL))); + + public static final RegistryObject SILVER_ORE = register("silver_ore", () -> + new Block(AbstractBlock.Properties + .of(Material.STONE) + .strength(3, 3) + .harvestLevel(2) + .harvestTool(ToolType.PICKAXE) + .requiresCorrectToolForDrops() + .sound(SoundType.STONE))); + + public static final RegistryObject COPPER_ORE = register("copper_ore", () -> + new Block(AbstractBlock.Properties + .of(Material.STONE) + .strength(3, 3) + .harvestLevel(1) + .harvestTool(ToolType.PICKAXE) + .requiresCorrectToolForDrops() + .sound(SoundType.STONE))); + + public static final RegistryObject COPPER_BLOCK = register("copper_block", () -> + new OxidizingBlock3(AbstractBlock.Properties + .of(Material.METAL) + .harvestLevel(1) + .harvestTool(ToolType.PICKAXE) + .requiresCorrectToolForDrops() + .strength(3, 6) + .sound(ModSoundType.COPPER), + 1F)); + + public static final RegistryObject EXPOSED_COPPER = register("exposed_copper", () -> + new OxidizingBlock3(AbstractBlock.Properties + .of(Material.METAL) + .harvestLevel(1) + .harvestTool(ToolType.PICKAXE) + .requiresCorrectToolForDrops() + .strength(3, 6) + .sound(ModSoundType.COPPER), + 1F)); + + public static final RegistryObject WEATHERED_COPPER = register("weathered_copper", () -> + new OxidizingBlock3(AbstractBlock.Properties + .of(Material.METAL) + .harvestLevel(1) + .harvestTool(ToolType.PICKAXE) + .requiresCorrectToolForDrops() + .strength(3, 6) + .sound(ModSoundType.COPPER), + 1F)); + + public static final RegistryObject OXIDIZED_COPPER = register("oxidized_copper", () -> + new OxidizingBlock3(AbstractBlock.Properties + .of(Material.METAL) + .harvestLevel(1) + .harvestTool(ToolType.PICKAXE) + .requiresCorrectToolForDrops() + .strength(3, 6) + .sound(ModSoundType.COPPER), + 1F)); + + public static final RegistryObject WAXED_COPPER_BLOCK = register("waxed_copper_block", () -> + new Block(AbstractBlock.Properties + .of(Material.METAL) + .harvestLevel(1) + .harvestTool(ToolType.PICKAXE) + .requiresCorrectToolForDrops() + .strength(3, 6) + .sound(ModSoundType.COPPER))); + + public static final RegistryObject WAXED_EXPOSED_COPPER = register("waxed_exposed_copper", () -> + new Block(AbstractBlock.Properties + .of(Material.METAL) + .harvestLevel(1) + .harvestTool(ToolType.PICKAXE) + .requiresCorrectToolForDrops() + .strength(3, 6) + .sound(ModSoundType.COPPER))); + + public static final RegistryObject WAXED_WEATHERED_COPPER = register("waxed_weathered_copper", () -> + new Block(AbstractBlock.Properties + .of(Material.METAL) + .harvestLevel(1) + .harvestTool(ToolType.PICKAXE) + .requiresCorrectToolForDrops() + .strength(3, 6) + .sound(ModSoundType.COPPER))); + + public static final RegistryObject WAXED_OXIDIZED_COPPER = register("waxed_oxidized_copper", () -> + new Block(AbstractBlock.Properties + .of(Material.METAL) + .harvestLevel(1) + .harvestTool(ToolType.PICKAXE) + .requiresCorrectToolForDrops() + .strength(3, 6) + .sound(ModSoundType.COPPER))); + + public static final RegistryObject RAW_COPPER_BLOCK = register("raw_copper_block", () -> + new Block(AbstractBlock.Properties + .of(Material.STONE) + .strength(5, 6) + .harvestLevel(1) + .harvestTool(ToolType.PICKAXE) + .requiresCorrectToolForDrops() + .sound(SoundType.STONE))); + + public static final RegistryObject RAW_IRON_BLOCK = register("raw_iron_block", () -> + new Block(AbstractBlock.Properties + .of(Material.STONE) + .strength(5, 6) + .harvestLevel(1) + .harvestTool(ToolType.PICKAXE) + .requiresCorrectToolForDrops() + .sound(SoundType.STONE))); + + public static final RegistryObject RAW_GOLD_BLOCK = register("raw_gold_block", () -> + new Block(AbstractBlock.Properties + .of(Material.STONE) + .strength(5, 6) + .harvestLevel(2) + .harvestTool(ToolType.PICKAXE) + .requiresCorrectToolForDrops() + .sound(SoundType.STONE))); + + + + static void register() {} + + private static RegistryObject registerNoItem(String name, Supplier block) { + return Registration.BLOCKS.register(name, block); + } + + private static RegistryObject register(String name, Supplier block) { + RegistryObject ret = registerNoItem(name, block); + Registration.ITEMS.register(name, () -> new BlockItem(ret.get(), new Item.Properties().tab(ModItemGroup.SQUIDCODER_MOD))); + return ret; + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/setup/ModItemGroup.java b/src/main/java/com/SquidCoder/squidcoder/setup/ModItemGroup.java new file mode 100644 index 0000000..8e02d44 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/setup/ModItemGroup.java @@ -0,0 +1,23 @@ +package com.SquidCoder.squidcoder.setup; + +import net.minecraft.item.ItemGroup; +import net.minecraft.item.ItemStack; + +public class ModItemGroup { + + public static final ItemGroup SQUIDCODER_MOD = new ItemGroup("squidcoder_modtab") { + + @Override + public ItemStack makeIcon() { + return new ItemStack(ModItems.SILVER_INGOT.get()); + } + }; + + public static final ItemGroup CAVES_AND_CLIFFS_BACKPORT = new ItemGroup("caves_and_cliffsModTab") { + + @Override + public ItemStack makeIcon() { + return new ItemStack(ModItems.SPYGLASS.get()); + } + }; +} diff --git a/src/main/java/com/SquidCoder/squidcoder/setup/ModItems.java b/src/main/java/com/SquidCoder/squidcoder/setup/ModItems.java new file mode 100644 index 0000000..4e6d12c --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/setup/ModItems.java @@ -0,0 +1,49 @@ +package com.SquidCoder.squidcoder.setup; + +import com.SquidCoder.squidcoder.data.custom.items.SandPaperItem; +import net.minecraft.item.Item; +import net.minecraftforge.fml.RegistryObject; + +public class ModItems { + public static final RegistryObject SILVER_INGOT = Registration.ITEMS.register("silver_ingot", () -> + new Item(new Item.Properties().tab(ModItemGroup.SQUIDCODER_MOD))); + public static final RegistryObject SILVER_DUST = Registration.ITEMS.register("silver_dust", () -> + new Item(new Item.Properties().tab(ModItemGroup.SQUIDCODER_MOD))); + public static final RegistryObject SILVER_NUGGET = Registration.ITEMS.register("silver_nugget", () -> + new Item(new Item.Properties().tab(ModItemGroup.SQUIDCODER_MOD))); + public static final RegistryObject RAW_COPPER = Registration.ITEMS.register("raw_copper", () -> + new Item(new Item.Properties().tab(ModItemGroup.SQUIDCODER_MOD))); + public static final RegistryObject RAW_IRON = Registration.ITEMS.register("raw_iron", () -> + new Item(new Item.Properties().tab(ModItemGroup.SQUIDCODER_MOD))); + public static final RegistryObject RAW_GOLD = Registration.ITEMS.register("raw_gold", () -> + new Item(new Item.Properties().tab(ModItemGroup.SQUIDCODER_MOD))); + public static final RegistryObject COPPER_INGOT = Registration.ITEMS.register("copper_ingot", () -> + new Item(new Item.Properties().tab(ModItemGroup.SQUIDCODER_MOD))); + + public static final RegistryObject SPYGLASS = Registration.ITEMS.register("spyglass", () -> + new Item(new Item.Properties().tab(ModItemGroup.SQUIDCODER_MOD))); + + public static final RegistryObject AMETHYST_SHARD = Registration.ITEMS.register("amethyst_shard", () -> + new Item(new Item.Properties().tab(ModItemGroup.SQUIDCODER_MOD))/*{ + @Override + public void appendHoverText(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { + if(Screen.hasAltDown()){ + tooltip.add(new TranslationTextComponent("tooltip.squidcoder.alt")); + } + if(Screen.hasControlDown()){ + tooltip.add(new TranslationTextComponent("tooltip.squidcoder.ctrl")); + } + if(Screen.hasShiftDown()){ + tooltip.add(new TranslationTextComponent("tooltip.squidcoder.shift")); + } + super.appendHoverText(stack, worldIn, tooltip, flagIn); + } + }*/); + + public static final RegistryObject SAND_PAPER = Registration.ITEMS.register("sand_paper", () -> + new SandPaperItem(new Item.Properties().tab(ModItemGroup.SQUIDCODER_MOD))); + public static final RegistryObject RED_SAND_PAPER = Registration.ITEMS.register("red_sand_paper", () -> + new SandPaperItem(new Item.Properties().tab(ModItemGroup.SQUIDCODER_MOD))); + + static void register() {} +} diff --git a/src/main/java/com/SquidCoder/squidcoder/setup/ModParticleTypes.java b/src/main/java/com/SquidCoder/squidcoder/setup/ModParticleTypes.java new file mode 100644 index 0000000..2c9c75a --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/setup/ModParticleTypes.java @@ -0,0 +1,12 @@ +package com.SquidCoder.squidcoder.setup; + +import net.minecraft.particles.BasicParticleType; +import net.minecraft.particles.ParticleType; +import net.minecraft.particles.ParticleTypes; +import net.minecraftforge.fml.RegistryObject; + +public class ModParticleTypes extends ParticleTypes { + public static final RegistryObject GLOW = Registration.PARTICLE_TYPE.register("glow", () -> new BasicParticleType(false)); + + static void register() {} +} diff --git a/src/main/java/com/SquidCoder/squidcoder/setup/ModSoundEvents.java b/src/main/java/com/SquidCoder/squidcoder/setup/ModSoundEvents.java new file mode 100644 index 0000000..3a43e03 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/setup/ModSoundEvents.java @@ -0,0 +1,28 @@ +package com.SquidCoder.squidcoder.setup; + +import com.SquidCoder.squidcoder.SquidCoderMod; +import com.SquidCoder.squidcoder.setup.Registration; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.SoundEvent; +import net.minecraftforge.fml.RegistryObject; + +public class ModSoundEvents { + + public static final RegistryObject COPPER_BREAK = + registerSoundEvent("block.copper.break"); + public static final RegistryObject COPPER_STEP = + registerSoundEvent("block.copper.step"); + public static final RegistryObject COPPER_PLACE = + registerSoundEvent("block.copper.place"); + public static final RegistryObject COPPER_HIT = + registerSoundEvent("block.copper.hit"); + public static final RegistryObject COPPER_FALL = + registerSoundEvent("block.copper.fall"); + + + private static RegistryObject registerSoundEvent(String name) { + return Registration.SOUND_EVENTS.register(name, () -> new SoundEvent(new ResourceLocation(SquidCoderMod.MOD_ID, name))); + } + + public static void register(){} +} diff --git a/src/main/java/com/SquidCoder/squidcoder/setup/ModSoundType.java b/src/main/java/com/SquidCoder/squidcoder/setup/ModSoundType.java new file mode 100644 index 0000000..3972d64 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/setup/ModSoundType.java @@ -0,0 +1,20 @@ +package com.SquidCoder.squidcoder.setup; + +import net.minecraft.util.SoundEvent; +import net.minecraftforge.common.util.ForgeSoundType; + +import java.util.function.Supplier; + +public class ModSoundType extends ForgeSoundType { + + public static final ForgeSoundType COPPER = new ForgeSoundType(1F,1.5F, + ModSoundEvents.COPPER_BREAK, + ModSoundEvents.COPPER_STEP, + ModSoundEvents.COPPER_PLACE, + ModSoundEvents.COPPER_HIT, + ModSoundEvents.COPPER_FALL); + + public ModSoundType(float volumeIn, float pitchIn, Supplier breakSoundIn, Supplier stepSoundIn, Supplier placeSoundIn, Supplier hitSoundIn, Supplier fallSoundIn) { + super(volumeIn, pitchIn, breakSoundIn, stepSoundIn, placeSoundIn, hitSoundIn, fallSoundIn); + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/setup/ModTags.java b/src/main/java/com/SquidCoder/squidcoder/setup/ModTags.java new file mode 100644 index 0000000..883e2f1 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/setup/ModTags.java @@ -0,0 +1,41 @@ +package com.SquidCoder.squidcoder.setup; + +import com.SquidCoder.squidcoder.SquidCoderMod; +import net.minecraft.block.Block; +import net.minecraft.item.Item; +import net.minecraft.tags.BlockTags; +import net.minecraft.tags.ITag; +import net.minecraft.tags.ItemTags; +import net.minecraft.util.ResourceLocation; + +public class ModTags { + public static final class Blocks{ + public static final ITag.INamedTag ORES_SILVER = forge("ores/silver"); + public static final ITag.INamedTag STORAGE_BLOCKS_SILVER = forge("storage_blocks/silver"); + + private static ITag.INamedTag forge(String path){ + return BlockTags.bind(new ResourceLocation("forge", path).toString()); + } + + private static ITag.INamedTag mod(String path){ + return BlockTags.bind(new ResourceLocation(SquidCoderMod.MOD_ID, path).toString()); + } + } + + public static final class Items{ + public static final ITag.INamedTag ORES_SILVER = forge("ores/silver"); + public static final ITag.INamedTag STORAGE_BLOCKS_SILVER = forge("storage_blocks/silver"); + + public static final ITag.INamedTag INGOTS_SILVER = forge("ingots/silver"); + public static final ITag.INamedTag DUSTS_SILVER = forge("dusts/silver"); + public static final ITag.INamedTag NUGGETS_SILVER = forge("nuggets/silver"); + + private static ITag.INamedTag forge(String path){ + return ItemTags.bind(new ResourceLocation("forge", path).toString()); + } + + private static ITag.INamedTag mod(String path){ + return ItemTags.bind(new ResourceLocation(SquidCoderMod.MOD_ID, path).toString()); + } + } +} diff --git a/src/main/java/com/SquidCoder/squidcoder/setup/Registration.java b/src/main/java/com/SquidCoder/squidcoder/setup/Registration.java new file mode 100644 index 0000000..de44a95 --- /dev/null +++ b/src/main/java/com/SquidCoder/squidcoder/setup/Registration.java @@ -0,0 +1,31 @@ +package com.SquidCoder.squidcoder.setup; + +import com.SquidCoder.squidcoder.SquidCoderMod; +import net.minecraft.block.Block; +import net.minecraft.item.Item; +import net.minecraft.particles.ParticleType; +import net.minecraft.util.SoundEvent; +import net.minecraftforge.eventbus.api.IEventBus; +import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; +import net.minecraftforge.registries.DeferredRegister; +import net.minecraftforge.registries.ForgeRegistries; + +public class Registration { + public static final DeferredRegister BLOCKS = DeferredRegister.create(ForgeRegistries.BLOCKS, SquidCoderMod.MOD_ID); + public static final DeferredRegister ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, SquidCoderMod.MOD_ID); + public static final DeferredRegister SOUND_EVENTS = DeferredRegister.create(ForgeRegistries.SOUND_EVENTS, SquidCoderMod.MOD_ID); + public static final DeferredRegister> PARTICLE_TYPE = DeferredRegister.create(ForgeRegistries.PARTICLE_TYPES, SquidCoderMod.MOD_ID); + + public static void register(){ + IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus(); + BLOCKS.register(modEventBus); + ITEMS.register(modEventBus); + SOUND_EVENTS.register(modEventBus); + //PARTICLE_TYPE.register(modEventBus); + + ModBlocks.register(); + ModItems.register(); + ModSoundEvents.register(); + //ModParticleTypes.register(); + } +} diff --git a/src/main/resources/META-INF/accesstransformer.cfg b/src/main/resources/META-INF/accesstransformer.cfg new file mode 100644 index 0000000..f83369d --- /dev/null +++ b/src/main/resources/META-INF/accesstransformer.cfg @@ -0,0 +1,67 @@ +public-f net.minecraft.item.AxeItem field_203176_a # STRIPABLES + + +public net.minecraft.client.network.play.ClientPlayNetHandler field_217287_m # viewDistance + +# CubeParticle +protected net.minecraft.client.particle.Particle field_228343_B_ # collidedY + +public net.minecraft.client.renderer.ItemRenderer field_175057_n # textureManager + +# Functions needed to setup a projection matrix +public net.minecraft.client.renderer.GameRenderer field_78529_t #rendererUpdateCount +public net.minecraft.client.renderer.GameRenderer func_228380_a_(Lcom/mojang/blaze3d/matrix/MatrixStack;F)V #bobViewWhenHurt +public net.minecraft.client.renderer.GameRenderer func_228383_b_(Lcom/mojang/blaze3d/matrix/MatrixStack;F)V #bobView + +# Expose fog state to the public +public com.mojang.blaze3d.platform.GlStateManager$FogState +public com.mojang.blaze3d.platform.GlStateManager field_225663_h_ #FOG +public com.mojang.blaze3d.platform.GlStateManager$BooleanState +public com.mojang.blaze3d.platform.GlStateManager$BooleanState field_179201_b #field_179201_b + +# GameRenderer +public net.minecraft.client.renderer.GameRenderer func_215311_a(Lnet/minecraft/client/renderer/ActiveRenderInfo;FZ)D #getFOVModifier + +# FirstPersonRenderer +public net.minecraft.client.renderer.FirstPersonRenderer field_187467_d # itemStackMainHand +public net.minecraft.client.renderer.FirstPersonRenderer field_187468_e # itemStackOffHand + +# EntityRendererManager +public net.minecraft.client.renderer.entity.EntityRendererManager field_178637_m # playerRenderer + +# IResizeCallback +public net.minecraft.util.palette.IResizeCallback + +# Entity +public net.minecraft.entity.Entity func_205011_p()V # updateAquatics +public net.minecraft.entity.Entity field_70122_E #onGround + +# For uploading matrices as vertex attributes. +public net.minecraft.util.math.vector.Matrix3f field_226097_a_ #a00 +public net.minecraft.util.math.vector.Matrix3f field_226098_b_ #a01 +public net.minecraft.util.math.vector.Matrix3f field_226099_c_ #a02 +public net.minecraft.util.math.vector.Matrix3f field_226100_d_ #a10 +public net.minecraft.util.math.vector.Matrix3f field_226101_e_ #a11 +public net.minecraft.util.math.vector.Matrix3f field_226102_f_ #a12 +public net.minecraft.util.math.vector.Matrix3f field_226103_g_ #a20 +public net.minecraft.util.math.vector.Matrix3f field_226104_h_ #a21 +public net.minecraft.util.math.vector.Matrix3f field_226105_i_ #a22 + +public net.minecraft.util.math.vector.Matrix4f field_226575_a_ #a00 +public net.minecraft.util.math.vector.Matrix4f field_226576_b_ #a01 +public net.minecraft.util.math.vector.Matrix4f field_226577_c_ #a02 +public net.minecraft.util.math.vector.Matrix4f field_226578_d_ #a03 +public net.minecraft.util.math.vector.Matrix4f field_226579_e_ #a10 +public net.minecraft.util.math.vector.Matrix4f field_226580_f_ #a11 +public net.minecraft.util.math.vector.Matrix4f field_226581_g_ #a12 +public net.minecraft.util.math.vector.Matrix4f field_226582_h_ #a13 +public net.minecraft.util.math.vector.Matrix4f field_226583_i_ #a20 +public net.minecraft.util.math.vector.Matrix4f field_226584_j_ #a21 +public net.minecraft.util.math.vector.Matrix4f field_226585_k_ #a22 +public net.minecraft.util.math.vector.Matrix4f field_226586_l_ #a23 +public net.minecraft.util.math.vector.Matrix4f field_226587_m_ #a30 +public net.minecraft.util.math.vector.Matrix4f field_226588_n_ #a31 +public net.minecraft.util.math.vector.Matrix4f field_226589_o_ #a32 +public net.minecraft.util.math.vector.Matrix4f field_226590_p_ #a33 + +public net.minecraft.client.renderer.WorldRenderer field_228407_B_ #blockBreakingProgressions diff --git a/src/main/resources/META-INF/mods.toml b/src/main/resources/META-INF/mods.toml new file mode 100644 index 0000000..4a3da0e --- /dev/null +++ b/src/main/resources/META-INF/mods.toml @@ -0,0 +1,38 @@ +modLoader="javafml" +loaderVersion="[36,)" +license="All rights reserved" +#issueTrackerURL="https://change.me.to.your.issue.tracker.example.invalid/" +# A list of mods - how many allowed here is determined by the individual mod loader +[[mods]] + # The modid of the mod + modId="squidcoder" + version="${file.jarVersion}" + displayName="The SquidCoder Mod" + #See the JSON update specification https://mcforge.readthedocs.io/en/latest/gettingstarted/autoupdate/ + #updateJSONURL="https://change.me.example.invalid/updates.json" + #displayURL="https://change.me.to.your.mods.homepage.example.invalid/" + logoFile="SquidCoderLogo.png" + credits="Thanks for the tutorials SilentChaos512 & Kaupenjoe :) " + authors="SquidCoder" + description='''This is a mod that I am messing around with. It is currently being used to attempt to backport Minecraft 1.17 into 1.16. I have too much time on my hands...''' + +# A dependency - use the . to indicate dependency for a specific modid. Dependencies are optional. +[[dependencies.squidcoder]] + # the modid of the dependency + modId="forge" + # Does this dependency have to exist - if not, ordering below must be specified + mandatory=true + # The version range of the dependency + versionRange="[36,)" + # 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.squidcoder]] + 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)" #Mod written with 1.16.5 in mind, but 16.4 and 16.5 are the same where it matters + ordering="NONE" + side="BOTH" diff --git a/src/main/resources/assets/minecraft/sounds.json b/src/main/resources/assets/minecraft/sounds.json new file mode 100644 index 0000000..12ee03b --- /dev/null +++ b/src/main/resources/assets/minecraft/sounds.json @@ -0,0 +1,114 @@ +{ + "music.game": { + "sounds": [ + { + "name": "music/game/calm1", + "stream": true + }, + { + "name": "music/game/calm2", + "stream": true + }, + { + "name": "music/game/calm3", + "stream": true + }, + { + "name": "squidcoder:music/game/comforting_memories", + "stream": true, + "volume": 0.4 + }, + { + "name": "squidcoder:music/game/floating_dream", + "stream": true, + "volume": 0.4 + }, + { + "name": "music/game/hal1", + "stream": true + }, + { + "name": "music/game/hal2", + "stream": true + }, + { + "name": "music/game/hal3", + "stream": true + }, + { + "name": "music/game/hal4", + "stream": true + }, + { + "name": "squidcoder:music/game/left_to_bloom", + "stream": true, + "volume": 0.4 + }, + { + "name": "music/game/nuance1", + "stream": true + }, + { + "name": "music/game/nuance2", + "stream": true + }, + { + "name": "squidcoder:music/game/one_more_day", + "stream": true, + "volume": 0.4 + }, + { + "name": "music/game/piano1", + "stream": true + }, + { + "name": "music/game/piano2", + "stream": true + }, + { + "name": "music/game/piano3", + "stream": true + } + ] + }, + "music.menu": { + "sounds": [ + { + "name": "squidcoder:music/game/infinite_amethyst", + "stream": true + }, + { + "name": "squidcoder:music/game/left_to_bloom", + "stream": true + }, + { + "name": "squidcoder:music/game/one_more_day", + "stream": true + }, + { + "name": "squidcoder:music/game/stand_tall", + "stream": true + }, + { + "name": "squidcoder:music/game/wending", + "stream": true + }, + { + "name": "music/menu/menu1", + "stream": true + }, + { + "name": "music/menu/menu2", + "stream": true + }, + { + "name": "music/menu/menu3", + "stream": true + }, + { + "name": "music/menu/menu4", + "stream": true + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/minecraft/textures/block/coal_ore.png b/src/main/resources/assets/minecraft/textures/block/coal_ore.png new file mode 100644 index 0000000..2a21d2b Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/block/coal_ore.png differ diff --git a/src/main/resources/assets/minecraft/textures/block/diamond_ore.png b/src/main/resources/assets/minecraft/textures/block/diamond_ore.png new file mode 100644 index 0000000..5182e1c Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/block/diamond_ore.png differ diff --git a/src/main/resources/assets/minecraft/textures/block/emerald_ore.png b/src/main/resources/assets/minecraft/textures/block/emerald_ore.png new file mode 100644 index 0000000..425191c Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/block/emerald_ore.png differ diff --git a/src/main/resources/assets/minecraft/textures/block/gold_ore.png b/src/main/resources/assets/minecraft/textures/block/gold_ore.png new file mode 100644 index 0000000..e4a8d00 Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/block/gold_ore.png differ diff --git a/src/main/resources/assets/minecraft/textures/block/iron_ore.png b/src/main/resources/assets/minecraft/textures/block/iron_ore.png new file mode 100644 index 0000000..8fa6857 Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/block/iron_ore.png differ diff --git a/src/main/resources/assets/minecraft/textures/block/lapis_ore.png b/src/main/resources/assets/minecraft/textures/block/lapis_ore.png new file mode 100644 index 0000000..7b537e1 Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/block/lapis_ore.png differ diff --git a/src/main/resources/assets/minecraft/textures/block/redstone_ore.png b/src/main/resources/assets/minecraft/textures/block/redstone_ore.png new file mode 100644 index 0000000..b708697 Binary files /dev/null and b/src/main/resources/assets/minecraft/textures/block/redstone_ore.png differ diff --git a/src/main/resources/assets/squidcoder/lang/en_pt.json b/src/main/resources/assets/squidcoder/lang/en_pt.json new file mode 100644 index 0000000..6aea6c5 --- /dev/null +++ b/src/main/resources/assets/squidcoder/lang/en_pt.json @@ -0,0 +1,16 @@ +{ + "block.squidcoder.silver_block": "Block o' Silver", + "block.squidcoder.silver_ore": "Silver Ore", + "block.squidcoder.copper_block": "Block o' Copper", + "block.squidcoder.copper_ore": "Copper Ore", + "block.squidcoder.dummy_block": "Arrgh matey! You ain't supposed to be havin' that thar block.", + + "item.squidcoder.silver_ingot": "Silver Bullion", + "item.squidcoder.silver_dust": "Silver Dust", + "item.squidcoder.silver_nugget": "Nugget o' Silver", + "item.squidcoder.copper_ingot": "Copper Bullion", + "item.squidcoder.raw_iron": "Raw Iron", + "item.squidcoder.raw_gold": "Raw Gold", + + "itemGroup.squidcoderModTab": "The SquidCoder Mod" +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/lang/en_us.json b/src/main/resources/assets/squidcoder/lang/en_us.json new file mode 100644 index 0000000..86bf8d8 --- /dev/null +++ b/src/main/resources/assets/squidcoder/lang/en_us.json @@ -0,0 +1,32 @@ +{ + "block.squidcoder.silver_block": "Block of Silver", + + "block.squidcoder.copper_block": "Block of Copper", + "block.squidcoder.exposed_copper": "Exposed Copper", + "block.squidcoder.weathered_copper": "Weathered Copper", + "block.squidcoder.oxidized_copper": "Oxidized Copper", + + "block.squidcoder.waxed_copper_block": "Waxed Block of Copper", + "block.squidcoder.waxed_exposed_copper": "Waxed Exposed Copper", + "block.squidcoder.waxed_weathered_copper": "Waxed Weathered Copper", + "block.squidcoder.waxed_oxidized_copper": "Waxed Oxidized Copper", + + "block.squidcoder.silver_ore": "Silver Ore", + "block.squidcoder.copper_ore": "Copper Ore", + "block.squidcoder.dummy_block": "This block shouldn't be in the full release, how did you get it?", + "item.squidcoder.silver_ingot": "Silver Ingot", + "item.squidcoder.copper_ingot": "Copper Ingot", + "item.squidcoder.raw_iron": "Raw Iron", + "item.squidcoder.raw_gold": "Raw Gold", + "item.squidcoder.raw_copper": "Raw Copper", + "item.squidcoder.raw_iron_block": "Block of Raw Iron", + "item.squidcoder.raw_gold_block": "Block of Raw Gold", + "item.squidcoder.raw_copper_block": "Block of Raw Copper", + "item.squidcoder.silver_dust": "Silver Dust", + "item.squidcoder.silver_nugget": "Silver Nugget", + "item.squidcoder.amethyst_shard": "Amethyst Shard", + "item.squidcoder.lightning_rod": "Lightning Rod", + "item.squidcoder.spyglass": "Spyglass", + "itemGroup.squidcoder_modtab": "The SquidCoder Mod", + "itemGroup.caves_and_cliffs_modtab": "Caves & Cliffs Backport" +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/particles/dripping_dripstone_lava.json b/src/main/resources/assets/squidcoder/particles/dripping_dripstone_lava.json new file mode 100644 index 0000000..17f53bf --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/dripping_dripstone_lava.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "minecraft:drip_hang" + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/particles/dripping_dripstone_water.json b/src/main/resources/assets/squidcoder/particles/dripping_dripstone_water.json new file mode 100644 index 0000000..17f53bf --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/dripping_dripstone_water.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "minecraft:drip_hang" + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/particles/electric_spark.json b/src/main/resources/assets/squidcoder/particles/electric_spark.json new file mode 100644 index 0000000..a7d73b4 --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/electric_spark.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "squidcoder:glow" + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/particles/falling_dripstone_lava.json b/src/main/resources/assets/squidcoder/particles/falling_dripstone_lava.json new file mode 100644 index 0000000..4c396ae --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/falling_dripstone_lava.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "minecraft:drip_fall" + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/particles/falling_dripstone_water.json b/src/main/resources/assets/squidcoder/particles/falling_dripstone_water.json new file mode 100644 index 0000000..4c396ae --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/falling_dripstone_water.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "minecraft:drip_fall" + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/particles/falling_spore_blossom.json b/src/main/resources/assets/squidcoder/particles/falling_spore_blossom.json new file mode 100644 index 0000000..4c396ae --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/falling_spore_blossom.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "minecraft:drip_fall" + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/particles/glow.json b/src/main/resources/assets/squidcoder/particles/glow.json new file mode 100644 index 0000000..a7d73b4 --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/glow.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "squidcoder:glow" + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/particles/glow_squid_ink.json b/src/main/resources/assets/squidcoder/particles/glow_squid_ink.json new file mode 100644 index 0000000..2712610 --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/glow_squid_ink.json @@ -0,0 +1,12 @@ +{ + "textures": [ + "minecraft:generic_7", + "minecraft:generic_6", + "minecraft:generic_5", + "minecraft:generic_4", + "minecraft:generic_3", + "minecraft:generic_2", + "minecraft:generic_1", + "minecraft:generic_0" + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/particles/scrape.json b/src/main/resources/assets/squidcoder/particles/scrape.json new file mode 100644 index 0000000..a7d73b4 --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/scrape.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "squidcoder:glow" + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/particles/small_flame.json b/src/main/resources/assets/squidcoder/particles/small_flame.json new file mode 100644 index 0000000..11b813d --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/small_flame.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "minecraft:flame" + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/particles/snowflake.json b/src/main/resources/assets/squidcoder/particles/snowflake.json new file mode 100644 index 0000000..e0996e0 --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/snowflake.json @@ -0,0 +1,12 @@ +{ + "textures": [ + "minecraft:generic_7", + "minecraft:generic_6", + "minecraft:generic_5", + "minecraft:generic_4", + "minecraft:generic_3", + "minecraft:generic_2", + "minecraft:generic_1", + "minecraft:generic_0" + ] +} diff --git a/src/main/resources/assets/squidcoder/particles/spore_blossom_air.json b/src/main/resources/assets/squidcoder/particles/spore_blossom_air.json new file mode 100644 index 0000000..4c396ae --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/spore_blossom_air.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "minecraft:drip_fall" + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/particles/wax_off.json b/src/main/resources/assets/squidcoder/particles/wax_off.json new file mode 100644 index 0000000..a7d73b4 --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/wax_off.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "squidcoder:glow" + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/particles/wax_on.json b/src/main/resources/assets/squidcoder/particles/wax_on.json new file mode 100644 index 0000000..a7d73b4 --- /dev/null +++ b/src/main/resources/assets/squidcoder/particles/wax_on.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "squidcoder:glow" + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/sounds.json b/src/main/resources/assets/squidcoder/sounds.json new file mode 100644 index 0000000..02f3f81 --- /dev/null +++ b/src/main/resources/assets/squidcoder/sounds.json @@ -0,0 +1,4441 @@ +{ + "block.amethyst_block.break": { + "sounds": [ + { + "name": "squidcoder:block/amethyst/break1", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/break2", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/break3", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/break4", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.amethyst_block.chime": { + "sounds": [ + { + "name": "squidcoder:block/amethyst/shimmer", + "volume": 0.2 + } + ], + "subtitle": "subtitles.block.amethyst_block.chime" + }, + "block.amethyst_block.fall": { + "sounds": [ + { + "name": "squidcoder:block/amethyst/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step6", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step7", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step8", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step9", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step10", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step11", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step12", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step14", + "volume": 1 + } + ] + }, + "block.amethyst_block.hit": { + "sounds": [ + { + "name": "squidcoder:block/amethyst/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step6", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step7", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step8", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step9", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step10", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step11", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step12", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.amethyst_block.place": { + "sounds": [ + { + "name": "squidcoder:block/amethyst/place1", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/place2", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/place3", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/place4", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.amethyst_block.step": { + "sounds": [ + { + "name": "squidcoder:block/amethyst/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step6", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step7", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step8", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step9", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step10", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step11", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step12", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step13", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step14", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.amethyst_cluster.break": { + "sounds": [ + { + "name": "squidcoder:block/amethyst_cluster/break1", + "pitch": 0.8, + "volume": 0.8 + }, + { + "name": "squidcoder:block/amethyst_cluster/break2", + "pitch": 0.8, + "volume": 0.8 + }, + { + "name": "squidcoder:block/amethyst_cluster/break3", + "pitch": 0.8, + "volume": 0.8 + }, + { + "name": "squidcoder:block/amethyst_cluster/break4", + "pitch": 0.8, + "volume": 0.8 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.amethyst_cluster.fall": { + "sounds": [ + { + "name": "squidcoder:block/amethyst/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step6", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step7", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step8", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step9", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step10", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step11", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step12", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step14", + "volume": 1 + } + ] + }, + "block.amethyst_cluster.hit": { + "sounds": [ + { + "name": "squidcoder:block/amethyst/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step6", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step7", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step8", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step9", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step10", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step11", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step12", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.amethyst_cluster.place": { + "sounds": [ + { + "name": "squidcoder:block/amethyst_cluster/place1", + "volume": 0.9 + }, + { + "name": "squidcoder:block/amethyst_cluster/place2", + "volume": 0.9 + }, + { + "name": "squidcoder:block/amethyst_cluster/place3", + "volume": 0.9 + }, + { + "name": "squidcoder:block/amethyst_cluster/place4", + "volume": 0.9 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.amethyst_cluster.step": { + "sounds": [ + { + "name": "squidcoder:block/amethyst/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step6", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step7", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step8", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step9", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step10", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step11", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step12", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step13", + "volume": 1 + }, + { + "name": "squidcoder:block/amethyst/step14", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.azalea.break": { + "sounds": [ + "squidcoder:block/azalea/break1", + "squidcoder:block/azalea/break2", + "squidcoder:block/azalea/break3", + "squidcoder:block/azalea/break4", + "squidcoder:block/azalea/break5", + "squidcoder:block/azalea/break6" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.azalea.fall": { + "sounds": [ + "squidcoder:block/azalea/step1", + "squidcoder:block/azalea/step2", + "squidcoder:block/azalea/step3", + "squidcoder:block/azalea/step4", + "squidcoder:block/azalea/step5", + "squidcoder:block/azalea/step6" + ] + }, + "block.azalea.hit": { + "sounds": [ + "squidcoder:block/azalea/step1", + "squidcoder:block/azalea/step2", + "squidcoder:block/azalea/step3", + "squidcoder:block/azalea/step4", + "squidcoder:block/azalea/step5", + "squidcoder:block/azalea/step6" + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.azalea.place": { + "sounds": [ + "squidcoder:block/azalea/break1", + "squidcoder:block/azalea/break2", + "squidcoder:block/azalea/break3", + "squidcoder:block/azalea/break4", + "squidcoder:block/azalea/break5", + "squidcoder:block/azalea/break6" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.azalea.step": { + "sounds": [ + "squidcoder:block/azalea/step1", + "squidcoder:block/azalea/step2", + "squidcoder:block/azalea/step3", + "squidcoder:block/azalea/step4", + "squidcoder:block/azalea/step5", + "squidcoder:block/azalea/step6" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.azalea_leaves.break": { + "sounds": [ + { + "name": "squidcoder:block/azalea_leaves/break1", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break2", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break3", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break4", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break5", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break6", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break7", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break1", + "volume": 0.85, + "pitch": 0.92 + }, + { + "name": "squidcoder:block/azalea_leaves/break2", + "volume": 0.85, + "pitch": 0.92 + }, + { + "name": "squidcoder:block/azalea_leaves/break3", + "volume": 0.85, + "pitch": 0.92 + }, + { + "name": "squidcoder:block/azalea_leaves/break4", + "volume": 0.85, + "pitch": 0.92 + }, + { + "name": "squidcoder:block/azalea_leaves/break5", + "volume": 0.85, + "pitch": 0.92 + }, + { + "name": "squidcoder:block/azalea_leaves/break6", + "volume": 0.85, + "pitch": 0.92 + }, + { + "name": "squidcoder:block/azalea_leaves/break7", + "volume": 0.85, + "pitch": 0.92 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.azalea_leaves.fall": { + "sounds": [ + "squidcoder:block/azalea_leaves/step1", + "squidcoder:block/azalea_leaves/step2", + "squidcoder:block/azalea_leaves/step3", + "squidcoder:block/azalea_leaves/step4", + "squidcoder:block/azalea_leaves/step5" + ] + }, + "block.azalea_leaves.hit": { + "sounds": [ + { + "name": "squidcoder:block/azalea_leaves/step1", + "volume": 0.8 + }, + { + "name": "squidcoder:block/azalea_leaves/step2", + "volume": 0.8 + }, + { + "name": "squidcoder:block/azalea_leaves/step3", + "volume": 0.8 + }, + { + "name": "squidcoder:block/azalea_leaves/step4", + "volume": 0.8 + }, + { + "name": "squidcoder:block/azalea_leaves/step5", + "volume": 0.8 + } + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.azalea_leaves.place": { + "sounds": [ + { + "name": "squidcoder:block/azalea_leaves/break1", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break2", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break3", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break4", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break5", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break6", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break7", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/break1", + "volume": 0.85, + "pitch": 0.92 + }, + { + "name": "squidcoder:block/azalea_leaves/break2", + "volume": 0.85, + "pitch": 0.92 + }, + { + "name": "squidcoder:block/azalea_leaves/break3", + "volume": 0.85, + "pitch": 0.92 + }, + { + "name": "squidcoder:block/azalea_leaves/break4", + "volume": 0.85, + "pitch": 0.92 + }, + { + "name": "squidcoder:block/azalea_leaves/break5", + "volume": 0.85, + "pitch": 0.92 + }, + { + "name": "squidcoder:block/azalea_leaves/break6", + "volume": 0.85, + "pitch": 0.92 + }, + { + "name": "squidcoder:block/azalea_leaves/break7", + "volume": 0.85, + "pitch": 0.92 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.azalea_leaves.step": { + "sounds": [ + { + "name": "squidcoder:block/azalea_leaves/step1", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/step2", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/step3", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/step4", + "volume": 0.85 + }, + { + "name": "squidcoder:block/azalea_leaves/step5", + "volume": 0.85 + } + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.big_dripleaf.break": { + "sounds": [ + "squidcoder:block/big_dripleaf/break1", + "squidcoder:block/big_dripleaf/break2", + "squidcoder:block/big_dripleaf/break3", + "squidcoder:block/big_dripleaf/break4", + "squidcoder:block/big_dripleaf/break5", + "squidcoder:block/big_dripleaf/break6" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.big_dripleaf.fall": { + "sounds": [ + "squidcoder:block/big_dripleaf/step1", + "squidcoder:block/big_dripleaf/step2", + "squidcoder:block/big_dripleaf/step3", + "squidcoder:block/big_dripleaf/step4", + "squidcoder:block/big_dripleaf/step5", + "squidcoder:block/big_dripleaf/step6" + ] + }, + "block.big_dripleaf.hit": { + "sounds": [ + "squidcoder:block/big_dripleaf/step1", + "squidcoder:block/big_dripleaf/step2", + "squidcoder:block/big_dripleaf/step3", + "squidcoder:block/big_dripleaf/step4", + "squidcoder:block/big_dripleaf/step5", + "squidcoder:block/big_dripleaf/step6" + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.big_dripleaf.place": { + "sounds": [ + "squidcoder:block/big_dripleaf/break1", + "squidcoder:block/big_dripleaf/break2", + "squidcoder:block/big_dripleaf/break3", + "squidcoder:block/big_dripleaf/break4", + "squidcoder:block/big_dripleaf/break5", + "squidcoder:block/big_dripleaf/break6" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.big_dripleaf.step": { + "sounds": [ + "squidcoder:block/big_dripleaf/step1", + "squidcoder:block/big_dripleaf/step2", + "squidcoder:block/big_dripleaf/step3", + "squidcoder:block/big_dripleaf/step4", + "squidcoder:block/big_dripleaf/step5", + "squidcoder:block/big_dripleaf/step6" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.big_dripleaf.tilt_down": { + "sounds": [ + "squidcoder:block/big_dripleaf/tilt_down1", + "squidcoder:block/big_dripleaf/tilt_down2", + "squidcoder:block/big_dripleaf/tilt_down3", + "squidcoder:block/big_dripleaf/tilt_down4", + "squidcoder:block/big_dripleaf/tilt_down5" + ], + "subtitle": "subtitles.block.big_dripleaf.tilt_down" + }, + "block.big_dripleaf.tilt_up": { + "sounds": [ + "squidcoder:block/big_dripleaf/tilt_up1", + "squidcoder:block/big_dripleaf/tilt_up2", + "squidcoder:block/big_dripleaf/tilt_up3", + "squidcoder:block/big_dripleaf/tilt_up4" + ], + "subtitle": "subtitles.block.big_dripleaf.tilt_up" + }, + "block.cake.add_candle": { + "sounds": [ + "squidcoder:block/cake/add_candle1", + "squidcoder:block/cake/add_candle2", + "squidcoder:block/cake/add_candle3" + ], + "subtitle": "subtitles.block.cake.add_candle" + }, + "block.calcite.break": { + "sounds": [ + { + "name": "squidcoder:block/calcite/break1", + "volume": 0.9 + }, + { + "name": "squidcoder:block/calcite/break2", + "volume": 0.9 + }, + { + "name": "squidcoder:block/calcite/break3", + "volume": 0.9 + }, + { + "name": "squidcoder:block/calcite/break4", + "volume": 0.9 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.calcite.fall": { + "sounds": [ + { + "name": "squidcoder:block/calcite/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step6", + "volume": 1 + } + ] + }, + "block.calcite.hit": { + "sounds": [ + { + "name": "squidcoder:block/calcite/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step6", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.calcite.place": { + "sounds": [ + { + "name": "squidcoder:block/calcite/place1", + "volume": 0.94 + }, + { + "name": "squidcoder:block/calcite/place2", + "volume": 0.94 + }, + { + "name": "squidcoder:block/calcite/place3", + "volume": 0.94 + }, + { + "name": "squidcoder:block/calcite/place4", + "volume": 0.94 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.calcite.step": { + "sounds": [ + { + "name": "squidcoder:block/calcite/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/calcite/step6", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.candle.ambient": { + "sounds": [ + { + "name": "squidcoder:block/candle/ambient1", + "attenuation_distance": 3, + "volume": 0.7, + "pitch": 0.8 + }, + { + "name": "squidcoder:block/candle/ambient2", + "attenuation_distance": 3, + "volume": 0.7, + "pitch": 0.8 + }, + { + "name": "squidcoder:block/candle/ambient3", + "attenuation_distance": 3, + "volume": 0.7, + "pitch": 0.8 + }, + { + "name": "squidcoder:block/candle/ambient4", + "attenuation_distance": 3, + "volume": 0.7, + "pitch": 0.8 + }, + { + "name": "squidcoder:block/candle/ambient5", + "attenuation_distance": 3, + "volume": 0.7, + "pitch": 0.8 + }, + { + "name": "squidcoder:block/candle/ambient6", + "attenuation_distance": 3, + "volume": 0.7, + "pitch": 0.8 + }, + { + "name": "squidcoder:block/candle/ambient7", + "attenuation_distance": 3, + "volume": 0.7, + "pitch": 0.8 + }, + { + "name": "squidcoder:block/candle/ambient8", + "attenuation_distance": 3, + "volume": 0.7, + "pitch": 0.8 + }, + { + "name": "squidcoder:block/candle/ambient9", + "attenuation_distance": 3, + "volume": 0.7, + "pitch": 0.8 + }, + { + "name": "squidcoder:block/candle/ambient1", + "attenuation_distance": 3, + "volume": 0.8, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/ambient2", + "attenuation_distance": 3, + "volume": 0.8, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/ambient3", + "attenuation_distance": 3, + "volume": 0.8, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/ambient4", + "attenuation_distance": 3, + "volume": 0.8, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/ambient5", + "attenuation_distance": 3, + "volume": 0.8, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/ambient6", + "attenuation_distance": 3, + "volume": 0.8, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/ambient7", + "attenuation_distance": 3, + "volume": 0.8, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/ambient8", + "attenuation_distance": 3, + "volume": 0.8, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/ambient9", + "attenuation_distance": 3, + "volume": 0.8, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/ambient1", + "attenuation_distance": 3, + "volume": 1, + "pitch": 1 + }, + { + "name": "squidcoder:block/candle/ambient2", + "attenuation_distance": 3, + "volume": 1, + "pitch": 1 + }, + { + "name": "squidcoder:block/candle/ambient3", + "attenuation_distance": 3, + "volume": 1, + "pitch": 1 + }, + { + "name": "squidcoder:block/candle/ambient4", + "attenuation_distance": 3, + "volume": 1, + "pitch": 1 + }, + { + "name": "squidcoder:block/candle/ambient5", + "attenuation_distance": 3, + "volume": 1, + "pitch": 1 + }, + { + "name": "squidcoder:block/candle/ambient6", + "attenuation_distance": 3, + "volume": 1, + "pitch": 1 + }, + { + "name": "squidcoder:block/candle/ambient7", + "attenuation_distance": 3, + "volume": 1, + "pitch": 1 + }, + { + "name": "squidcoder:block/candle/ambient8", + "attenuation_distance": 3, + "volume": 1, + "pitch": 1 + }, + { + "name": "squidcoder:block/candle/ambient9", + "attenuation_distance": 3, + "volume": 1, + "pitch": 1 + } + ], + "subtitle": "subtitles.block.candle.crackle" + }, + "block.candle.break": { + "sounds": [ + "squidcoder:block/candle/break1", + "squidcoder:block/candle/break2", + "squidcoder:block/candle/break3", + "squidcoder:block/candle/break4", + "squidcoder:block/candle/break5" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.candle.extinguish": { + "sounds": [ + { + "name": "squidcoder:block/candle/extinguish1", + "attenuation_distance": 8, + "volume": 1, + "pitch": 1 + }, + { + "name": "squidcoder:block/candle/extinguish2", + "attenuation_distance": 8, + "volume": 1, + "pitch": 1 + }, + { + "name": "squidcoder:block/candle/extinguish3", + "attenuation_distance": 8, + "volume": 1, + "pitch": 1 + }, + { + "name": "squidcoder:block/candle/extinguish1", + "attenuation_distance": 8, + "volume": 1, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/extinguish2", + "attenuation_distance": 8, + "volume": 1, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/extinguish3", + "attenuation_distance": 8, + "volume": 1, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/extinguish1", + "attenuation_distance": 8, + "volume": 1, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/candle/extinguish2", + "attenuation_distance": 8, + "volume": 1, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/candle/extinguish3", + "attenuation_distance": 8, + "volume": 1, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/candle/extinguish1", + "attenuation_distance": 8, + "volume": 0.9, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/extinguish2", + "attenuation_distance": 8, + "volume": 0.9, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/extinguish3", + "attenuation_distance": 8, + "volume": 0.9, + "pitch": 0.9 + }, + { + "name": "squidcoder:block/candle/extinguish1", + "attenuation_distance": 8, + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/candle/extinguish2", + "attenuation_distance": 8, + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/candle/extinguish3", + "attenuation_distance": 8, + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/candle/extinguish1", + "attenuation_distance": 8, + "volume": 0.9, + "pitch": 1 + }, + { + "name": "squidcoder:block/candle/extinguish2", + "attenuation_distance": 8, + "volume": 0.9, + "pitch": 1 + }, + { + "name": "squidcoder:block/candle/extinguish3", + "attenuation_distance": 8, + "volume": 0.9, + "pitch": 1 + } + ], + "subtitle": "subtitles.block.fire.extinguish" + }, + "block.candle.fall": { + "sounds": [ + "squidcoder:block/candle/step1", + "squidcoder:block/candle/step2", + "squidcoder:block/candle/step3", + "squidcoder:block/candle/step4", + "squidcoder:block/candle/step5" + ] + }, + "block.candle.hit": { + "sounds": [ + "squidcoder:block/candle/step1", + "squidcoder:block/candle/step2", + "squidcoder:block/candle/step3", + "squidcoder:block/candle/step4", + "squidcoder:block/candle/step5" + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.candle.place": { + "sounds": [ + "squidcoder:block/candle/break1", + "squidcoder:block/candle/break2", + "squidcoder:block/candle/break3", + "squidcoder:block/candle/break4", + "squidcoder:block/candle/break5" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.candle.step": { + "sounds": [ + "squidcoder:block/candle/step1", + "squidcoder:block/candle/step2", + "squidcoder:block/candle/step3", + "squidcoder:block/candle/step4", + "squidcoder:block/candle/step5" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.cave_vines.break": { + "sounds": [ + "squidcoder:block/cave_vines/break1", + "squidcoder:block/cave_vines/break2", + "squidcoder:block/cave_vines/break3", + "squidcoder:block/cave_vines/break4", + "squidcoder:block/cave_vines/break5" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.cave_vines.fall": { + "sounds": [ + "squidcoder:block/vine/climb1", + "squidcoder:block/vine/climb2", + "squidcoder:block/vine/climb3", + "squidcoder:block/vine/climb4", + "squidcoder:block/vine/climb5" + ] + }, + "block.cave_vines.hit": { + "sounds": [ + "squidcoder:block/vine/climb1", + "squidcoder:block/vine/climb2", + "squidcoder:block/vine/climb3", + "squidcoder:block/vine/climb4", + "squidcoder:block/vine/climb5" + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.cave_vines.pick_berries": { + "sounds": [ + { + "name": "block.sweet_berry_bush.pick_berries", + "type": "event" + } + ], + "subtitle": "subtitles.block.sweet_berry_bush.pick_berries" + }, + "block.cave_vines.place": { + "sounds": [ + "squidcoder:block/cave_vines/break1", + "squidcoder:block/cave_vines/break2", + "squidcoder:block/cave_vines/break3", + "squidcoder:block/cave_vines/break4", + "squidcoder:block/cave_vines/break5" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.cave_vines.step": { + "sounds": [ + "squidcoder:block/vine/climb1", + "squidcoder:block/vine/climb2", + "squidcoder:block/vine/climb3", + "squidcoder:block/vine/climb4", + "squidcoder:block/vine/climb5" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.copper.break": { + "sounds": [ + "squidcoder:block/copper/break1", + "squidcoder:block/copper/break2", + "squidcoder:block/copper/break3", + "squidcoder:block/copper/break4" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.copper.fall": { + "sounds": [ + "squidcoder:block/copper/step1", + "squidcoder:block/copper/step2", + "squidcoder:block/copper/step3", + "squidcoder:block/copper/step4", + "squidcoder:block/copper/step5", + "squidcoder:block/copper/step6" + ] + }, + "block.copper.hit": { + "sounds": [ + "squidcoder:block/copper/step1", + "squidcoder:block/copper/step2", + "squidcoder:block/copper/step3", + "squidcoder:block/copper/step4", + "squidcoder:block/copper/step5", + "squidcoder:block/copper/step6" + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.copper.place": { + "sounds": [ + "squidcoder:block/copper/break1", + "squidcoder:block/copper/break2", + "squidcoder:block/copper/break3", + "squidcoder:block/copper/break4" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.copper.step": { + "sounds": [ + "squidcoder:block/copper/step1", + "squidcoder:block/copper/step2", + "squidcoder:block/copper/step3", + "squidcoder:block/copper/step4", + "squidcoder:block/copper/step5", + "squidcoder:block/copper/step6" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.deepslate.break": { + "sounds": [ + "squidcoder:block/deepslate/break1", + "squidcoder:block/deepslate/break2", + "squidcoder:block/deepslate/break3", + "squidcoder:block/deepslate/break4" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.deepslate.fall": { + "sounds": [ + "squidcoder:block/deepslate/step1", + "squidcoder:block/deepslate/step2", + "squidcoder:block/deepslate/step3", + "squidcoder:block/deepslate/step4", + "squidcoder:block/deepslate/step5", + "squidcoder:block/deepslate/step6" + ] + }, + "block.deepslate.hit": { + "sounds": [ + "squidcoder:block/deepslate/step1", + "squidcoder:block/deepslate/step2", + "squidcoder:block/deepslate/step3", + "squidcoder:block/deepslate/step4", + "squidcoder:block/deepslate/step5", + "squidcoder:block/deepslate/step6" + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.deepslate.place": { + "sounds": [ + "squidcoder:block/deepslate/place1", + "squidcoder:block/deepslate/place2", + "squidcoder:block/deepslate/place3", + "squidcoder:block/deepslate/place4", + "squidcoder:block/deepslate/place5", + "squidcoder:block/deepslate/place6" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.deepslate.step": { + "sounds": [ + "squidcoder:block/deepslate/step1", + "squidcoder:block/deepslate/step2", + "squidcoder:block/deepslate/step3", + "squidcoder:block/deepslate/step4", + "squidcoder:block/deepslate/step5", + "squidcoder:block/deepslate/step6" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.deepslate_bricks.break": { + "sounds": [ + { + "name": "squidcoder:block/deepslate_bricks/place1", + "pitch": 1, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place2", + "pitch": 1, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place3", + "pitch": 1, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place4", + "pitch": 1, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place5", + "pitch": 1, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place6", + "pitch": 1, + "volume": 0.85 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.deepslate_bricks.fall": { + "sounds": [ + { + "name": "squidcoder:block/deepslate_bricks/step1", + "pitch": 1 + }, + { + "name": "squidcoder:block/deepslate_bricks/step2", + "pitch": 1 + }, + { + "name": "squidcoder:block/deepslate_bricks/step3", + "pitch": 1 + }, + { + "name": "squidcoder:block/deepslate_bricks/step4", + "pitch": 1 + }, + { + "name": "squidcoder:block/deepslate_bricks/step5", + "pitch": 1 + } + ] + }, + "block.deepslate_bricks.hit": { + "sounds": [ + { + "name": "squidcoder:block/deepslate_bricks/step1", + "pitch": 1 + }, + { + "name": "squidcoder:block/deepslate_bricks/step2", + "pitch": 1 + }, + { + "name": "squidcoder:block/deepslate_bricks/step3", + "pitch": 1 + }, + { + "name": "squidcoder:block/deepslate_bricks/step4", + "pitch": 1 + }, + { + "name": "squidcoder:block/deepslate_bricks/step5", + "pitch": 1 + } + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.deepslate_bricks.place": { + "sounds": [ + { + "name": "squidcoder:block/deepslate_bricks/place1", + "pitch": 1, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place2", + "pitch": 1, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place3", + "pitch": 1, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place4", + "pitch": 1, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place5", + "pitch": 1, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place6", + "pitch": 1, + "volume": 0.85 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.deepslate_bricks.step": { + "sounds": [ + { + "name": "squidcoder:block/deepslate_bricks/step1", + "pitch": 0.9 + }, + { + "name": "squidcoder:block/deepslate_bricks/step2", + "pitch": 0.9 + }, + { + "name": "squidcoder:block/deepslate_bricks/step3", + "pitch": 0.9 + }, + { + "name": "squidcoder:block/deepslate_bricks/step4", + "pitch": 0.9 + }, + { + "name": "squidcoder:block/deepslate_bricks/step5", + "pitch": 0.9 + } + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.deepslate_tiles.break": { + "sounds": [ + { + "name": "squidcoder:block/deepslate_bricks/place1", + "pitch": 1.3, + "volume": 0.92 + }, + { + "name": "squidcoder:block/deepslate_bricks/place2", + "pitch": 1.3, + "volume": 0.92 + }, + { + "name": "squidcoder:block/deepslate_bricks/place3", + "pitch": 1.3, + "volume": 0.92 + }, + { + "name": "squidcoder:block/deepslate_bricks/place4", + "pitch": 1.3, + "volume": 0.92 + }, + { + "name": "squidcoder:block/deepslate_bricks/place5", + "pitch": 1.3, + "volume": 0.92 + }, + { + "name": "squidcoder:block/deepslate_bricks/place6", + "pitch": 1.3, + "volume": 0.92 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.deepslate_tiles.fall": { + "sounds": [ + { + "name": "squidcoder:block/deepslate_bricks/step1", + "pitch": 1.3 + }, + { + "name": "squidcoder:block/deepslate_bricks/step2", + "pitch": 1.3 + }, + { + "name": "squidcoder:block/deepslate_bricks/step3", + "pitch": 1.3 + }, + { + "name": "squidcoder:block/deepslate_bricks/step4", + "pitch": 1.3 + }, + { + "name": "squidcoder:block/deepslate_bricks/step5", + "pitch": 1.3 + } + ] + }, + "block.deepslate_tiles.hit": { + "sounds": [ + { + "name": "squidcoder:block/deepslate_bricks/step1", + "pitch": 1.3 + }, + { + "name": "squidcoder:block/deepslate_bricks/step2", + "pitch": 1.3 + }, + { + "name": "squidcoder:block/deepslate_bricks/step3", + "pitch": 1.3 + }, + { + "name": "squidcoder:block/deepslate_bricks/step4", + "pitch": 1.3 + }, + { + "name": "squidcoder:block/deepslate_bricks/step5", + "pitch": 1.3 + } + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.deepslate_tiles.place": { + "sounds": [ + { + "name": "squidcoder:block/deepslate_bricks/place1", + "pitch": 1.2, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place2", + "pitch": 1.2, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place3", + "pitch": 1.2, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place4", + "pitch": 1.2, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place5", + "pitch": 1.2, + "volume": 0.85 + }, + { + "name": "squidcoder:block/deepslate_bricks/place6", + "pitch": 1.2, + "volume": 0.85 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.deepslate_tiles.step": { + "sounds": [ + { + "name": "squidcoder:block/deepslate_bricks/step1", + "pitch": 1.2 + }, + { + "name": "squidcoder:block/deepslate_bricks/step2", + "pitch": 1.2 + }, + { + "name": "squidcoder:block/deepslate_bricks/step3", + "pitch": 1.2 + }, + { + "name": "squidcoder:block/deepslate_bricks/step4", + "pitch": 1.2 + }, + { + "name": "squidcoder:block/deepslate_bricks/step5", + "pitch": 1.2 + } + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.dripstone_block.break": { + "sounds": [ + "squidcoder:block/dripstone/break1", + "squidcoder:block/dripstone/break2", + "squidcoder:block/dripstone/break3", + "squidcoder:block/dripstone/break4", + "squidcoder:block/dripstone/break5" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.dripstone_block.fall": { + "sounds": [ + "squidcoder:block/dripstone/step1", + "squidcoder:block/dripstone/step2", + "squidcoder:block/dripstone/step3", + "squidcoder:block/dripstone/step4", + "squidcoder:block/dripstone/step5", + "squidcoder:block/dripstone/step6" + ] + }, + "block.dripstone_block.hit": { + "sounds": [ + "squidcoder:block/dripstone/step1", + "squidcoder:block/dripstone/step2", + "squidcoder:block/dripstone/step3", + "squidcoder:block/dripstone/step4", + "squidcoder:block/dripstone/step5", + "squidcoder:block/dripstone/step6" + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.dripstone_block.place": { + "sounds": [ + "squidcoder:block/dripstone/break1", + "squidcoder:block/dripstone/break2", + "squidcoder:block/dripstone/break3", + "squidcoder:block/dripstone/break4", + "squidcoder:block/dripstone/break5" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.dripstone_block.step": { + "sounds": [ + "squidcoder:block/dripstone/step1", + "squidcoder:block/dripstone/step2", + "squidcoder:block/dripstone/step3", + "squidcoder:block/dripstone/step4", + "squidcoder:block/dripstone/step5", + "squidcoder:block/dripstone/step6" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.flowering_azalea.break": { + "sounds": [ + "squidcoder:block/azalea/break1", + "squidcoder:block/azalea/break2", + "squidcoder:block/azalea/break3", + "squidcoder:block/azalea/break4", + "squidcoder:block/azalea/break5", + "squidcoder:block/azalea/break6" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.flowering_azalea.fall": { + "sounds": [ + "squidcoder:block/azalea/step1", + "squidcoder:block/azalea/step2", + "squidcoder:block/azalea/step3", + "squidcoder:block/azalea/step4", + "squidcoder:block/azalea/step5", + "squidcoder:block/azalea/step6" + ] + }, + "block.flowering_azalea.hit": { + "sounds": [ + "squidcoder:block/azalea/step1", + "squidcoder:block/azalea/step2", + "squidcoder:block/azalea/step3", + "squidcoder:block/azalea/step4", + "squidcoder:block/azalea/step5", + "squidcoder:block/azalea/step6" + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.flowering_azalea.place": { + "sounds": [ + "squidcoder:block/azalea/break1", + "squidcoder:block/azalea/break2", + "squidcoder:block/azalea/break3", + "squidcoder:block/azalea/break4", + "squidcoder:block/azalea/break5", + "squidcoder:block/azalea/break6" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.flowering_azalea.step": { + "sounds": [ + "squidcoder:block/azalea/step1", + "squidcoder:block/azalea/step2", + "squidcoder:block/azalea/step3", + "squidcoder:block/azalea/step4", + "squidcoder:block/azalea/step5", + "squidcoder:block/azalea/step6" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.hanging_roots.break": { + "sounds": [ + "squidcoder:block/hanging_roots/break1", + "squidcoder:block/hanging_roots/break2", + "squidcoder:block/hanging_roots/break3", + "squidcoder:block/hanging_roots/break4" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.hanging_roots.fall": { + "sounds": [ + "squidcoder:block/hanging_roots/step1", + "squidcoder:block/hanging_roots/step2", + "squidcoder:block/hanging_roots/step3", + "squidcoder:block/hanging_roots/step4", + "squidcoder:block/hanging_roots/step5", + "squidcoder:block/hanging_roots/step6" + ] + }, + "block.hanging_roots.hit": { + "sounds": [ + "squidcoder:block/hanging_roots/step1", + "squidcoder:block/hanging_roots/step2", + "squidcoder:block/hanging_roots/step3", + "squidcoder:block/hanging_roots/step4", + "squidcoder:block/hanging_roots/step5", + "squidcoder:block/hanging_roots/step6" + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.hanging_roots.place": { + "sounds": [ + "squidcoder:block/hanging_roots/break1", + "squidcoder:block/hanging_roots/break2", + "squidcoder:block/hanging_roots/break3", + "squidcoder:block/hanging_roots/break4" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.hanging_roots.step": { + "sounds": [ + "squidcoder:block/hanging_roots/step1", + "squidcoder:block/hanging_roots/step2", + "squidcoder:block/hanging_roots/step3", + "squidcoder:block/hanging_roots/step4", + "squidcoder:block/hanging_roots/step5", + "squidcoder:block/hanging_roots/step6" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.large_amethyst_bud.break": { + "sounds": [ + { + "name": "squidcoder:block/amethyst_cluster/break1", + "pitch": 0.85, + "volume": 0.7 + }, + { + "name": "squidcoder:block/amethyst_cluster/break2", + "pitch": 0.85, + "volume": 0.7 + }, + { + "name": "squidcoder:block/amethyst_cluster/break3", + "pitch": 0.85, + "volume": 0.7 + }, + { + "name": "squidcoder:block/amethyst_cluster/break4", + "pitch": 0.85, + "volume": 0.7 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.large_amethyst_bud.place": { + "sounds": [ + { + "name": "squidcoder:block/amethyst_cluster/place1", + "volume": 0.75 + }, + { + "name": "squidcoder:block/amethyst_cluster/place2", + "volume": 0.75 + }, + { + "name": "squidcoder:block/amethyst_cluster/place3", + "volume": 0.75 + }, + { + "name": "squidcoder:block/amethyst_cluster/place4", + "volume": 0.75 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.medium_amethyst_bud.break": { + "sounds": [ + { + "name": "squidcoder:block/amethyst_cluster/break1", + "pitch": 0.95, + "volume": 0.55 + }, + { + "name": "squidcoder:block/amethyst_cluster/break2", + "pitch": 0.95, + "volume": 0.55 + }, + { + "name": "squidcoder:block/amethyst_cluster/break3", + "pitch": 0.95, + "volume": 0.55 + }, + { + "name": "squidcoder:block/amethyst_cluster/break4", + "pitch": 0.95, + "volume": 0.55 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.medium_amethyst_bud.place": { + "sounds": [ + { + "name": "squidcoder:block/amethyst_cluster/place1", + "pitch": 1.1, + "volume": 0.5 + }, + { + "name": "squidcoder:block/amethyst_cluster/place2", + "pitch": 1.1, + "volume": 0.5 + }, + { + "name": "squidcoder:block/amethyst_cluster/place3", + "pitch": 1.1, + "volume": 0.5 + }, + { + "name": "squidcoder:block/amethyst_cluster/place4", + "pitch": 1.1, + "volume": 0.5 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.moss.break": { + "sounds": [ + { + "name": "squidcoder:block/moss/break1", + "volume": 0.95 + }, + { + "name": "squidcoder:block/moss/break2", + "volume": 0.93 + }, + { + "name": "squidcoder:block/moss/break3", + "volume": 0.93 + }, + { + "name": "squidcoder:block/moss/break4", + "volume": 0.93 + }, + { + "name": "squidcoder:block/moss/break5", + "volume": 0.93 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.moss.fall": { + "sounds": [ + "squidcoder:block/moss/step1", + "squidcoder:block/moss/step2", + "squidcoder:block/moss/step3", + "squidcoder:block/moss/step4", + "squidcoder:block/moss/step5", + "squidcoder:block/moss/step6" + ] + }, + "block.moss.hit": { + "sounds": [ + "squidcoder:block/moss/step1", + "squidcoder:block/moss/step2", + "squidcoder:block/moss/step3", + "squidcoder:block/moss/step4", + "squidcoder:block/moss/step5", + "squidcoder:block/moss/step6" + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.moss.place": { + "sounds": [ + { + "name": "squidcoder:block/moss/break1", + "volume": 0.93 + }, + { + "name": "squidcoder:block/moss/break2", + "volume": 0.93 + }, + { + "name": "squidcoder:block/moss/break3", + "volume": 0.93 + }, + { + "name": "squidcoder:block/moss/break4", + "volume": 0.93 + }, + { + "name": "squidcoder:block/moss/break5", + "volume": 0.93 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.moss.step": { + "sounds": [ + "squidcoder:block/moss/step1", + "squidcoder:block/moss/step2", + "squidcoder:block/moss/step3", + "squidcoder:block/moss/step4", + "squidcoder:block/moss/step5", + "squidcoder:block/moss/step6" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.moss_carpet.break": { + "sounds": [ + { + "name": "squidcoder:block/moss/break1", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/break2", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/break3", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/break4", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/break5", + "volume": 0.9, + "pitch": 1.1 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.moss_carpet.fall": { + "sounds": [ + { + "name": "squidcoder:block/moss/step1", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step2", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step3", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step4", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step5", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step6", + "volume": 0.9, + "pitch": 1.1 + } + ] + }, + "block.moss_carpet.hit": { + "sounds": [ + { + "name": "squidcoder:block/moss/step1", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step2", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step3", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step4", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step5", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step6", + "volume": 0.9, + "pitch": 1.1 + } + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.moss_carpet.place": { + "sounds": [ + { + "name": "squidcoder:block/moss/break1", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/break2", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/break3", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/break4", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/break5", + "volume": 0.9, + "pitch": 1.1 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.moss_carpet.step": { + "sounds": [ + { + "name": "squidcoder:block/moss/step1", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step2", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step3", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step4", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step5", + "volume": 0.9, + "pitch": 1.1 + }, + { + "name": "squidcoder:block/moss/step6", + "volume": 0.9, + "pitch": 1.1 + } + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.pointed_dripstone.break": { + "sounds": [ + "squidcoder:block/dripstone/break1", + "squidcoder:block/dripstone/break2", + "squidcoder:block/dripstone/break3", + "squidcoder:block/dripstone/break4", + "squidcoder:block/dripstone/break5" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.pointed_dripstone.drip_lava": { + "sounds": [ + "squidcoder:block/pointed_dripstone/drip_lava1", + "squidcoder:block/pointed_dripstone/drip_lava2", + "squidcoder:block/pointed_dripstone/drip_lava3", + "squidcoder:block/pointed_dripstone/drip_lava4", + "squidcoder:block/pointed_dripstone/drip_lava5", + "squidcoder:block/pointed_dripstone/drip_lava6" + ], + "subtitle": "subtitles.block.pointed_dripstone.drip_lava" + }, + "block.pointed_dripstone.drip_lava_into_cauldron": { + "sounds": [ + "squidcoder:block/pointed_dripstone/drip_lava_cauldron1", + "squidcoder:block/pointed_dripstone/drip_lava_cauldron2", + "squidcoder:block/pointed_dripstone/drip_lava_cauldron3", + "squidcoder:block/pointed_dripstone/drip_lava_cauldron4" + ], + "subtitle": "subtitles.block.pointed_dripstone.drip_lava_into_cauldron" + }, + "block.pointed_dripstone.drip_water": { + "sounds": [ + "squidcoder:block/pointed_dripstone/drip_water1", + "squidcoder:block/pointed_dripstone/drip_water2", + "squidcoder:block/pointed_dripstone/drip_water3", + "squidcoder:block/pointed_dripstone/drip_water4", + "squidcoder:block/pointed_dripstone/drip_water5", + "squidcoder:block/pointed_dripstone/drip_water6", + "squidcoder:block/pointed_dripstone/drip_water7", + "squidcoder:block/pointed_dripstone/drip_water8", + "squidcoder:block/pointed_dripstone/drip_water9", + "squidcoder:block/pointed_dripstone/drip_water10", + "squidcoder:block/pointed_dripstone/drip_water11", + "squidcoder:block/pointed_dripstone/drip_water12", + "squidcoder:block/pointed_dripstone/drip_water13", + "squidcoder:block/pointed_dripstone/drip_water14", + "squidcoder:block/pointed_dripstone/drip_water15" + ], + "subtitle": "subtitles.block.pointed_dripstone.drip_water" + }, + "block.pointed_dripstone.drip_water_into_cauldron": { + "sounds": [ + "squidcoder:block/pointed_dripstone/drip_water_cauldron1", + "squidcoder:block/pointed_dripstone/drip_water_cauldron2", + "squidcoder:block/pointed_dripstone/drip_water_cauldron3", + "squidcoder:block/pointed_dripstone/drip_water_cauldron4", + "squidcoder:block/pointed_dripstone/drip_water_cauldron5", + "squidcoder:block/pointed_dripstone/drip_water_cauldron6", + "squidcoder:block/pointed_dripstone/drip_water_cauldron7", + "squidcoder:block/pointed_dripstone/drip_water_cauldron8" + ], + "subtitle": "subtitles.block.pointed_dripstone.drip_water_into_cauldron" + }, + "block.pointed_dripstone.fall": { + "sounds": [ + "squidcoder:block/dripstone/step1", + "squidcoder:block/dripstone/step2", + "squidcoder:block/dripstone/step3", + "squidcoder:block/dripstone/step4", + "squidcoder:block/dripstone/step5", + "squidcoder:block/dripstone/step6" + ] + }, + "block.pointed_dripstone.hit": { + "sounds": [ + "squidcoder:block/dripstone/step1", + "squidcoder:block/dripstone/step2", + "squidcoder:block/dripstone/step3", + "squidcoder:block/dripstone/step4", + "squidcoder:block/dripstone/step5", + "squidcoder:block/dripstone/step6" + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.pointed_dripstone.land": { + "sounds": [ + "squidcoder:block/pointed_dripstone/land1", + "squidcoder:block/pointed_dripstone/land2", + "squidcoder:block/pointed_dripstone/land3", + "squidcoder:block/pointed_dripstone/land4", + "squidcoder:block/pointed_dripstone/land5" + ] + }, + "block.pointed_dripstone.place": { + "sounds": [ + "squidcoder:block/dripstone/break1", + "squidcoder:block/dripstone/break2", + "squidcoder:block/dripstone/break3", + "squidcoder:block/dripstone/break4", + "squidcoder:block/dripstone/break5" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.pointed_dripstone.step": { + "sounds": [ + "squidcoder:block/dripstone/step1", + "squidcoder:block/dripstone/step2", + "squidcoder:block/dripstone/step3", + "squidcoder:block/dripstone/step4", + "squidcoder:block/dripstone/step5", + "squidcoder:block/dripstone/step6" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.polished_deepslate.break": { + "sounds": [ + "squidcoder:block/deepslate/break1", + "squidcoder:block/deepslate/break2", + "squidcoder:block/deepslate/break3", + "squidcoder:block/deepslate/break4" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.polished_deepslate.fall": { + "sounds": [ + "squidcoder:block/deepslate/step1", + "squidcoder:block/deepslate/step2", + "squidcoder:block/deepslate/step3", + "squidcoder:block/deepslate/step4", + "squidcoder:block/deepslate/step5", + "squidcoder:block/deepslate/step6" + ] + }, + "block.polished_deepslate.hit": { + "sounds": [ + "squidcoder:block/deepslate/step1", + "squidcoder:block/deepslate/step2", + "squidcoder:block/deepslate/step3", + "squidcoder:block/deepslate/step4", + "squidcoder:block/deepslate/step5", + "squidcoder:block/deepslate/step6" + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.polished_deepslate.place": { + "sounds": [ + "squidcoder:block/deepslate/place1", + "squidcoder:block/deepslate/place2", + "squidcoder:block/deepslate/place3", + "squidcoder:block/deepslate/place4", + "squidcoder:block/deepslate/place5", + "squidcoder:block/deepslate/place6" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.polished_deepslate.step": { + "sounds": [ + "squidcoder:block/deepslate/step1", + "squidcoder:block/deepslate/step2", + "squidcoder:block/deepslate/step3", + "squidcoder:block/deepslate/step4", + "squidcoder:block/deepslate/step5", + "squidcoder:block/deepslate/step6" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.powder_snow.break": { + "sounds": [ + "squidcoder:block/powder_snow/break1", + "squidcoder:block/powder_snow/break2", + "squidcoder:block/powder_snow/break3", + "squidcoder:block/powder_snow/break4", + "squidcoder:block/powder_snow/break5", + "squidcoder:block/powder_snow/break6", + "squidcoder:block/powder_snow/break7" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.powder_snow.fall": { + "sounds": [ + "squidcoder:block/powder_snow/step1", + "squidcoder:block/powder_snow/step2", + "squidcoder:block/powder_snow/step3", + "squidcoder:block/powder_snow/step4", + "squidcoder:block/powder_snow/step5", + "squidcoder:block/powder_snow/step6", + "squidcoder:block/powder_snow/step7", + "squidcoder:block/powder_snow/step8", + "squidcoder:block/powder_snow/step9", + "squidcoder:block/powder_snow/step10" + ] + }, + "block.powder_snow.hit": { + "sounds": [ + { + "name": "squidcoder:block/powder_snow/step1", + "volume": 0.83, + "pitch": 1.3 + }, + { + "name": "squidcoder:block/powder_snow/step2", + "volume": 0.83, + "pitch": 1.3 + }, + { + "name": "squidcoder:block/powder_snow/step3", + "volume": 0.83, + "pitch": 1.3 + }, + { + "name": "squidcoder:block/powder_snow/step4", + "volume": 0.83, + "pitch": 1.3 + }, + { + "name": "squidcoder:block/powder_snow/step5", + "volume": 0.83, + "pitch": 1.3 + }, + { + "name": "squidcoder:block/powder_snow/step6", + "volume": 0.83, + "pitch": 1.3 + }, + { + "name": "squidcoder:block/powder_snow/step7", + "volume": 0.83, + "pitch": 1.3 + }, + { + "name": "squidcoder:block/powder_snow/step8", + "volume": 0.83, + "pitch": 1.3 + }, + { + "name": "squidcoder:block/powder_snow/step9", + "volume": 0.83, + "pitch": 1.3 + }, + { + "name": "squidcoder:block/powder_snow/step10", + "volume": 0.83, + "pitch": 1.3 + } + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.powder_snow.place": { + "sounds": [ + "squidcoder:block/powder_snow/break1", + "squidcoder:block/powder_snow/break2", + "squidcoder:block/powder_snow/break3", + "squidcoder:block/powder_snow/break4", + "squidcoder:block/powder_snow/break5", + "squidcoder:block/powder_snow/break6", + "squidcoder:block/powder_snow/break7" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.powder_snow.step": { + "sounds": [ + "squidcoder:block/powder_snow/step1", + "squidcoder:block/powder_snow/step2", + "squidcoder:block/powder_snow/step3", + "squidcoder:block/powder_snow/step4", + "squidcoder:block/powder_snow/step5", + "squidcoder:block/powder_snow/step6", + "squidcoder:block/powder_snow/step7", + "squidcoder:block/powder_snow/step8", + "squidcoder:block/powder_snow/step9", + "squidcoder:block/powder_snow/step10" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.rooted_dirt.break": { + "sounds": [ + "squidcoder:block/rooted_dirt/break1", + "squidcoder:block/rooted_dirt/break2", + "squidcoder:block/rooted_dirt/break3", + "squidcoder:block/rooted_dirt/break4" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.rooted_dirt.fall": { + "sounds": [ + "squidcoder:block/rooted_dirt/step1", + "squidcoder:block/rooted_dirt/step2", + "squidcoder:block/rooted_dirt/step3", + "squidcoder:block/rooted_dirt/step4", + "squidcoder:block/rooted_dirt/step5", + "squidcoder:block/rooted_dirt/step6" + ] + }, + "block.rooted_dirt.hit": { + "sounds": [ + { + "name": "squidcoder:block/rooted_dirt/step1", + "volume": 0.8 + }, + { + "name": "squidcoder:block/rooted_dirt/step2", + "volume": 0.8 + }, + { + "name": "squidcoder:block/rooted_dirt/step3", + "volume": 0.8 + }, + { + "name": "squidcoder:block/rooted_dirt/step4", + "volume": 0.8 + }, + { + "name": "squidcoder:block/rooted_dirt/step5", + "volume": 0.8 + }, + { + "name": "squidcoder:block/rooted_dirt/step6", + "volume": 0.8 + } + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.rooted_dirt.place": { + "sounds": [ + "squidcoder:block/rooted_dirt/break1", + "squidcoder:block/rooted_dirt/break2", + "squidcoder:block/rooted_dirt/break3", + "squidcoder:block/rooted_dirt/break4" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.rooted_dirt.step": { + "sounds": [ + "squidcoder:block/rooted_dirt/step1", + "squidcoder:block/rooted_dirt/step2", + "squidcoder:block/rooted_dirt/step3", + "squidcoder:block/rooted_dirt/step4", + "squidcoder:block/rooted_dirt/step5", + "squidcoder:block/rooted_dirt/step6" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.roots.break": { + "sounds": [ + "squidcoder:block/roots/break1", + "squidcoder:block/roots/break2", + "squidcoder:block/roots/break3", + "squidcoder:block/roots/break4", + "squidcoder:block/roots/break5", + "squidcoder:block/roots/break6" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.roots.fall": { + "sounds": [] + }, + "block.roots.hit": { + "sounds": [], + "subtitle": "subtitles.block.generic.hit" + }, + "block.roots.place": { + "sounds": [ + "squidcoder:block/roots/break1", + "squidcoder:block/roots/break2", + "squidcoder:block/roots/break3", + "squidcoder:block/roots/break4", + "squidcoder:block/roots/break5", + "squidcoder:block/roots/break6" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.roots.step": { + "sounds": [], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.sculk_sensor.break": { + "sounds": [ + { + "name": "squidcoder:block/sculk_sensor/break1", + "pitch": 1.2, + "volume": 0.9 + }, + { + "name": "squidcoder:block/sculk_sensor/break2", + "pitch": 1.2, + "volume": 0.9 + }, + { + "name": "squidcoder:block/sculk_sensor/break3", + "pitch": 1.2, + "volume": 0.9 + }, + { + "name": "squidcoder:block/sculk_sensor/break4", + "pitch": 1.2, + "volume": 0.9 + }, + { + "name": "squidcoder:block/sculk_sensor/break5", + "pitch": 1.2, + "volume": 0.9 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.sculk_sensor.clicking": { + "sounds": [ + { + "name": "squidcoder:block/sculk_sensor/sculk_clicking1", + "volume": 0.73 + }, + { + "name": "squidcoder:block/sculk_sensor/sculk_clicking2", + "volume": 0.73 + }, + { + "name": "squidcoder:block/sculk_sensor/sculk_clicking3", + "volume": 0.73 + }, + { + "name": "squidcoder:block/sculk_sensor/sculk_clicking4", + "volume": 0.73 + }, + { + "name": "squidcoder:block/sculk_sensor/sculk_clicking5", + "volume": 0.73 + }, + { + "name": "squidcoder:block/sculk_sensor/sculk_clicking6", + "volume": 0.73 + } + ], + "subtitle": "subtitles.block.sculk_sensor.clicking" + }, + "block.sculk_sensor.clicking_stop": { + "sounds": [ + { + "name": "squidcoder:block/sculk_sensor/sculk_clicking_stop1", + "volume": 0.62 + }, + { + "name": "squidcoder:block/sculk_sensor/sculk_clicking_stop2", + "volume": 0.62 + }, + { + "name": "squidcoder:block/sculk_sensor/sculk_clicking_stop3", + "volume": 0.62 + }, + { + "name": "squidcoder:block/sculk_sensor/sculk_clicking_stop4", + "volume": 0.62 + }, + { + "name": "squidcoder:block/sculk_sensor/sculk_clicking_stop5", + "volume": 0.62 + } + ], + "subtitle": "subtitles.block.sculk_sensor.clicking_stop" + }, + "block.sculk_sensor.fall": { + "sounds": [ + { + "name": "squidcoder:block/sculk/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step6", + "volume": 1 + } + ] + }, + "block.sculk_sensor.hit": { + "sounds": [ + { + "name": "squidcoder:block/sculk/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step6", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.sculk_sensor.place": { + "sounds": [ + { + "name": "squidcoder:block/sculk_sensor/place1", + "pitch": 1.2, + "volume": 0.8 + }, + { + "name": "squidcoder:block/sculk_sensor/place2", + "pitch": 1.2, + "volume": 0.8 + }, + { + "name": "squidcoder:block/sculk_sensor/place3", + "pitch": 1.2, + "volume": 0.8 + }, + { + "name": "squidcoder:block/sculk_sensor/place4", + "pitch": 1.2, + "volume": 0.8 + }, + { + "name": "squidcoder:block/sculk_sensor/place5", + "pitch": 1.2, + "volume": 0.8 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.sculk_sensor.step": { + "sounds": [ + { + "name": "squidcoder:block/sculk/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/sculk/step6", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.small_amethyst_bud.break": { + "sounds": [ + { + "name": "squidcoder:block/amethyst_cluster/break1", + "volume": 0.4 + }, + { + "name": "squidcoder:block/amethyst_cluster/break2", + "volume": 0.4 + }, + { + "name": "squidcoder:block/amethyst_cluster/break3", + "volume": 0.4 + }, + { + "name": "squidcoder:block/amethyst_cluster/break4", + "volume": 0.4 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.small_amethyst_bud.place": { + "sounds": [ + { + "name": "squidcoder:block/amethyst_cluster/place1", + "pitch:": 1.2, + "volume": 0.4 + }, + { + "name": "squidcoder:block/amethyst_cluster/place2", + "pitch:": 1.2, + "volume": 0.4 + }, + { + "name": "squidcoder:block/amethyst_cluster/place3", + "pitch:": 1.2, + "volume": 0.4 + }, + { + "name": "squidcoder:block/amethyst_cluster/place4", + "pitch:": 1.2, + "volume": 0.4 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.small_dripleaf.break": { + "sounds": [ + { + "name": "squidcoder:block/big_dripleaf/break1", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/break2", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/break3", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/break4", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/break5", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/break6", + "volume": 0.9, + "pitch": 1.2 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.small_dripleaf.fall": { + "sounds": [ + { + "name": "squidcoder:block/big_dripleaf/step1", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step2", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step3", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step4", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step5", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step6", + "volume": 0.9, + "pitch": 1.2 + } + ] + }, + "block.small_dripleaf.hit": { + "sounds": [ + { + "name": "squidcoder:block/big_dripleaf/step1", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step2", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step3", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step4", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step5", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step6", + "volume": 0.9, + "pitch": 1.2 + } + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.small_dripleaf.place": { + "sounds": [ + { + "name": "squidcoder:block/big_dripleaf/break1", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/break2", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/break3", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/break4", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/break5", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/break6", + "volume": 0.9, + "pitch": 1.2 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.small_dripleaf.step": { + "sounds": [ + { + "name": "squidcoder:block/big_dripleaf/step1", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step2", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step3", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step4", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step5", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:block/big_dripleaf/step6", + "volume": 0.9, + "pitch": 1.2 + } + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.spore_blossom.break": { + "sounds": [ + "squidcoder:block/spore_blossom/break1", + "squidcoder:block/spore_blossom/break2", + "squidcoder:block/spore_blossom/break3", + "squidcoder:block/spore_blossom/break4", + "squidcoder:block/spore_blossom/break5" + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.spore_blossom.fall": { + "sounds": [ + "squidcoder:block/spore_blossom/step1", + "squidcoder:block/spore_blossom/step2", + "squidcoder:block/spore_blossom/step3", + "squidcoder:block/spore_blossom/step4", + "squidcoder:block/spore_blossom/step5", + "squidcoder:block/spore_blossom/step6" + ] + }, + "block.spore_blossom.hit": { + "sounds": [ + "squidcoder:block/spore_blossom/step1", + "squidcoder:block/spore_blossom/step2", + "squidcoder:block/spore_blossom/step3", + "squidcoder:block/spore_blossom/step4", + "squidcoder:block/spore_blossom/step5", + "squidcoder:block/spore_blossom/step6" + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.spore_blossom.place": { + "sounds": [ + "squidcoder:block/spore_blossom/break1", + "squidcoder:block/spore_blossom/break2", + "squidcoder:block/spore_blossom/break3", + "squidcoder:block/spore_blossom/break4", + "squidcoder:block/spore_blossom/break5" + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.spore_blossom.step": { + "sounds": [ + "squidcoder:block/spore_blossom/step1", + "squidcoder:block/spore_blossom/step2", + "squidcoder:block/spore_blossom/step3", + "squidcoder:block/spore_blossom/step4", + "squidcoder:block/spore_blossom/step5", + "squidcoder:block/spore_blossom/step6" + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + "block.tuff.break": { + "sounds": [ + { + "name": "squidcoder:block/tuff/break1", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/break2", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/break3", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/break4", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.break" + }, + "block.tuff.fall": { + "sounds": [ + { + "name": "squidcoder:block/tuff/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step6", + "volume": 1 + } + ] + }, + "block.tuff.hit": { + "sounds": [ + { + "name": "squidcoder:block/tuff/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step6", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.hit" + }, + "block.tuff.place": { + "sounds": [ + { + "name": "squidcoder:block/tuff/break1", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/break2", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/break3", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/break4", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.place" + }, + "block.tuff.step": { + "sounds": [ + { + "name": "squidcoder:block/tuff/step1", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step2", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step3", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step4", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step5", + "volume": 1 + }, + { + "name": "squidcoder:block/tuff/step6", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + + "entity.axolotl.attack": { + "sounds": [ + { + "name": "squidcoder:mob/axolotl/attack1", + "volume": 0.5 + }, + { + "name": "squidcoder:mob/axolotl/attack2", + "volume": 0.5 + }, + { + "name": "squidcoder:mob/axolotl/attack3", + "volume": 0.5 + }, + { + "name": "squidcoder:mob/axolotl/attack4", + "volume": 0.5 + } + ], + "subtitle": "subtitles.entity.axolotl.attack" + }, + "entity.axolotl.death": { + "sounds": [ + "squidcoder:mob/axolotl/death1", + "squidcoder:mob/axolotl/death2" + ], + "subtitle": "subtitles.entity.axolotl.death" + }, + "entity.axolotl.hurt": { + "sounds": [ + "squidcoder:mob/axolotl/hurt1", + "squidcoder:mob/axolotl/hurt2", + "squidcoder:mob/axolotl/hurt3", + "squidcoder:mob/axolotl/hurt4" + ], + "subtitle": "subtitles.entity.axolotl.hurt" + }, + "entity.axolotl.idle_air": { + "sounds": [ + { + "name": "squidcoder:mob/axolotl/idle_air1", + "volume": 1 + }, + { + "name": "squidcoder:mob/axolotl/idle_air2", + "volume": 1 + }, + { + "name": "squidcoder:mob/axolotl/idle_air3", + "volume": 0.8, + "pitch": 1.2 + }, + { + "name": "squidcoder:mob/axolotl/idle_air4", + "volume": 1 + }, + { + "name": "squidcoder:mob/axolotl/idle_air5", + "pitch": 1 + } + ], + "subtitle": "subtitles.entity.axolotl.idle_air" + }, + "entity.axolotl.idle_water": { + "sounds": [ + "squidcoder:mob/axolotl/idle1", + "squidcoder:mob/axolotl/idle2", + "squidcoder:mob/axolotl/idle3", + "squidcoder:mob/axolotl/idle4", + "squidcoder:mob/axolotl/idle5" + ], + "subtitle": "subtitles.entity.axolotl.idle_water" + }, + "entity.axolotl.splash": { + "sounds": [ + { + "name": "squidcoder:mob/dolphin/splash1", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:mob/dolphin/splash2", + "volume": 0.9, + "pitch": 1.2 + }, + { + "name": "squidcoder:mob/dolphin/splash3", + "volume": 0.9, + "pitch": 1.2 + } + ], + "subtitle": "subtitles.entity.axolotl.splash" + }, + "entity.axolotl.swim": { + "sounds": [ + "squidcoder:mob/dolphin/swim1", + "squidcoder:mob/dolphin/swim2", + "squidcoder:mob/dolphin/swim3", + "squidcoder:mob/dolphin/swim4", + "entity/fish/swim5", + "entity/fish/swim6", + "entity/fish/swim7" + ], + "subtitle": "subtitles.entity.axolotl.swim" + }, + "entity.glow_item_frame.add_item": { + "sounds": [ + "entity/itemframe/add_item1", + "entity/itemframe/add_item2", + "entity/itemframe/add_item3", + "entity/itemframe/add_item4" + ], + "subtitle": "subtitles.entity.glow_item_frame.add_item" + }, + "entity.glow_item_frame.break": { + "sounds": [ + "entity/itemframe/break1", + "entity/itemframe/break2", + "entity/itemframe/break3" + ], + "subtitle": "subtitles.entity.glow_item_frame.break" + }, + "entity.glow_item_frame.place": { + "sounds": [ + "entity/itemframe/place1", + "entity/itemframe/place2", + "entity/itemframe/place3", + "entity/itemframe/place4" + ], + "subtitle": "subtitles.entity.glow_item_frame.place" + }, + "entity.glow_item_frame.remove_item": { + "sounds": [ + "entity/itemframe/remove_item1", + "entity/itemframe/remove_item2", + "entity/itemframe/remove_item3", + "entity/itemframe/remove_item4" + ], + "subtitle": "subtitles.entity.glow_item_frame.remove_item" + }, + "entity.glow_item_frame.rotate_item": { + "sounds": [ + "entity/itemframe/rotate_item1", + "entity/itemframe/rotate_item2", + "entity/itemframe/rotate_item3", + "entity/itemframe/rotate_item4" + ], + "subtitle": "subtitles.entity.glow_item_frame.rotate_item" + }, + "entity.glow_squid.ambient": { + "sounds": [ + "entity/glow_squid/ambient1", + "entity/glow_squid/ambient2", + "entity/glow_squid/ambient3", + "entity/glow_squid/ambient4", + "entity/glow_squid/ambient5" + ], + "subtitle": "subtitles.entity.glow_squid.ambient" + }, + "entity.glow_squid.death": { + "sounds": [ + "entity/glow_squid/death1", + "entity/glow_squid/death2", + "entity/glow_squid/death3" + ], + "subtitle": "subtitles.entity.glow_squid.death" + }, + "entity.glow_squid.hurt": { + "sounds": [ + "entity/glow_squid/hurt1", + "entity/glow_squid/hurt2", + "entity/glow_squid/hurt3", + "entity/glow_squid/hurt4" + ], + "subtitle": "subtitles.entity.glow_squid.hurt" + }, + "entity.glow_squid.squirt": { + "sounds": [ + "entity/glow_squid/squirt1", + "entity/glow_squid/squirt2", + "entity/glow_squid/squirt3" + ], + "subtitle": "subtitles.entity.glow_squid.squirt" + }, + "entity.goat.ambient": { + "sounds": [ + { + "name": "squidcoder:mob/goat/idle1", + "volume": 0.82 + }, + { + "name": "squidcoder:mob/goat/idle2", + "volume": 0.82 + }, + { + "name": "squidcoder:mob/goat/idle3", + "volume": 0.84 + }, + { + "name": "squidcoder:mob/goat/idle4", + "volume": 0.84 + }, + { + "name": "squidcoder:mob/goat/idle5", + "volume": 0.84 + }, + { + "name": "squidcoder:mob/goat/idle6", + "volume": 0.84 + }, + { + "name": "squidcoder:mob/goat/idle7", + "volume": 0.83 + }, + { + "name": "squidcoder:mob/goat/idle8", + "volume": 0.84 + } + ], + "subtitle": "subtitles.entity.goat.ambient" + }, + "entity.goat.death": { + "sounds": [ + { + "name": "squidcoder:mob/goat/death1", + "volume": 0.65 + }, + { + "name": "squidcoder:mob/goat/death2", + "volume": 0.65 + }, + { + "name": "squidcoder:mob/goat/death3", + "volume": 0.65 + }, + { + "name": "squidcoder:mob/goat/death4", + "volume": 0.65 + }, + { + "name": "squidcoder:mob/goat/death5", + "volume": 0.65 + } + ], + "subtitle": "subtitles.entity.goat.death" + }, + "entity.goat.eat": { + "sounds": [ + "squidcoder:mob/goat/eat1", + "squidcoder:mob/goat/eat2", + "squidcoder:mob/goat/eat3" + ], + "subtitle": "subtitles.entity.goat.eat" + }, + "entity.goat.hurt": { + "sounds": [ + { + "name": "squidcoder:mob/goat/hurt1", + "volume": 0.65 + }, + { + "name": "squidcoder:mob/goat/hurt2", + "volume": 0.65 + }, + { + "name": "squidcoder:mob/goat/hurt3", + "volume": 0.65 + }, + { + "name": "squidcoder:mob/goat/hurt4", + "volume": 0.65 + } + ], + "subtitle": "subtitles.entity.goat.hurt" + }, + "entity.goat.long_jump": { + "sounds": [ + { + "name": "squidcoder:mob/goat/jump1", + "volume": 0.8, + "pitch": 1 + }, + { + "name": "squidcoder:mob/goat/jump2", + "volume": 0.8, + "pitch": 1 + }, + { + "name": "squidcoder:mob/goat/jump1", + "volume": 0.8, + "pitch": 0.8 + }, + { + "name": "squidcoder:mob/goat/jump2", + "volume": 0.8, + "pitch": 0.8 + } + ], + "subtitle": "subtitles.entity.goat.long_jump" + }, + "entity.goat.milk": { + "sounds": [ + "squidcoder:mob/mooshroom/milk1", + "squidcoder:mob/mooshroom/milk2", + "squidcoder:mob/mooshroom/milk3" + ], + "subtitle": "subtitles.entity.goat.milk" + }, + "entity.goat.prepare_ram": { + "sounds": [ + { + "name": "squidcoder:mob/goat/pre_ram1", + "volume": 0.8 + }, + { + "name": "squidcoder:mob/goat/pre_ram2", + "volume": 0.8 + }, + { + "name": "squidcoder:mob/goat/pre_ram3", + "volume": 0.8 + }, + { + "name": "squidcoder:mob/goat/pre_ram4", + "volume": 0.8 + } + ], + "subtitle": "subtitles.entity.goat.prepare_ram" + }, + "entity.goat.ram_impact": { + "sounds": [ + { + "name": "squidcoder:mob/goat/impact1", + "volume": 0.8 + }, + { + "name": "squidcoder:mob/goat/impact2", + "volume": 0.8 + }, + { + "name": "squidcoder:mob/goat/impact2", + "volume": 0.8 + } + ], + "subtitle": "subtitles.entity.goat.ram_impact" + }, + "entity.goat.screaming.ambient": { + "sounds": [ + { + "name": "squidcoder:mob/goat/idle1", + "volume": 0.82 + }, + { + "name": "squidcoder:mob/goat/idle2", + "volume": 0.82 + }, + { + "name": "squidcoder:mob/goat/idle3", + "volume": 0.84 + }, + { + "name": "squidcoder:mob/goat/idle4", + "volume": 0.84 + }, + { + "name": "squidcoder:mob/goat/idle5", + "volume": 0.84 + }, + { + "name": "squidcoder:mob/goat/idle6", + "volume": 0.84 + }, + { + "name": "squidcoder:mob/goat/idle7", + "volume": 0.83 + }, + { + "name": "squidcoder:mob/goat/idle8", + "volume": 0.84 + }, + { + "name": "squidcoder:mob/goat/scream1", + "volume": 0.9 + }, + { + "name": "squidcoder:mob/goat/scream2", + "volume": 0.9 + }, + { + "name": "squidcoder:mob/goat/scream3", + "volume": 0.9 + }, + { + "name": "squidcoder:mob/goat/scream4", + "volume": 0.9 + }, + { + "name": "squidcoder:mob/goat/scream5", + "volume": 0.9 + }, + { + "name": "squidcoder:mob/goat/scream6", + "volume": 0.9 + }, + { + "name": "squidcoder:mob/goat/scream7", + "volume": 0.9 + }, + { + "name": "squidcoder:mob/goat/scream8", + "volume": 0.9 + }, + { + "name": "squidcoder:mob/goat/scream9", + "volume": 0.9 + } + ], + "subtitle": "subtitles.entity.goat.screaming.ambient" + }, + "entity.goat.screaming.death": { + "sounds": [ + { + "name": "squidcoder:mob/goat/screaming_death1", + "volume": 0.65 + }, + { + "name": "squidcoder:mob/goat/screaming_death2", + "volume": 0.65 + }, + { + "name": "squidcoder:mob/goat/screaming_death3", + "volume": 0.65 + } + ], + "subtitle": "subtitles.entity.goat.death" + }, + "entity.goat.screaming.eat": { + "sounds": [ + "squidcoder:mob/goat/eat1", + "squidcoder:mob/goat/eat2", + "squidcoder:mob/goat/eat3" + ], + "subtitle": "subtitles.entity.goat.eat" + }, + "entity.goat.screaming.hurt": { + "sounds": [ + { + "name": "squidcoder:mob/goat/screaming_hurt1", + "volume": 0.65 + }, + { + "name": "squidcoder:mob/goat/screaming_hurt2", + "volume": 0.65 + }, + { + "name": "squidcoder:mob/goat/screaming_hurt3", + "volume": 0.65 + } + ], + "subtitle": "subtitles.entity.goat.hurt" + }, + "entity.goat.screaming.long_jump": { + "sounds": [ + { + "name": "squidcoder:mob/goat/jump1", + "volum": 0.8, + "pitch": 1 + }, + { + "name": "squidcoder:mob/goat/jump2", + "volum": 0.8, + "pitch": 1 + }, + { + "name": "squidcoder:mob/goat/jump1", + "volum": 0.8, + "pitch": 0.8 + }, + { + "name": "squidcoder:mob/goat/jump2", + "volum": 0.8, + "pitch": 0.8 + } + ], + "subtitle": "subtitles.entity.goat.long_jump" + }, + "entity.goat.screaming.milk": { + "sounds": [ + "squidcoder:mob/goat/screaming_milk1", + "squidcoder:mob/goat/screaming_milk2", + "squidcoder:mob/goat/screaming_milk3", + "squidcoder:mob/goat/screaming_milk4", + "squidcoder:mob/goat/screaming_milk5" + ], + "subtitle": "subtitles.entity.goat.milk" + }, + "entity.goat.screaming.prepare_ram": { + "sounds": [ + { + "name": "squidcoder:mob/goat/screaming_pre_ram1", + "volume": 0.8 + }, + { + "name": "squidcoder:mob/goat/screaming_pre_ram2", + "volume": 0.8 + }, + { + "name": "squidcoder:mob/goat/screaming_pre_ram3", + "volume": 0.8 + }, + { + "name": "squidcoder:mob/goat/screaming_pre_ram4", + "volume": 0.8 + }, + { + "name": "squidcoder:mob/goat/screaming_pre_ram5", + "volume": 0.8 + } + ], + "subtitle": "subtitles.entity.goat.prepare_ram" + }, + "entity.goat.screaming.ram_impact": { + "sounds": [ + { + "name": "squidcoder:mob/goat/impact1", + "volume": 0.8 + }, + { + "name": "squidcoder:mob/goat/impact2", + "volume": 0.8 + }, + { + "name": "squidcoder:mob/goat/impact2", + "volume": 0.8 + } + ], + "subtitle": "subtitles.entity.goat.ram_impact" + }, + "entity.goat.step": { + "sounds": [ + { + "name": "squidcoder:mob/goat/step1", + "volume": 1 + }, + { + "name": "squidcoder:mob/goat/step2", + "volume": 1 + }, + { + "name": "squidcoder:mob/goat/step3", + "volume": 1 + }, + { + "name": "squidcoder:mob/goat/step4", + "volume": 1 + }, + { + "name": "squidcoder:mob/goat/step5", + "volume": 1 + }, + { + "name": "squidcoder:mob/goat/step6", + "volume": 1 + } + ], + "subtitle": "subtitles.block.generic.footsteps" + }, + + "item.axe.scrape": { + "sounds": [ + { + "name": "squidcoder:item/axe/scrape1", + "pitch": 1 + }, + { + "name": "squidcoder:item/axe/scrape2", + "pitch": 1 + }, + { + "name": "squidcoder:item/axe/scrape3", + "pitch": 1 + }, + { + "name": "squidcoder:item/axe/scrape1", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/axe/scrape2", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/axe/scrape3", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/axe/scrape1", + "pitch": 0.9 + }, + { + "name": "squidcoder:item/axe/scrape2", + "pitch": 0.9 + }, + { + "name": "squidcoder:item/axe/scrape3", + "pitch": 0.9 + } + ], + "subtitle": "subtitles.item.axe.scrape" + }, + "item.axe.strip": { + "sounds": [ + { + "name": "item/axe/strip1", + "volume": 0.9 + }, + { + "name": "squidcoder:item/axe/strip2", + "volume": 0.9 + }, + { + "name": "squidcoder:item/axe/strip3", + "volume": 0.9 + }, + { + "name": "squidcoder:item/axe/strip4", + "volume": 0.9 + }, + { + "name": "squidcoder:item/axe/strip1", + "pitch": 0.85, + "volume": 0.9 + }, + { + "name": "squidcoder:item/axe/strip2", + "pitch": 0.85, + "volume": 0.9 + }, + { + "name": "squidcoder:item/axe/strip3", + "pitch": 0.85, + "volume": 0.9 + }, + { + "name": "squidcoder:item/axe/strip4", + "pitch": 0.85, + "volume": 0.9 + } + ], + "subtitle": "subtitles.item.axe.strip" + }, + "item.axe.wax_off": { + "sounds": [ + { + "name": "squidcoder:item/axe/wax_off1", + "pitch": 1 + }, + { + "name": "squidcoder:item/axe/wax_off2", + "pitch": 1 + }, + { + "name": "squidcoder:item/axe/wax_off3", + "pitch": 1 + }, + { + "name": "squidcoder:item/axe/wax_off1", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/axe/wax_off2", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/axe/wax_off3", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/axe/wax_off1", + "pitch": 0.9 + }, + { + "name": "squidcoder:item/axe/wax_off2", + "pitch": 0.9 + }, + { + "name": "squidcoder:item/axe/wax_off3", + "pitch": 0.9 + } + ], + "subtitle": "subtitles.item.axe.wax_off" + }, + "item.bone_meal.use": { + "sounds": [ + { + "name": "squidcoder:item/bonemeal/bonemeal1", + "pitch": 1 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal2", + "pitch": 1 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal3", + "pitch": 1 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal4", + "pitch": 1 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal5", + "pitch": 1 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal1", + "pitch": 0.9 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal2", + "pitch": 0.9 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal3", + "pitch": 0.9 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal4", + "pitch": 0.9 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal5", + "pitch": 0.9 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal1", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal2", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal3", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal4", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/bonemeal/bonemeal5", + "pitch": 1.1 + } + ], + "subtitle": "subtitles.item.bone_meal.use" + }, + "item.bucket.empty_axolotl": { + "sounds": [ + "item/bucket/empty_fish1", + "item/bucket/empty_fish2", + "item/bucket/empty_fish3" + ], + "subtitle": "subtitles.item.bucket.empty" + }, + "item.bucket.empty_powder_snow": { + "sounds": [ + { + "name": "squidcoder:item/bucket/empty_powder_snow1", + "pitch": 1 + }, + { + "name": "squidcoder:item/bucket/empty_powder_snow2", + "pitch": 1 + }, + { + "name": "squidcoder:item/bucket/empty_powder_snow1", + "pitch": 0.95 + }, + { + "name": "squidcoder:item/bucket/empty_powder_snow2", + "pitch": 0.95 + }, + { + "name": "squidcoder:item/bucket/empty_powder_snow1", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/bucket/empty_powder_snow2", + "pitch": 1.1 + } + ], + "subtitle": "subtitles.item.bucket.empty" + }, + "item.bucket.fill_axolotl": { + "sounds": [ + { + "name": "squidcoder:item/bucket/fill_axolotl1", + "pitch": 1 + }, + { + "name": "squidcoder:item/bucket/fill_axolotl2", + "pitch": 1 + }, + { + "name": "squidcoder:item/bucket/fill_axolotl3", + "pitch": 1 + } + ], + "subtitle": "subtitles.item.bucket.fill_axolotl" + }, + "item.bucket.fill_powder_snow": { + "sounds": [ + { + "name": "squidcoder:item/bucket/fill_powder_snow1", + "pitch": 1.0 + }, + { + "name": "squidcoder:item/bucket/fill_powder_snow2", + "pitch": 1.0 + }, + { + "name": "squidcoder:item/bucket/fill_powder_snow1", + "pitch": 0.9 + }, + { + "name": "squidcoder:item/bucket/fill_powder_snow2", + "pitch": 0.9 + }, + { + "name": "squidcoder:item/bucket/fill_powder_snow1", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/bucket/fill_powder_snow2", + "pitch": 1.1 + } + ], + "subtitle": "subtitles.item.bucket.fill" + }, + "item.glow_ink_sac.use": { + "sounds": [ + { + "name": "item/ink_sac/ink_sac1", + "pitch": 1 + }, + { + "name": "item/ink_sac/ink_sac1", + "pitch": 1.05 + }, + { + "name": "item/ink_sac/ink_sac1", + "pitch": 0.95 + }, + { + "name": "item/ink_sac/ink_sac2", + "pitch": 1 + }, + { + "name": "item/ink_sac/ink_sac2", + "pitch": 1.05 + }, + { + "name": "item/ink_sac/ink_sac2", + "pitch": 0.95 + }, + { + "name": "item/ink_sac/ink_sac3", + "pitch": 1 + }, + { + "name": "item/ink_sac/ink_sac3", + "pitch": 1.05 + }, + { + "name": "item/ink_sac/ink_sac3", + "pitch": 0.95 + } + ], + "subtitle": "subtitles.item.glow_ink_sac.use" + }, + "item.honeycomb.wax_on": { + "sounds": [ + { + "name": "squidcoder:item/honeycomb/wax_on1", + "pitch": 1 + }, + { + "name": "squidcoder:item/honeycomb/wax_on2", + "pitch": 1 + }, + { + "name": "squidcoder:item/honeycomb/wax_on3", + "pitch": 1 + }, + { + "name": "squidcoder:item/honeycomb/wax_on1", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/honeycomb/wax_on2", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/honeycomb/wax_on3", + "pitch": 1.1 + }, + { + "name": "squidcoder:item/honeycomb/wax_on1", + "pitch": 0.9 + }, + { + "name": "squidcoder:item/honeycomb/wax_on2", + "pitch": 0.9 + }, + { + "name": "squidcoder:item/honeycomb/wax_on3", + "pitch": 0.9 + } + ], + "subtitle": "subtitles.item.honeycomb.wax_on" + }, + "item.spyglass.stop_using": { + "sounds": [ + { + "name": "squidcoder:item/spyglass/stop", + "volume": 0.5, + "pitch": 1 + }, + { + "name": "squidcoder:item/spyglass/stop", + "volume": 0.5, + "pitch": 0.9 + }, + { + "name": "squidcoder:item/spyglass/stop", + "volume": 0.5, + "pitch": 0.8 + } + ], + "subtitle": "subtitles.item.spyglass.stop_using" + }, + "item.spyglass.use": { + "sounds": [ + { + "name": "squidcoder:item/spyglass/use", + "volume": 0.5, + "pitch": 1.33 + }, + { + "name": "squidcoder:item/spyglass/use", + "volume": 0.5, + "pitch": 1.15 + }, + { + "name": "squidcoder:item/spyglass/use", + "volume": 0.5, + "pitch": 1.4 + }, + { + "name": "squidcoder:item/spyglass/use", + "volume": 0.5, + "pitch": 1.55 + } + ], + "subtitle": "subtitles.item.spyglass.use" + }, + + "music.under_water": { + "sounds": [ + { + "name": "squidcoder:music/game/water/shuniji", + "stream": true, + "volume": 0.4 + }, + { + "name": "squidcoder:music/game/water/dragon_fish", + "stream": true, + "volume": 0.4 + }, + { + "name": "squidcoder:music/game/water/axolotl", + "stream": true, + "volume": 0.4 + } + ] + }, + "music.overworld.dripstone_caves": { + "sounds": [ + { + "name": "squidcoder:music/game/an_ordinary_day", + "stream": true + }, + { + "name": "music/game/hal1", + "stream": true + }, + { + "name": "music/game/hal4", + "stream": true + }, + { + "name": "squidcoder:music/game/infinite_amethyst", + "stream": true, + "volume": 0.4 + }, + { + "name": "music/game/nuance1", + "stream": true + }, + { + "name": "music/game/nuance2", + "stream": true + }, + { + "name": "squidcoder:music/game/wending", + "stream": true, + "volume": 0.4, + "weight": 2 + } + ] + }, + "music.overworld.frozen_peaks": { + "sounds": [ + { + "name": "music/game/hal1", + "stream": true + }, + { + "name": "music/game/hal2", + "stream": true + }, + { + "name": "music/game/hal3", + "stream": true + }, + { + "name": "music/game/hal4", + "stream": true + }, + { + "name": "music/game/piano1", + "stream": true + }, + { + "name": "music/game/piano2", + "stream": true + }, + { + "name": "music/game/piano3", + "stream": true + }, + { + "name": "squidcoder:music/game/stand_tall", + "stream": true, + "volume": 0.4, + "weight": 2 + } + ] + }, + "music.overworld.grove": { + "sounds": [ + { + "name": "music/game/calm1", + "stream": true + }, + { + "name": "music/game/calm2", + "stream": true + }, + { + "name": "music/game/calm3", + "stream": true + }, + { + "name": "squidcoder:music/game/comforting_memories", + "stream": true, + "volume": 0.4 + }, + { + "name": "squidcoder:music/game/infinite_amethyst", + "stream": true, + "volume": 0.4 + }, + { + "name": "music/game/nuance1", + "stream": true + }, + { + "name": "music/game/nuance2", + "stream": true + }, + { + "name": "music/game/piano3", + "stream": true + }, + { + "name": "squidcoder:music/game/wending", + "stream": true, + "volume": 0.4 + } + ] + }, + "music.overworld.jagged_peaks": { + "sounds": [ + { + "name": "squidcoder:music/game/floating_dream", + "stream": true, + "volume": 0.4 + }, + { + "name": "music/game/hal1", + "stream": true + }, + { + "name": "music/game/hal2", + "stream": true + }, + { + "name": "music/game/nuance1", + "stream": true + }, + { + "name": "music/game/nuance2", + "stream": true + }, + { + "name": "music/game/piano1", + "stream": true + }, + { + "name": "music/game/piano2", + "stream": true + }, + { + "name": "music/game/piano3", + "stream": true + }, + { + "name": "squidcoder:music/game/stand_tall", + "stream": true, + "volume": 0.4 + }, + { + "name": "squidcoder:music/game/wending", + "stream": true, + "volume": 0.4 + } + ] + }, + "music.overworld.lush_caves": { + "sounds": [ + { + "name": "squidcoder:music/game/an_ordinary_day", + "stream": true + }, + { + "name": "music/game/calm1", + "stream": true + }, + { + "name": "music/game/calm2", + "stream": true + }, + { + "name": "music/game/calm3", + "stream": true + }, + { + "name": "squidcoder:music/game/floating_dream", + "stream": true + }, + { + "name": "squidcoder:music/game/left_to_bloom", + "stream": true, + "volume": 0.4, + "weight": 2 + }, + { + "name": "squidcoder:music/game/one_more_day", + "stream": true, + "volume": 0.4 + }, + { + "name": "music/game/piano3", + "stream": true + } + ] + }, + "music.overworld.meadow": { + "sounds": [ + { + "name": "music/game/hal1", + "stream": true + }, + { + "name": "music/game/hal2", + "stream": true + }, + { + "name": "music/game/hal3", + "stream": true + }, + { + "name": "music/game/hal4", + "stream": true + }, + { + "name": "squidcoder:music/game/left_to_bloom", + "stream": true, + "volume": 0.4 + }, + { + "name": "squidcoder:music/game/one_more_day", + "stream": true, + "volume": 0.4, + "weight": 2 + } + ] + }, + "music.overworld.snowy_slopes": { + "sounds": [ + { + "name": "squidcoder:music/game/an_ordinary_day", + "stream": true, + "volume": 0.4 + }, + { + "name": "music/game/hal1", + "stream": true + }, + { + "name": "music/game/hal2", + "stream": true + }, + { + "name": "music/game/hal3", + "stream": true + }, + { + "name": "squidcoder:music/game/one_more_day", + "stream": true, + "volume": 0.4 + }, + { + "name": "squidcoder:music/game/stand_tall", + "stream": true, + "volume": 0.4 + } + ] + }, + "music.overworld.stony_peaks": { + "sounds": [ + { + "name": "music/game/hal1", + "stream": true + }, + { + "name": "music/game/hal2", + "stream": true + }, + { + "name": "music/game/hal3", + "stream": true + }, + { + "name": "music/game/hal4", + "stream": true + }, + { + "name": "music/game/piano1", + "stream": true + }, + { + "name": "music/game/piano2", + "stream": true + }, + { + "name": "music/game/piano3", + "stream": true + }, + { + "name": "squidcoder:music/game/stand_tall", + "stream": true, + "volume": 0.4, + "weight": 2 + }, + { + "name": "squidcoder:music/game/wending", + "stream": true, + "volume": 0.4 + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/break1.ogg new file mode 100644 index 0000000..ad2a467 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/break2.ogg new file mode 100644 index 0000000..f89f1c1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/break3.ogg new file mode 100644 index 0000000..1a3db4c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/break4.ogg new file mode 100644 index 0000000..0cf7e24 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/place1.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/place1.ogg new file mode 100644 index 0000000..22dff24 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/place1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/place2.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/place2.ogg new file mode 100644 index 0000000..8c4d00c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/place2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/place3.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/place3.ogg new file mode 100644 index 0000000..2a82b9f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/place3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/place4.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/place4.ogg new file mode 100644 index 0000000..a3e5516 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/place4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/shimmer.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/shimmer.ogg new file mode 100644 index 0000000..c2eb097 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/shimmer.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step1.ogg new file mode 100644 index 0000000..56f90d5 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step10.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step10.ogg new file mode 100644 index 0000000..c109526 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step10.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step11.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step11.ogg new file mode 100644 index 0000000..39ea6df Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step11.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step12.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step12.ogg new file mode 100644 index 0000000..b07d55d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step12.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step13.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step13.ogg new file mode 100644 index 0000000..2d52ec6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step13.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step14.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step14.ogg new file mode 100644 index 0000000..acb17c0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step14.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step2.ogg new file mode 100644 index 0000000..58aeaaf Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step3.ogg new file mode 100644 index 0000000..5202d32 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step4.ogg new file mode 100644 index 0000000..329675b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step5.ogg new file mode 100644 index 0000000..5852061 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step6.ogg new file mode 100644 index 0000000..a04e171 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step7.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step7.ogg new file mode 100644 index 0000000..83b47e2 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step7.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step8.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step8.ogg new file mode 100644 index 0000000..9c274a3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step8.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst/step9.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step9.ogg new file mode 100644 index 0000000..74fc0fc Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst/step9.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/break1.ogg new file mode 100644 index 0000000..bcc32d5 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/break2.ogg new file mode 100644 index 0000000..9476e87 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/break3.ogg new file mode 100644 index 0000000..1247bfa Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/break4.ogg new file mode 100644 index 0000000..f8a40e8 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/place1.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/place1.ogg new file mode 100644 index 0000000..a153f77 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/place1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/place2.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/place2.ogg new file mode 100644 index 0000000..572df00 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/place2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/place3.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/place3.ogg new file mode 100644 index 0000000..d20e45b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/place3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/place4.ogg b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/place4.ogg new file mode 100644 index 0000000..5afbbd2 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/amethyst_cluster/place4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea/break1.ogg new file mode 100644 index 0000000..59ef0c9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea/break2.ogg new file mode 100644 index 0000000..2b9b391 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea/break3.ogg new file mode 100644 index 0000000..41566a1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea/break4.ogg new file mode 100644 index 0000000..104a237 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea/break5.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea/break5.ogg new file mode 100644 index 0000000..d05e395 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea/break5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea/break6.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea/break6.ogg new file mode 100644 index 0000000..e87b45d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea/break6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea/step1.ogg new file mode 100644 index 0000000..392ebd1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea/step2.ogg new file mode 100644 index 0000000..fba7af3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea/step3.ogg new file mode 100644 index 0000000..e5d490f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea/step4.ogg new file mode 100644 index 0000000..16ad39f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea/step5.ogg new file mode 100644 index 0000000..2fd9227 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea/step6.ogg new file mode 100644 index 0000000..d3573d2 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break1.ogg new file mode 100644 index 0000000..ac41361 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break2.ogg new file mode 100644 index 0000000..332945b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break3.ogg new file mode 100644 index 0000000..0b480e3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break4.ogg new file mode 100644 index 0000000..3eee4c1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break5.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break5.ogg new file mode 100644 index 0000000..eb2dfbb Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break6.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break6.ogg new file mode 100644 index 0000000..dee2a7d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break7.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break7.ogg new file mode 100644 index 0000000..2ca4205 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/break7.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step1.ogg new file mode 100644 index 0000000..7ecd0d4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step2.ogg new file mode 100644 index 0000000..260e206 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step3.ogg new file mode 100644 index 0000000..6ad2abe Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step4.ogg new file mode 100644 index 0000000..f8567be Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step5.ogg new file mode 100644 index 0000000..59fb0a6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/azalea_leaves/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break1.ogg new file mode 100644 index 0000000..0816332 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break2.ogg new file mode 100644 index 0000000..425ca59 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break3.ogg new file mode 100644 index 0000000..8cf4701 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break4.ogg new file mode 100644 index 0000000..f723553 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break5.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break5.ogg new file mode 100644 index 0000000..3d082b2 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break6.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break6.ogg new file mode 100644 index 0000000..63288d3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/break6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step1.ogg new file mode 100644 index 0000000..eb5de41 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step2.ogg new file mode 100644 index 0000000..78fd07c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step3.ogg new file mode 100644 index 0000000..d0c04eb Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step4.ogg new file mode 100644 index 0000000..dcc244d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step5.ogg new file mode 100644 index 0000000..8fd7da2 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step6.ogg new file mode 100644 index 0000000..160cf53 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down1.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down1.ogg new file mode 100644 index 0000000..5dc8e1f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down2.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down2.ogg new file mode 100644 index 0000000..25e256e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down3.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down3.ogg new file mode 100644 index 0000000..f07fce5 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down4.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down4.ogg new file mode 100644 index 0000000..569cfbd Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down5.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down5.ogg new file mode 100644 index 0000000..38a02ca Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_down5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_up1.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_up1.ogg new file mode 100644 index 0000000..813d5da Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_up1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_up2.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_up2.ogg new file mode 100644 index 0000000..b4affc7 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_up2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_up3.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_up3.ogg new file mode 100644 index 0000000..c8d90e9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_up3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_up4.ogg b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_up4.ogg new file mode 100644 index 0000000..e68cd33 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/big_dripleaf/tilt_up4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/break1.ogg new file mode 100644 index 0000000..67b119a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/break2.ogg new file mode 100644 index 0000000..f835bcc Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/break3.ogg new file mode 100644 index 0000000..1c21fb4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/break4.ogg new file mode 100644 index 0000000..3839f06 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/place1.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/place1.ogg new file mode 100644 index 0000000..82f0726 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/place1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/place2.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/place2.ogg new file mode 100644 index 0000000..3835abe Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/place2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/place3.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/place3.ogg new file mode 100644 index 0000000..695df02 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/place3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/place4.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/place4.ogg new file mode 100644 index 0000000..4898cb4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/place4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/step1.ogg new file mode 100644 index 0000000..35e36be Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/step2.ogg new file mode 100644 index 0000000..fad343e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/step3.ogg new file mode 100644 index 0000000..7863f0a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/step4.ogg new file mode 100644 index 0000000..3aef7a4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/step5.ogg new file mode 100644 index 0000000..8d13d50 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/calcite/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/calcite/step6.ogg new file mode 100644 index 0000000..8b7a89e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/calcite/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/ambient1.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient1.ogg new file mode 100644 index 0000000..7fc606b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/ambient2.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient2.ogg new file mode 100644 index 0000000..90c0bbb Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/ambient3.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient3.ogg new file mode 100644 index 0000000..495e753 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/ambient4.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient4.ogg new file mode 100644 index 0000000..90ed620 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/ambient5.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient5.ogg new file mode 100644 index 0000000..8e1a105 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/ambient6.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient6.ogg new file mode 100644 index 0000000..360a1af Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/ambient7.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient7.ogg new file mode 100644 index 0000000..8bc41ac Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient7.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/ambient8.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient8.ogg new file mode 100644 index 0000000..da6926b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient8.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/ambient9.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient9.ogg new file mode 100644 index 0000000..e7443c4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/ambient9.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/break1.ogg new file mode 100644 index 0000000..d3c2405 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/break2.ogg new file mode 100644 index 0000000..3f9bfc6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/break3.ogg new file mode 100644 index 0000000..4b80e63 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/break4.ogg new file mode 100644 index 0000000..6c7ff09 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/break5.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/break5.ogg new file mode 100644 index 0000000..c1726be Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/break5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/extinguish1.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/extinguish1.ogg new file mode 100644 index 0000000..47477b8 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/extinguish1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/extinguish2.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/extinguish2.ogg new file mode 100644 index 0000000..42736ec Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/extinguish2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/extinguish3.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/extinguish3.ogg new file mode 100644 index 0000000..a54531e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/extinguish3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/step1.ogg new file mode 100644 index 0000000..56d33f2 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/step2.ogg new file mode 100644 index 0000000..373d011 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/step3.ogg new file mode 100644 index 0000000..6309ce8 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/step4.ogg new file mode 100644 index 0000000..162bb9d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/candle/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/candle/step5.ogg new file mode 100644 index 0000000..466a2c1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/candle/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break1.ogg new file mode 100644 index 0000000..ec6419e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break2.ogg new file mode 100644 index 0000000..d2d6685 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break3.ogg new file mode 100644 index 0000000..6d44eaa Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break4.ogg new file mode 100644 index 0000000..67ea18b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break5.ogg b/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break5.ogg new file mode 100644 index 0000000..9eff201 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/cave_vines/break5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/copper/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/copper/break1.ogg new file mode 100644 index 0000000..e48133f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/copper/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/copper/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/copper/break2.ogg new file mode 100644 index 0000000..efd70af Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/copper/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/copper/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/copper/break3.ogg new file mode 100644 index 0000000..294b055 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/copper/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/copper/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/copper/break4.ogg new file mode 100644 index 0000000..0cc51bb Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/copper/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/copper/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/copper/step1.ogg new file mode 100644 index 0000000..ed39e66 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/copper/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/copper/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/copper/step2.ogg new file mode 100644 index 0000000..60cd877 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/copper/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/copper/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/copper/step3.ogg new file mode 100644 index 0000000..d07ae8f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/copper/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/copper/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/copper/step4.ogg new file mode 100644 index 0000000..2abd4ab Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/copper/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/copper/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/copper/step5.ogg new file mode 100644 index 0000000..d2f8529 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/copper/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/copper/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/copper/step6.ogg new file mode 100644 index 0000000..5c9e3f7 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/copper/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/break1.ogg new file mode 100644 index 0000000..ad01e39 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/break2.ogg new file mode 100644 index 0000000..09b4703 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/break3.ogg new file mode 100644 index 0000000..60d141e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/break4.ogg new file mode 100644 index 0000000..54afbee Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/place1.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/place1.ogg new file mode 100644 index 0000000..fa81125 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/place1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/place2.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/place2.ogg new file mode 100644 index 0000000..8cf936c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/place2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/place3.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/place3.ogg new file mode 100644 index 0000000..0fd705a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/place3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/place4.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/place4.ogg new file mode 100644 index 0000000..501163c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/place4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/place5.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/place5.ogg new file mode 100644 index 0000000..6ae31b0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/place5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/place6.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/place6.ogg new file mode 100644 index 0000000..28f06ee Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/place6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/step1.ogg new file mode 100644 index 0000000..d86e7fc Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/step2.ogg new file mode 100644 index 0000000..a0d36af Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/step3.ogg new file mode 100644 index 0000000..a3eeb58 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/step4.ogg new file mode 100644 index 0000000..0577025 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/step5.ogg new file mode 100644 index 0000000..36280f9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate/step6.ogg new file mode 100644 index 0000000..97fbb26 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place1.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place1.ogg new file mode 100644 index 0000000..ab27751 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place2.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place2.ogg new file mode 100644 index 0000000..a93618a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place3.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place3.ogg new file mode 100644 index 0000000..4d31bed Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place4.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place4.ogg new file mode 100644 index 0000000..3509a3a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place5.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place5.ogg new file mode 100644 index 0000000..bf0a468 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place6.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place6.ogg new file mode 100644 index 0000000..827c8fb Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/place6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step1.ogg new file mode 100644 index 0000000..a507766 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step2.ogg new file mode 100644 index 0000000..fb08cca Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step3.ogg new file mode 100644 index 0000000..8444303 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step4.ogg new file mode 100644 index 0000000..5c80723 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step5.ogg new file mode 100644 index 0000000..5378612 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/deepslate_bricks/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/dripstone/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/dripstone/break1.ogg new file mode 100644 index 0000000..c6f6ce9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/dripstone/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/dripstone/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/dripstone/break2.ogg new file mode 100644 index 0000000..cf7b614 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/dripstone/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/dripstone/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/dripstone/break3.ogg new file mode 100644 index 0000000..3550123 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/dripstone/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/dripstone/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/dripstone/break4.ogg new file mode 100644 index 0000000..32b38f8 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/dripstone/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/dripstone/break5.ogg b/src/main/resources/assets/squidcoder/sounds/block/dripstone/break5.ogg new file mode 100644 index 0000000..079af83 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/dripstone/break5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/dripstone/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/dripstone/step1.ogg new file mode 100644 index 0000000..5ff7e15 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/dripstone/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/dripstone/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/dripstone/step2.ogg new file mode 100644 index 0000000..c619273 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/dripstone/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/dripstone/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/dripstone/step3.ogg new file mode 100644 index 0000000..daec0b4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/dripstone/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/dripstone/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/dripstone/step4.ogg new file mode 100644 index 0000000..5969cde Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/dripstone/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/dripstone/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/dripstone/step5.ogg new file mode 100644 index 0000000..0baaa79 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/dripstone/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/dripstone/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/dripstone/step6.ogg new file mode 100644 index 0000000..6a29d44 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/dripstone/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/break1.ogg new file mode 100644 index 0000000..dce9648 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/break2.ogg new file mode 100644 index 0000000..e71a430 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/break3.ogg new file mode 100644 index 0000000..1649692 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/break4.ogg new file mode 100644 index 0000000..0439094 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step1.ogg new file mode 100644 index 0000000..37f5dd3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step2.ogg new file mode 100644 index 0000000..4fbcf63 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step3.ogg new file mode 100644 index 0000000..253b3e4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step4.ogg new file mode 100644 index 0000000..bf3cfad Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step5.ogg new file mode 100644 index 0000000..8fef649 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step6.ogg new file mode 100644 index 0000000..467d6fe Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/hanging_roots/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/moss/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/moss/break1.ogg new file mode 100644 index 0000000..65d824c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/moss/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/moss/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/moss/break2.ogg new file mode 100644 index 0000000..9c0d45c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/moss/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/moss/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/moss/break3.ogg new file mode 100644 index 0000000..cd1d1fb Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/moss/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/moss/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/moss/break4.ogg new file mode 100644 index 0000000..f65b712 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/moss/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/moss/break5.ogg b/src/main/resources/assets/squidcoder/sounds/block/moss/break5.ogg new file mode 100644 index 0000000..977e8db Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/moss/break5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/moss/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/moss/step1.ogg new file mode 100644 index 0000000..4f409cd Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/moss/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/moss/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/moss/step2.ogg new file mode 100644 index 0000000..ed5a5e6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/moss/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/moss/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/moss/step3.ogg new file mode 100644 index 0000000..7c22838 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/moss/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/moss/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/moss/step4.ogg new file mode 100644 index 0000000..9d1fa4d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/moss/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/moss/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/moss/step5.ogg new file mode 100644 index 0000000..b77930c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/moss/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/moss/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/moss/step6.ogg new file mode 100644 index 0000000..25e49d1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/moss/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava1.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava1.ogg new file mode 100644 index 0000000..65684d6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava2.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava2.ogg new file mode 100644 index 0000000..88b6781 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava3.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava3.ogg new file mode 100644 index 0000000..2be1278 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava4.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava4.ogg new file mode 100644 index 0000000..79e0f19 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava5.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava5.ogg new file mode 100644 index 0000000..1821d01 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava6.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava6.ogg new file mode 100644 index 0000000..1dae169 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava_cauldron1.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava_cauldron1.ogg new file mode 100644 index 0000000..3ef71de Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava_cauldron1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava_cauldron2.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava_cauldron2.ogg new file mode 100644 index 0000000..ee6332d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava_cauldron2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava_cauldron3.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava_cauldron3.ogg new file mode 100644 index 0000000..6d8b4c5 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava_cauldron3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava_cauldron4.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava_cauldron4.ogg new file mode 100644 index 0000000..417e234 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_lava_cauldron4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water1.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water1.ogg new file mode 100644 index 0000000..c04fe8b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water10.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water10.ogg new file mode 100644 index 0000000..8bb22a2 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water10.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water11.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water11.ogg new file mode 100644 index 0000000..053a3f9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water11.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water12.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water12.ogg new file mode 100644 index 0000000..90f205d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water12.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water13.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water13.ogg new file mode 100644 index 0000000..a561c85 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water13.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water14.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water14.ogg new file mode 100644 index 0000000..5db882b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water14.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water15.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water15.ogg new file mode 100644 index 0000000..5c03914 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water15.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water2.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water2.ogg new file mode 100644 index 0000000..fb06012 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water3.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water3.ogg new file mode 100644 index 0000000..d2ab2dd Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water4.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water4.ogg new file mode 100644 index 0000000..e98bfc6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water5.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water5.ogg new file mode 100644 index 0000000..a5f22e9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water6.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water6.ogg new file mode 100644 index 0000000..b7ce1a8 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water7.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water7.ogg new file mode 100644 index 0000000..f9a863d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water7.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water8.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water8.ogg new file mode 100644 index 0000000..72a263f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water8.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water9.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water9.ogg new file mode 100644 index 0000000..560f7c7 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water9.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron1.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron1.ogg new file mode 100644 index 0000000..be9d64f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron2.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron2.ogg new file mode 100644 index 0000000..ba854b1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron3.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron3.ogg new file mode 100644 index 0000000..de71979 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron4.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron4.ogg new file mode 100644 index 0000000..866caac Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron5.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron5.ogg new file mode 100644 index 0000000..2b04c69 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron6.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron6.ogg new file mode 100644 index 0000000..eb8189f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron7.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron7.ogg new file mode 100644 index 0000000..b5c4498 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron7.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron8.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron8.ogg new file mode 100644 index 0000000..a3c7a8f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/drip_water_cauldron8.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land1.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land1.ogg new file mode 100644 index 0000000..2a23f82 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land2.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land2.ogg new file mode 100644 index 0000000..f9946dd Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land3.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land3.ogg new file mode 100644 index 0000000..95ea60b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land4.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land4.ogg new file mode 100644 index 0000000..83b14be Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land5.ogg b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land5.ogg new file mode 100644 index 0000000..d3f4d2f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/pointed_dripstone/land5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break1.ogg new file mode 100644 index 0000000..8a80749 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break2.ogg new file mode 100644 index 0000000..a48299b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break3.ogg new file mode 100644 index 0000000..6558aa1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break4.ogg new file mode 100644 index 0000000..7e009c3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break5.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break5.ogg new file mode 100644 index 0000000..d73c136 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break6.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break6.ogg new file mode 100644 index 0000000..b1f31b5 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break7.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break7.ogg new file mode 100644 index 0000000..f48c925 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/break7.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step1.ogg new file mode 100644 index 0000000..543f200 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step10.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step10.ogg new file mode 100644 index 0000000..8139131 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step10.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step2.ogg new file mode 100644 index 0000000..6978f71 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step3.ogg new file mode 100644 index 0000000..a0e4637 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step4.ogg new file mode 100644 index 0000000..db4f49c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step5.ogg new file mode 100644 index 0000000..a43e576 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step6.ogg new file mode 100644 index 0000000..14ee79b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step7.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step7.ogg new file mode 100644 index 0000000..43419df Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step7.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step8.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step8.ogg new file mode 100644 index 0000000..5987c79 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step8.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step9.ogg b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step9.ogg new file mode 100644 index 0000000..f59a5a0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/powder_snow/step9.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/break1.ogg new file mode 100644 index 0000000..6409b17 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/break2.ogg new file mode 100644 index 0000000..96a5eb9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/break3.ogg new file mode 100644 index 0000000..39ffb1a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/break4.ogg new file mode 100644 index 0000000..dbe4c75 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step1.ogg new file mode 100644 index 0000000..73c7b40 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step2.ogg new file mode 100644 index 0000000..a0e7abe Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step3.ogg new file mode 100644 index 0000000..9058e9d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step4.ogg new file mode 100644 index 0000000..f45e637 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step5.ogg new file mode 100644 index 0000000..7032965 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step6.ogg new file mode 100644 index 0000000..370ab4e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/rooted_dirt/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/roots/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/roots/break1.ogg new file mode 100644 index 0000000..0cb626f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/roots/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/roots/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/roots/break2.ogg new file mode 100644 index 0000000..8d9639a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/roots/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/roots/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/roots/break3.ogg new file mode 100644 index 0000000..a7ae44e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/roots/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/roots/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/roots/break4.ogg new file mode 100644 index 0000000..8ae9517 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/roots/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/roots/break5.ogg b/src/main/resources/assets/squidcoder/sounds/block/roots/break5.ogg new file mode 100644 index 0000000..3ebd385 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/roots/break5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/roots/break6.ogg b/src/main/resources/assets/squidcoder/sounds/block/roots/break6.ogg new file mode 100644 index 0000000..d233a40 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/roots/break6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/roots/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/roots/step1.ogg new file mode 100644 index 0000000..206445b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/roots/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/roots/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/roots/step2.ogg new file mode 100644 index 0000000..a36b3bd Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/roots/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/roots/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/roots/step3.ogg new file mode 100644 index 0000000..a6a22a6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/roots/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/roots/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/roots/step4.ogg new file mode 100644 index 0000000..6082761 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/roots/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/roots/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/roots/step5.ogg new file mode 100644 index 0000000..7ec0a77 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/roots/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk/step1.ogg new file mode 100644 index 0000000..7345614 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk/step2.ogg new file mode 100644 index 0000000..f7be3a5 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk/step3.ogg new file mode 100644 index 0000000..331229b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk/step4.ogg new file mode 100644 index 0000000..b6dd932 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk/step5.ogg new file mode 100644 index 0000000..77f3f0d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk/step6.ogg new file mode 100644 index 0000000..60a5899 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break1.ogg new file mode 100644 index 0000000..34dc72f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break2.ogg new file mode 100644 index 0000000..f914e6c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break3.ogg new file mode 100644 index 0000000..2eac235 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break4.ogg new file mode 100644 index 0000000..642fae5 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break5.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break5.ogg new file mode 100644 index 0000000..77b5823 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/break5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place1.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place1.ogg new file mode 100644 index 0000000..66f8abd Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place2.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place2.ogg new file mode 100644 index 0000000..c2c0c0e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place3.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place3.ogg new file mode 100644 index 0000000..edba16e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place4.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place4.ogg new file mode 100644 index 0000000..d453e26 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place5.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place5.ogg new file mode 100644 index 0000000..7e71d66 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/place5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking1.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking1.ogg new file mode 100644 index 0000000..03bd68b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking2.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking2.ogg new file mode 100644 index 0000000..16e2a8f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking3.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking3.ogg new file mode 100644 index 0000000..95143e7 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking4.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking4.ogg new file mode 100644 index 0000000..f390b6c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking5.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking5.ogg new file mode 100644 index 0000000..cf08791 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking6.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking6.ogg new file mode 100644 index 0000000..9b0f728 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop1.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop1.ogg new file mode 100644 index 0000000..0226648 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop2.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop2.ogg new file mode 100644 index 0000000..09d66af Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop3.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop3.ogg new file mode 100644 index 0000000..acdb80d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop4.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop4.ogg new file mode 100644 index 0000000..4638e6e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop5.ogg b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop5.ogg new file mode 100644 index 0000000..9b68d5a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/sculk_sensor/sculk_clicking_stop5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break1.ogg new file mode 100644 index 0000000..74dbb41 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break2.ogg new file mode 100644 index 0000000..211e250 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break3.ogg new file mode 100644 index 0000000..22bb798 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break4.ogg new file mode 100644 index 0000000..feeb89e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break5.ogg b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break5.ogg new file mode 100644 index 0000000..48f1994 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/break5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step1.ogg new file mode 100644 index 0000000..f3f50fa Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step2.ogg new file mode 100644 index 0000000..c5a7bc6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step3.ogg new file mode 100644 index 0000000..7e508aa Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step4.ogg new file mode 100644 index 0000000..7939a14 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step5.ogg new file mode 100644 index 0000000..d1d0f34 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step6.ogg new file mode 100644 index 0000000..02af3ee Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/spore_blossom/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/tuff/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/tuff/break1.ogg new file mode 100644 index 0000000..4422a49 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/tuff/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/tuff/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/tuff/break2.ogg new file mode 100644 index 0000000..d6b89fd Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/tuff/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/tuff/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/tuff/break3.ogg new file mode 100644 index 0000000..26d6301 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/tuff/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/tuff/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/tuff/break4.ogg new file mode 100644 index 0000000..8476bd4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/tuff/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/tuff/break5.ogg b/src/main/resources/assets/squidcoder/sounds/block/tuff/break5.ogg new file mode 100644 index 0000000..ac9b6ed Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/tuff/break5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/tuff/step1.ogg b/src/main/resources/assets/squidcoder/sounds/block/tuff/step1.ogg new file mode 100644 index 0000000..adbd95e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/tuff/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/tuff/step2.ogg b/src/main/resources/assets/squidcoder/sounds/block/tuff/step2.ogg new file mode 100644 index 0000000..b27b968 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/tuff/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/tuff/step3.ogg b/src/main/resources/assets/squidcoder/sounds/block/tuff/step3.ogg new file mode 100644 index 0000000..c7eec08 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/tuff/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/tuff/step4.ogg b/src/main/resources/assets/squidcoder/sounds/block/tuff/step4.ogg new file mode 100644 index 0000000..e2b670a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/tuff/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/tuff/step5.ogg b/src/main/resources/assets/squidcoder/sounds/block/tuff/step5.ogg new file mode 100644 index 0000000..e3fda4c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/tuff/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/tuff/step6.ogg b/src/main/resources/assets/squidcoder/sounds/block/tuff/step6.ogg new file mode 100644 index 0000000..93bc123 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/tuff/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/vine/break1.ogg b/src/main/resources/assets/squidcoder/sounds/block/vine/break1.ogg new file mode 100644 index 0000000..9aebeca Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/vine/break1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/vine/break2.ogg b/src/main/resources/assets/squidcoder/sounds/block/vine/break2.ogg new file mode 100644 index 0000000..1c81d9e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/vine/break2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/vine/break3.ogg b/src/main/resources/assets/squidcoder/sounds/block/vine/break3.ogg new file mode 100644 index 0000000..84e786e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/vine/break3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/vine/break4.ogg b/src/main/resources/assets/squidcoder/sounds/block/vine/break4.ogg new file mode 100644 index 0000000..555e6ae Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/vine/break4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/vine/climb1.ogg b/src/main/resources/assets/squidcoder/sounds/block/vine/climb1.ogg new file mode 100644 index 0000000..8bc9de9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/vine/climb1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/vine/climb2.ogg b/src/main/resources/assets/squidcoder/sounds/block/vine/climb2.ogg new file mode 100644 index 0000000..ab23727 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/vine/climb2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/vine/climb3.ogg b/src/main/resources/assets/squidcoder/sounds/block/vine/climb3.ogg new file mode 100644 index 0000000..47bd681 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/vine/climb3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/vine/climb4.ogg b/src/main/resources/assets/squidcoder/sounds/block/vine/climb4.ogg new file mode 100644 index 0000000..ad09052 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/vine/climb4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/block/vine/climb5.ogg b/src/main/resources/assets/squidcoder/sounds/block/vine/climb5.ogg new file mode 100644 index 0000000..d74ca28 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/block/vine/climb5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient1.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient1.ogg new file mode 100644 index 0000000..b27a4ca Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient2.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient2.ogg new file mode 100644 index 0000000..c1552c2 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient3.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient3.ogg new file mode 100644 index 0000000..63d38b6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient4.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient4.ogg new file mode 100644 index 0000000..787cd78 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient5.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient5.ogg new file mode 100644 index 0000000..2f2e986 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/ambient5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/death1.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/death1.ogg new file mode 100644 index 0000000..1be784c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/death1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/death2.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/death2.ogg new file mode 100644 index 0000000..6d4799f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/death2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/death3.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/death3.ogg new file mode 100644 index 0000000..7646962 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/death3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/hurt1.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/hurt1.ogg new file mode 100644 index 0000000..cfd4f4a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/hurt1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/hurt2.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/hurt2.ogg new file mode 100644 index 0000000..d3ef2f3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/hurt2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/hurt3.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/hurt3.ogg new file mode 100644 index 0000000..6e7de95 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/hurt3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/hurt4.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/hurt4.ogg new file mode 100644 index 0000000..da1563a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/hurt4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/squirt1.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/squirt1.ogg new file mode 100644 index 0000000..85bd3ea Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/squirt1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/squirt2.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/squirt2.ogg new file mode 100644 index 0000000..4254a2d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/squirt2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/squirt3.ogg b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/squirt3.ogg new file mode 100644 index 0000000..aadd836 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/entity/glow_squid/squirt3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/axe/scrape1.ogg b/src/main/resources/assets/squidcoder/sounds/item/axe/scrape1.ogg new file mode 100644 index 0000000..fd3f783 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/axe/scrape1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/axe/scrape2.ogg b/src/main/resources/assets/squidcoder/sounds/item/axe/scrape2.ogg new file mode 100644 index 0000000..9c10a22 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/axe/scrape2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/axe/scrape3.ogg b/src/main/resources/assets/squidcoder/sounds/item/axe/scrape3.ogg new file mode 100644 index 0000000..f460040 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/axe/scrape3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/axe/wax_off1.ogg b/src/main/resources/assets/squidcoder/sounds/item/axe/wax_off1.ogg new file mode 100644 index 0000000..480136f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/axe/wax_off1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/axe/wax_off2.ogg b/src/main/resources/assets/squidcoder/sounds/item/axe/wax_off2.ogg new file mode 100644 index 0000000..bb9e3c6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/axe/wax_off2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/axe/wax_off3.ogg b/src/main/resources/assets/squidcoder/sounds/item/axe/wax_off3.ogg new file mode 100644 index 0000000..674551f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/axe/wax_off3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal1.ogg b/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal1.ogg new file mode 100644 index 0000000..236c103 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal2.ogg b/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal2.ogg new file mode 100644 index 0000000..f2ca865 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal3.ogg b/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal3.ogg new file mode 100644 index 0000000..3d146b6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal4.ogg b/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal4.ogg new file mode 100644 index 0000000..0474286 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal5.ogg b/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal5.ogg new file mode 100644 index 0000000..aa61600 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/bonemeal/bonemeal5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/bucket/empty_powder_snow1.ogg b/src/main/resources/assets/squidcoder/sounds/item/bucket/empty_powder_snow1.ogg new file mode 100644 index 0000000..ad7af65 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/bucket/empty_powder_snow1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/bucket/empty_powder_snow2.ogg b/src/main/resources/assets/squidcoder/sounds/item/bucket/empty_powder_snow2.ogg new file mode 100644 index 0000000..eb7d52f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/bucket/empty_powder_snow2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_axolotl1.ogg b/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_axolotl1.ogg new file mode 100644 index 0000000..99d51b1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_axolotl1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_axolotl2.ogg b/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_axolotl2.ogg new file mode 100644 index 0000000..e214a05 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_axolotl2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_axolotl3.ogg b/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_axolotl3.ogg new file mode 100644 index 0000000..e8238ab Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_axolotl3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_powder_snow1.ogg b/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_powder_snow1.ogg new file mode 100644 index 0000000..56f99aa Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_powder_snow1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_powder_snow2.ogg b/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_powder_snow2.ogg new file mode 100644 index 0000000..1d508b6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/bucket/fill_powder_snow2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/honeycomb/wax_on1.ogg b/src/main/resources/assets/squidcoder/sounds/item/honeycomb/wax_on1.ogg new file mode 100644 index 0000000..305e4be Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/honeycomb/wax_on1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/honeycomb/wax_on2.ogg b/src/main/resources/assets/squidcoder/sounds/item/honeycomb/wax_on2.ogg new file mode 100644 index 0000000..8d2d4fb Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/honeycomb/wax_on2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/honeycomb/wax_on3.ogg b/src/main/resources/assets/squidcoder/sounds/item/honeycomb/wax_on3.ogg new file mode 100644 index 0000000..818c730 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/honeycomb/wax_on3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/spyglass/stop.ogg b/src/main/resources/assets/squidcoder/sounds/item/spyglass/stop.ogg new file mode 100644 index 0000000..7c70c97 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/spyglass/stop.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/item/spyglass/use.ogg b/src/main/resources/assets/squidcoder/sounds/item/spyglass/use.ogg new file mode 100644 index 0000000..1d9b695 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/item/spyglass/use.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/attack1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/attack1.ogg new file mode 100644 index 0000000..ccd6fa5 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/attack1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/attack2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/attack2.ogg new file mode 100644 index 0000000..5106504 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/attack2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/attack3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/attack3.ogg new file mode 100644 index 0000000..d51b3fc Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/attack3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/attack4.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/attack4.ogg new file mode 100644 index 0000000..c370b1e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/attack4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/death1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/death1.ogg new file mode 100644 index 0000000..b1672e4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/death1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/death2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/death2.ogg new file mode 100644 index 0000000..8557692 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/death2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/hurt1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/hurt1.ogg new file mode 100644 index 0000000..758cd61 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/hurt1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/hurt2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/hurt2.ogg new file mode 100644 index 0000000..6a98199 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/hurt2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/hurt3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/hurt3.ogg new file mode 100644 index 0000000..539cc70 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/hurt3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/hurt4.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/hurt4.ogg new file mode 100644 index 0000000..672bd54 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/hurt4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle1.ogg new file mode 100644 index 0000000..617e674 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle2.ogg new file mode 100644 index 0000000..a2683ad Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle3.ogg new file mode 100644 index 0000000..4ca6d9c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle4.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle4.ogg new file mode 100644 index 0000000..307b3e3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle5.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle5.ogg new file mode 100644 index 0000000..d6a86eb Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air1.ogg new file mode 100644 index 0000000..9be3507 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air2.ogg new file mode 100644 index 0000000..2ab2e56 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air3.ogg new file mode 100644 index 0000000..1ca8dc2 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air4.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air4.ogg new file mode 100644 index 0000000..4cb0039 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air5.ogg b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air5.ogg new file mode 100644 index 0000000..6b120fb Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/axolotl/idle_air5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/death1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/death1.ogg new file mode 100644 index 0000000..67ce9f0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/death1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/death2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/death2.ogg new file mode 100644 index 0000000..694b8d9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/death2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/death3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/death3.ogg new file mode 100644 index 0000000..80e4173 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/death3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/death4.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/death4.ogg new file mode 100644 index 0000000..55c532b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/death4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/death5.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/death5.ogg new file mode 100644 index 0000000..55adfb1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/death5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/eat1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/eat1.ogg new file mode 100644 index 0000000..a534625 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/eat1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/eat2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/eat2.ogg new file mode 100644 index 0000000..077425d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/eat2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/eat3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/eat3.ogg new file mode 100644 index 0000000..3fa5039 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/eat3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/hurt1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/hurt1.ogg new file mode 100644 index 0000000..8314bba Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/hurt1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/hurt2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/hurt2.ogg new file mode 100644 index 0000000..cf352c5 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/hurt2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/hurt3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/hurt3.ogg new file mode 100644 index 0000000..5267dcf Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/hurt3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/hurt4.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/hurt4.ogg new file mode 100644 index 0000000..08e5e6c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/hurt4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/idle1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle1.ogg new file mode 100644 index 0000000..cd2159b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/idle2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle2.ogg new file mode 100644 index 0000000..f5f3201 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/idle3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle3.ogg new file mode 100644 index 0000000..da831a0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/idle4.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle4.ogg new file mode 100644 index 0000000..7352b79 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/idle5.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle5.ogg new file mode 100644 index 0000000..1ff09c4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/idle6.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle6.ogg new file mode 100644 index 0000000..efc8fed Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/idle7.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle7.ogg new file mode 100644 index 0000000..8b59e8d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle7.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/idle8.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle8.ogg new file mode 100644 index 0000000..dfc494f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/idle8.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/impact1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/impact1.ogg new file mode 100644 index 0000000..41772d1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/impact1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/impact2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/impact2.ogg new file mode 100644 index 0000000..281ff7a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/impact2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/impact3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/impact3.ogg new file mode 100644 index 0000000..718daca Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/impact3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/jump1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/jump1.ogg new file mode 100644 index 0000000..26e58a9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/jump1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/jump2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/jump2.ogg new file mode 100644 index 0000000..c7270e8 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/jump2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/pre_ram1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/pre_ram1.ogg new file mode 100644 index 0000000..321718e Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/pre_ram1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/pre_ram2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/pre_ram2.ogg new file mode 100644 index 0000000..3168f7d Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/pre_ram2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/pre_ram3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/pre_ram3.ogg new file mode 100644 index 0000000..0d01faa Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/pre_ram3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/pre_ram4.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/pre_ram4.ogg new file mode 100644 index 0000000..586fe3f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/pre_ram4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/scream1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream1.ogg new file mode 100644 index 0000000..da313a4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/scream2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream2.ogg new file mode 100644 index 0000000..8d5ab73 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/scream3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream3.ogg new file mode 100644 index 0000000..34eb6cf Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/scream4.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream4.ogg new file mode 100644 index 0000000..dfab4a0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/scream5.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream5.ogg new file mode 100644 index 0000000..75e8e2f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/scream6.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream6.ogg new file mode 100644 index 0000000..b941066 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/scream7.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream7.ogg new file mode 100644 index 0000000..28613de Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream7.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/scream8.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream8.ogg new file mode 100644 index 0000000..8402274 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream8.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/scream9.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream9.ogg new file mode 100644 index 0000000..4fde633 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/scream9.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_death1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_death1.ogg new file mode 100644 index 0000000..4ffc119 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_death1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_death2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_death2.ogg new file mode 100644 index 0000000..9963dc8 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_death2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_death3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_death3.ogg new file mode 100644 index 0000000..e4a0a4b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_death3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_hurt1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_hurt1.ogg new file mode 100644 index 0000000..4452322 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_hurt1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_hurt2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_hurt2.ogg new file mode 100644 index 0000000..2a35337 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_hurt2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_hurt3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_hurt3.ogg new file mode 100644 index 0000000..a7943a7 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_hurt3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk1.ogg new file mode 100644 index 0000000..27e8977 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk2.ogg new file mode 100644 index 0000000..2b30be0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk3.ogg new file mode 100644 index 0000000..73d3dbf Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk4.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk4.ogg new file mode 100644 index 0000000..a1f6b81 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk5.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk5.ogg new file mode 100644 index 0000000..bc7abf1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_milk5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram1.ogg new file mode 100644 index 0000000..807137b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram2.ogg new file mode 100644 index 0000000..e851d57 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram3.ogg new file mode 100644 index 0000000..b9f6078 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram4.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram4.ogg new file mode 100644 index 0000000..ddf177b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram5.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram5.ogg new file mode 100644 index 0000000..ec5ef8a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/screaming_pre_ram5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/step1.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/step1.ogg new file mode 100644 index 0000000..4b3780a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/step1.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/step2.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/step2.ogg new file mode 100644 index 0000000..a57266a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/step2.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/step3.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/step3.ogg new file mode 100644 index 0000000..aace031 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/step3.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/step4.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/step4.ogg new file mode 100644 index 0000000..b074394 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/step4.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/step5.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/step5.ogg new file mode 100644 index 0000000..d61596f Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/step5.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/mob/goat/step6.ogg b/src/main/resources/assets/squidcoder/sounds/mob/goat/step6.ogg new file mode 100644 index 0000000..a96e62a Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/mob/goat/step6.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/music/game/an_ordinary_day.ogg b/src/main/resources/assets/squidcoder/sounds/music/game/an_ordinary_day.ogg new file mode 100644 index 0000000..329bce9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/music/game/an_ordinary_day.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/music/game/comforting_memories.ogg b/src/main/resources/assets/squidcoder/sounds/music/game/comforting_memories.ogg new file mode 100644 index 0000000..cefb401 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/music/game/comforting_memories.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/music/game/floating_dream.ogg b/src/main/resources/assets/squidcoder/sounds/music/game/floating_dream.ogg new file mode 100644 index 0000000..4d10598 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/music/game/floating_dream.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/music/game/infinite_amethyst.ogg b/src/main/resources/assets/squidcoder/sounds/music/game/infinite_amethyst.ogg new file mode 100644 index 0000000..b6d95ac Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/music/game/infinite_amethyst.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/music/game/left_to_bloom.ogg b/src/main/resources/assets/squidcoder/sounds/music/game/left_to_bloom.ogg new file mode 100644 index 0000000..fff217c Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/music/game/left_to_bloom.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/music/game/one_more_day.ogg b/src/main/resources/assets/squidcoder/sounds/music/game/one_more_day.ogg new file mode 100644 index 0000000..3381aa2 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/music/game/one_more_day.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/music/game/stand_tall.ogg b/src/main/resources/assets/squidcoder/sounds/music/game/stand_tall.ogg new file mode 100644 index 0000000..903a478 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/music/game/stand_tall.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/music/game/wending.ogg b/src/main/resources/assets/squidcoder/sounds/music/game/wending.ogg new file mode 100644 index 0000000..1589826 Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/music/game/wending.ogg differ diff --git a/src/main/resources/assets/squidcoder/sounds/records/otherside.ogg b/src/main/resources/assets/squidcoder/sounds/records/otherside.ogg new file mode 100644 index 0000000..ae1b93b Binary files /dev/null and b/src/main/resources/assets/squidcoder/sounds/records/otherside.ogg differ diff --git a/src/main/resources/assets/squidcoder/textures/block/amethyst_block.png b/src/main/resources/assets/squidcoder/textures/block/amethyst_block.png new file mode 100644 index 0000000..4e3e8b1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/amethyst_block.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/amethyst_cluster.png b/src/main/resources/assets/squidcoder/textures/block/amethyst_cluster.png new file mode 100644 index 0000000..c928f20 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/amethyst_cluster.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/big_dripleaf_side.png b/src/main/resources/assets/squidcoder/textures/block/big_dripleaf_side.png new file mode 100644 index 0000000..f596e32 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/big_dripleaf_side.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/big_dripleaf_stem.png b/src/main/resources/assets/squidcoder/textures/block/big_dripleaf_stem.png new file mode 100644 index 0000000..56b1aee Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/big_dripleaf_stem.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/big_dripleaf_tip.png b/src/main/resources/assets/squidcoder/textures/block/big_dripleaf_tip.png new file mode 100644 index 0000000..5f42e9a Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/big_dripleaf_tip.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/big_dripleaf_top.png b/src/main/resources/assets/squidcoder/textures/block/big_dripleaf_top.png new file mode 100644 index 0000000..f697484 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/big_dripleaf_top.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/black_candle.png b/src/main/resources/assets/squidcoder/textures/block/black_candle.png new file mode 100644 index 0000000..35f5194 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/black_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/black_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/black_candle_lit.png new file mode 100644 index 0000000..2977e0a Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/black_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/blue_candle.png b/src/main/resources/assets/squidcoder/textures/block/blue_candle.png new file mode 100644 index 0000000..96f1bac Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/blue_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/blue_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/blue_candle_lit.png new file mode 100644 index 0000000..2f18866 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/blue_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/brown_candle.png b/src/main/resources/assets/squidcoder/textures/block/brown_candle.png new file mode 100644 index 0000000..19368dc Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/brown_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/brown_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/brown_candle_lit.png new file mode 100644 index 0000000..11cf40c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/brown_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/budding_amethyst.png b/src/main/resources/assets/squidcoder/textures/block/budding_amethyst.png new file mode 100644 index 0000000..edde805 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/budding_amethyst.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/calcite.png b/src/main/resources/assets/squidcoder/textures/block/calcite.png new file mode 100644 index 0000000..4c2b0dd Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/calcite.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/candle.png b/src/main/resources/assets/squidcoder/textures/block/candle.png new file mode 100644 index 0000000..d11559b Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/candle_lit.png new file mode 100644 index 0000000..9aa011e Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/cave_vines.png b/src/main/resources/assets/squidcoder/textures/block/cave_vines.png new file mode 100644 index 0000000..335940e Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/cave_vines.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/cave_vines_lit.png b/src/main/resources/assets/squidcoder/textures/block/cave_vines_lit.png new file mode 100644 index 0000000..1969221 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/cave_vines_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/cave_vines_plant.png b/src/main/resources/assets/squidcoder/textures/block/cave_vines_plant.png new file mode 100644 index 0000000..47a4363 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/cave_vines_plant.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/cave_vines_plant_lit.png b/src/main/resources/assets/squidcoder/textures/block/cave_vines_plant_lit.png new file mode 100644 index 0000000..8eee437 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/cave_vines_plant_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/chiseled_deepslate.png b/src/main/resources/assets/squidcoder/textures/block/chiseled_deepslate.png new file mode 100644 index 0000000..b8a7014 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/chiseled_deepslate.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/cobbled_deepslate.png b/src/main/resources/assets/squidcoder/textures/block/cobbled_deepslate.png new file mode 100644 index 0000000..50fe34e Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/cobbled_deepslate.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/copper_block.png b/src/main/resources/assets/squidcoder/textures/block/copper_block.png new file mode 100644 index 0000000..f7ce8b4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/copper_block.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/copper_ore.png b/src/main/resources/assets/squidcoder/textures/block/copper_ore.png new file mode 100644 index 0000000..c7aea0c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/copper_ore.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/cracked_deepslate_bricks.png b/src/main/resources/assets/squidcoder/textures/block/cracked_deepslate_bricks.png new file mode 100644 index 0000000..7f8f833 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/cracked_deepslate_bricks.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/cracked_deepslate_tiles.png b/src/main/resources/assets/squidcoder/textures/block/cracked_deepslate_tiles.png new file mode 100644 index 0000000..b17d116 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/cracked_deepslate_tiles.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/cut_copper.png b/src/main/resources/assets/squidcoder/textures/block/cut_copper.png new file mode 100644 index 0000000..cdb7f23 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/cut_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/cyan_candle.png b/src/main/resources/assets/squidcoder/textures/block/cyan_candle.png new file mode 100644 index 0000000..ab18f4f Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/cyan_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/cyan_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/cyan_candle_lit.png new file mode 100644 index 0000000..51e9c30 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/cyan_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/debug.png b/src/main/resources/assets/squidcoder/textures/block/debug.png new file mode 100644 index 0000000..8643d0a Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/debug.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/debug2.png b/src/main/resources/assets/squidcoder/textures/block/debug2.png new file mode 100644 index 0000000..e5b0d26 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/debug2.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/deepslate.png b/src/main/resources/assets/squidcoder/textures/block/deepslate.png new file mode 100644 index 0000000..b07b09d Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/deepslate.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/deepslate_bricks.png b/src/main/resources/assets/squidcoder/textures/block/deepslate_bricks.png new file mode 100644 index 0000000..2cf2a17 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/deepslate_bricks.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/deepslate_coal_ore.png b/src/main/resources/assets/squidcoder/textures/block/deepslate_coal_ore.png new file mode 100644 index 0000000..3b9768c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/deepslate_coal_ore.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/deepslate_copper_ore.png b/src/main/resources/assets/squidcoder/textures/block/deepslate_copper_ore.png new file mode 100644 index 0000000..6dc547d Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/deepslate_copper_ore.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/deepslate_diamond_ore.png b/src/main/resources/assets/squidcoder/textures/block/deepslate_diamond_ore.png new file mode 100644 index 0000000..86772d0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/deepslate_diamond_ore.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/deepslate_emerald_ore.png b/src/main/resources/assets/squidcoder/textures/block/deepslate_emerald_ore.png new file mode 100644 index 0000000..31720fd Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/deepslate_emerald_ore.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/deepslate_gold_ore.png b/src/main/resources/assets/squidcoder/textures/block/deepslate_gold_ore.png new file mode 100644 index 0000000..be52acb Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/deepslate_gold_ore.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/deepslate_iron_ore.png b/src/main/resources/assets/squidcoder/textures/block/deepslate_iron_ore.png new file mode 100644 index 0000000..96c170e Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/deepslate_iron_ore.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/deepslate_lapis_ore.png b/src/main/resources/assets/squidcoder/textures/block/deepslate_lapis_ore.png new file mode 100644 index 0000000..0e9c8cc Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/deepslate_lapis_ore.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/deepslate_redstone_ore.png b/src/main/resources/assets/squidcoder/textures/block/deepslate_redstone_ore.png new file mode 100644 index 0000000..6a1419a Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/deepslate_redstone_ore.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/deepslate_tiles.png b/src/main/resources/assets/squidcoder/textures/block/deepslate_tiles.png new file mode 100644 index 0000000..7eebeb6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/deepslate_tiles.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/deepslate_top.png b/src/main/resources/assets/squidcoder/textures/block/deepslate_top.png new file mode 100644 index 0000000..2569e50 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/deepslate_top.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/destroy_stage_0.png b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_0.png new file mode 100644 index 0000000..f65b7ed Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_0.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/destroy_stage_1.png b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_1.png new file mode 100644 index 0000000..7c91596 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_1.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/destroy_stage_2.png b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_2.png new file mode 100644 index 0000000..dadd6b0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_2.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/destroy_stage_3.png b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_3.png new file mode 100644 index 0000000..52a40b6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_3.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/destroy_stage_4.png b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_4.png new file mode 100644 index 0000000..e37c88a Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_4.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/destroy_stage_5.png b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_5.png new file mode 100644 index 0000000..9590d2f Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_5.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/destroy_stage_6.png b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_6.png new file mode 100644 index 0000000..fb00ade Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_6.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/destroy_stage_7.png b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_7.png new file mode 100644 index 0000000..0b40c78 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_7.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/destroy_stage_8.png b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_8.png new file mode 100644 index 0000000..c0bf1de Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_8.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/destroy_stage_9.png b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_9.png new file mode 100644 index 0000000..e3185f8 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/destroy_stage_9.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/dripstone_block.png b/src/main/resources/assets/squidcoder/textures/block/dripstone_block.png new file mode 100644 index 0000000..c3fbb5b Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/dripstone_block.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/exposed_copper.png b/src/main/resources/assets/squidcoder/textures/block/exposed_copper.png new file mode 100644 index 0000000..d265f4b Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/exposed_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/exposed_cut_copper.png b/src/main/resources/assets/squidcoder/textures/block/exposed_cut_copper.png new file mode 100644 index 0000000..b8d527c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/exposed_cut_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/flowering_azalea_leaves.png b/src/main/resources/assets/squidcoder/textures/block/flowering_azalea_leaves.png new file mode 100644 index 0000000..2de12a3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/flowering_azalea_leaves.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/flowering_azalea_side.png b/src/main/resources/assets/squidcoder/textures/block/flowering_azalea_side.png new file mode 100644 index 0000000..c61e516 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/flowering_azalea_side.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/flowering_azalea_top.png b/src/main/resources/assets/squidcoder/textures/block/flowering_azalea_top.png new file mode 100644 index 0000000..921bb8f Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/flowering_azalea_top.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/glow_item_frame.png b/src/main/resources/assets/squidcoder/textures/block/glow_item_frame.png new file mode 100644 index 0000000..633e567 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/glow_item_frame.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/glow_lichen.png b/src/main/resources/assets/squidcoder/textures/block/glow_lichen.png new file mode 100644 index 0000000..d6fd870 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/glow_lichen.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/gray_candle.png b/src/main/resources/assets/squidcoder/textures/block/gray_candle.png new file mode 100644 index 0000000..5af00c7 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/gray_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/gray_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/gray_candle_lit.png new file mode 100644 index 0000000..b95b6f6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/gray_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/green_candle.png b/src/main/resources/assets/squidcoder/textures/block/green_candle.png new file mode 100644 index 0000000..5afa695 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/green_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/green_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/green_candle_lit.png new file mode 100644 index 0000000..e7e621c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/green_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/hanging_roots.png b/src/main/resources/assets/squidcoder/textures/block/hanging_roots.png new file mode 100644 index 0000000..5aae89e Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/hanging_roots.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/large_amethyst_bud.png b/src/main/resources/assets/squidcoder/textures/block/large_amethyst_bud.png new file mode 100644 index 0000000..337f13d Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/large_amethyst_bud.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/light_blue_candle.png b/src/main/resources/assets/squidcoder/textures/block/light_blue_candle.png new file mode 100644 index 0000000..1c6cb84 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/light_blue_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/light_blue_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/light_blue_candle_lit.png new file mode 100644 index 0000000..56bc7cc Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/light_blue_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/light_gray_candle.png b/src/main/resources/assets/squidcoder/textures/block/light_gray_candle.png new file mode 100644 index 0000000..4704ceb Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/light_gray_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/light_gray_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/light_gray_candle_lit.png new file mode 100644 index 0000000..9b8981f Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/light_gray_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/lightning_rod.png b/src/main/resources/assets/squidcoder/textures/block/lightning_rod.png new file mode 100644 index 0000000..5c9a13d Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/lightning_rod.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/lightning_rod_on.png b/src/main/resources/assets/squidcoder/textures/block/lightning_rod_on.png new file mode 100644 index 0000000..a380d68 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/lightning_rod_on.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/lime_candle.png b/src/main/resources/assets/squidcoder/textures/block/lime_candle.png new file mode 100644 index 0000000..03defb4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/lime_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/lime_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/lime_candle_lit.png new file mode 100644 index 0000000..7431d4b Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/lime_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/magenta_candle.png b/src/main/resources/assets/squidcoder/textures/block/magenta_candle.png new file mode 100644 index 0000000..dd7c958 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/magenta_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/magenta_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/magenta_candle_lit.png new file mode 100644 index 0000000..340c04d Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/magenta_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/medium_amethyst_bud.png b/src/main/resources/assets/squidcoder/textures/block/medium_amethyst_bud.png new file mode 100644 index 0000000..a0f84f0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/medium_amethyst_bud.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/metal_press_side.png b/src/main/resources/assets/squidcoder/textures/block/metal_press_side.png new file mode 100644 index 0000000..a13c535 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/metal_press_side.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/metal_press_top.png b/src/main/resources/assets/squidcoder/textures/block/metal_press_top.png new file mode 100644 index 0000000..fc314b8 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/metal_press_top.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/orange_candle.png b/src/main/resources/assets/squidcoder/textures/block/orange_candle.png new file mode 100644 index 0000000..bed564a Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/orange_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/orange_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/orange_candle_lit.png new file mode 100644 index 0000000..3a7ec6f Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/orange_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/oxidized_copper.png b/src/main/resources/assets/squidcoder/textures/block/oxidized_copper.png new file mode 100644 index 0000000..0ad69bc Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/oxidized_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/oxidized_cut_copper.png b/src/main/resources/assets/squidcoder/textures/block/oxidized_cut_copper.png new file mode 100644 index 0000000..7da2ce3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/oxidized_cut_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/pink_candle.png b/src/main/resources/assets/squidcoder/textures/block/pink_candle.png new file mode 100644 index 0000000..e496990 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/pink_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/pink_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/pink_candle_lit.png new file mode 100644 index 0000000..75c95e9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/pink_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_base.png b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_base.png new file mode 100644 index 0000000..b3d97cb Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_base.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_frustum.png b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_frustum.png new file mode 100644 index 0000000..1cd4515 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_frustum.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_middle.png b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_middle.png new file mode 100644 index 0000000..f49ffd3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_middle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_tip.png b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_tip.png new file mode 100644 index 0000000..91f73b3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_tip.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_tip_merge.png b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_tip_merge.png new file mode 100644 index 0000000..38620f5 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_down_tip_merge.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_base.png b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_base.png new file mode 100644 index 0000000..86e7f40 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_base.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_frustum.png b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_frustum.png new file mode 100644 index 0000000..e90a9f4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_frustum.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_middle.png b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_middle.png new file mode 100644 index 0000000..eb66e9b Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_middle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_tip.png b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_tip.png new file mode 100644 index 0000000..9c702a7 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_tip.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_tip_merge.png b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_tip_merge.png new file mode 100644 index 0000000..0cb03ad Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/pointed_dripstone_up_tip_merge.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/polished_deepslate.png b/src/main/resources/assets/squidcoder/textures/block/polished_deepslate.png new file mode 100644 index 0000000..dfcf750 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/polished_deepslate.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/potted_azalea_bush_plant.png b/src/main/resources/assets/squidcoder/textures/block/potted_azalea_bush_plant.png new file mode 100644 index 0000000..2eccc7a Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/potted_azalea_bush_plant.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/potted_azalea_bush_side.png b/src/main/resources/assets/squidcoder/textures/block/potted_azalea_bush_side.png new file mode 100644 index 0000000..3b8c9ea Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/potted_azalea_bush_side.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/potted_azalea_bush_top.png b/src/main/resources/assets/squidcoder/textures/block/potted_azalea_bush_top.png new file mode 100644 index 0000000..cc78fda Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/potted_azalea_bush_top.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/potted_flowering_azalea_bush_plant.png b/src/main/resources/assets/squidcoder/textures/block/potted_flowering_azalea_bush_plant.png new file mode 100644 index 0000000..38d9148 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/potted_flowering_azalea_bush_plant.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/potted_flowering_azalea_bush_side.png b/src/main/resources/assets/squidcoder/textures/block/potted_flowering_azalea_bush_side.png new file mode 100644 index 0000000..6baabec Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/potted_flowering_azalea_bush_side.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/potted_flowering_azalea_bush_top.png b/src/main/resources/assets/squidcoder/textures/block/potted_flowering_azalea_bush_top.png new file mode 100644 index 0000000..eb47df6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/potted_flowering_azalea_bush_top.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/powder_snow.png b/src/main/resources/assets/squidcoder/textures/block/powder_snow.png new file mode 100644 index 0000000..f6c2279 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/powder_snow.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/purple_candle.png b/src/main/resources/assets/squidcoder/textures/block/purple_candle.png new file mode 100644 index 0000000..a26d461 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/purple_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/purple_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/purple_candle_lit.png new file mode 100644 index 0000000..7b0bc37 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/purple_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/raw_copper_block.png b/src/main/resources/assets/squidcoder/textures/block/raw_copper_block.png new file mode 100644 index 0000000..9110142 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/raw_copper_block.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/raw_gold_block.png b/src/main/resources/assets/squidcoder/textures/block/raw_gold_block.png new file mode 100644 index 0000000..ba155c4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/raw_gold_block.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/raw_iron_block.png b/src/main/resources/assets/squidcoder/textures/block/raw_iron_block.png new file mode 100644 index 0000000..3b34f86 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/raw_iron_block.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/red_candle.png b/src/main/resources/assets/squidcoder/textures/block/red_candle.png new file mode 100644 index 0000000..92d2216 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/red_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/red_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/red_candle_lit.png new file mode 100644 index 0000000..edf35cb Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/red_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/rooted_dirt.png b/src/main/resources/assets/squidcoder/textures/block/rooted_dirt.png new file mode 100644 index 0000000..b28f0a3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/rooted_dirt.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_bottom.png b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_bottom.png new file mode 100644 index 0000000..a3bf18f Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_bottom.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_side.png b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_side.png new file mode 100644 index 0000000..e26bf90 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_side.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_tendril_active.png b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_tendril_active.png new file mode 100644 index 0000000..16ce197 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_tendril_active.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_tendril_active.png.mcmeta b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_tendril_active.png.mcmeta new file mode 100644 index 0000000..d1cd079 --- /dev/null +++ b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_tendril_active.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation": { + "frametime": 1 + } +} diff --git a/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_tendril_inactive.png b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_tendril_inactive.png new file mode 100644 index 0000000..0153565 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_tendril_inactive.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_tendril_inactive.png.mcmeta b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_tendril_inactive.png.mcmeta new file mode 100644 index 0000000..36578bc --- /dev/null +++ b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_tendril_inactive.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation": { + "frametime": 2 + } +} diff --git a/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_top.png b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_top.png new file mode 100644 index 0000000..f178c12 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/sculk_sensor_top.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/silver_block.png b/src/main/resources/assets/squidcoder/textures/block/silver_block.png new file mode 100644 index 0000000..990ff7d Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/silver_block.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/silver_ore.png b/src/main/resources/assets/squidcoder/textures/block/silver_ore.png new file mode 100644 index 0000000..c840c05 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/silver_ore.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/small_amethyst_bud.png b/src/main/resources/assets/squidcoder/textures/block/small_amethyst_bud.png new file mode 100644 index 0000000..443c2d2 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/small_amethyst_bud.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/small_dripleaf_side.png b/src/main/resources/assets/squidcoder/textures/block/small_dripleaf_side.png new file mode 100644 index 0000000..28b09da Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/small_dripleaf_side.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/small_dripleaf_stem_bottom.png b/src/main/resources/assets/squidcoder/textures/block/small_dripleaf_stem_bottom.png new file mode 100644 index 0000000..5a3b9e6 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/small_dripleaf_stem_bottom.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/small_dripleaf_stem_top.png b/src/main/resources/assets/squidcoder/textures/block/small_dripleaf_stem_top.png new file mode 100644 index 0000000..596a02c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/small_dripleaf_stem_top.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/small_dripleaf_top.png b/src/main/resources/assets/squidcoder/textures/block/small_dripleaf_top.png new file mode 100644 index 0000000..34efa1f Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/small_dripleaf_top.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/spore_blossom.png b/src/main/resources/assets/squidcoder/textures/block/spore_blossom.png new file mode 100644 index 0000000..164bd29 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/spore_blossom.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/spore_blossom_base.png b/src/main/resources/assets/squidcoder/textures/block/spore_blossom_base.png new file mode 100644 index 0000000..5edd86b Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/spore_blossom_base.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/tinted_glass.png b/src/main/resources/assets/squidcoder/textures/block/tinted_glass.png new file mode 100644 index 0000000..cd1dd46 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/tinted_glass.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/tuff.png b/src/main/resources/assets/squidcoder/textures/block/tuff.png new file mode 100644 index 0000000..0880433 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/tuff.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/waxed_copper_block.png b/src/main/resources/assets/squidcoder/textures/block/waxed_copper_block.png new file mode 100644 index 0000000..f7ce8b4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/waxed_copper_block.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/waxed_cut_copper.png b/src/main/resources/assets/squidcoder/textures/block/waxed_cut_copper.png new file mode 100644 index 0000000..cdb7f23 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/waxed_cut_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/waxed_exposed_copper.png b/src/main/resources/assets/squidcoder/textures/block/waxed_exposed_copper.png new file mode 100644 index 0000000..d265f4b Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/waxed_exposed_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/waxed_exposed_cut_copper.png b/src/main/resources/assets/squidcoder/textures/block/waxed_exposed_cut_copper.png new file mode 100644 index 0000000..b8d527c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/waxed_exposed_cut_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/waxed_oxidized_copper.png b/src/main/resources/assets/squidcoder/textures/block/waxed_oxidized_copper.png new file mode 100644 index 0000000..0ad69bc Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/waxed_oxidized_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/waxed_oxidized_cut_copper.png b/src/main/resources/assets/squidcoder/textures/block/waxed_oxidized_cut_copper.png new file mode 100644 index 0000000..7da2ce3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/waxed_oxidized_cut_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/waxed_weathered_copper.png b/src/main/resources/assets/squidcoder/textures/block/waxed_weathered_copper.png new file mode 100644 index 0000000..10d24e1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/waxed_weathered_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/waxed_weathered_cut_copper.png b/src/main/resources/assets/squidcoder/textures/block/waxed_weathered_cut_copper.png new file mode 100644 index 0000000..8d9ed40 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/waxed_weathered_cut_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/weathered_copper.png b/src/main/resources/assets/squidcoder/textures/block/weathered_copper.png new file mode 100644 index 0000000..10d24e1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/weathered_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/weathered_cut_copper.png b/src/main/resources/assets/squidcoder/textures/block/weathered_cut_copper.png new file mode 100644 index 0000000..8d9ed40 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/weathered_cut_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/white_candle.png b/src/main/resources/assets/squidcoder/textures/block/white_candle.png new file mode 100644 index 0000000..2792438 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/white_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/white_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/white_candle_lit.png new file mode 100644 index 0000000..1ad1ae4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/white_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/yellow_candle.png b/src/main/resources/assets/squidcoder/textures/block/yellow_candle.png new file mode 100644 index 0000000..e547dfc Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/yellow_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/block/yellow_candle_lit.png b/src/main/resources/assets/squidcoder/textures/block/yellow_candle_lit.png new file mode 100644 index 0000000..aeaca6b Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/block/yellow_candle_lit.png differ diff --git a/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_blue.png b/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_blue.png new file mode 100644 index 0000000..1437f05 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_blue.png differ diff --git a/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_cyan.png b/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_cyan.png new file mode 100644 index 0000000..5a13b16 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_cyan.png differ diff --git a/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_gold.png b/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_gold.png new file mode 100644 index 0000000..186110e Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_gold.png differ diff --git a/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_lucy.png b/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_lucy.png new file mode 100644 index 0000000..0485d3f Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_lucy.png differ diff --git a/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_wild.png b/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_wild.png new file mode 100644 index 0000000..7a1cffa Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/entity/axolotl/axolotl_wild.png differ diff --git a/src/main/resources/assets/squidcoder/textures/entity/goat/goat.png b/src/main/resources/assets/squidcoder/textures/entity/goat/goat.png new file mode 100644 index 0000000..c1f4926 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/entity/goat/goat.png differ diff --git a/src/main/resources/assets/squidcoder/textures/entity/squid/glow_squid.png b/src/main/resources/assets/squidcoder/textures/entity/squid/glow_squid.png new file mode 100644 index 0000000..bfc8e0e Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/entity/squid/glow_squid.png differ diff --git a/src/main/resources/assets/squidcoder/textures/gui/bundle.png b/src/main/resources/assets/squidcoder/textures/gui/bundle.png new file mode 100644 index 0000000..a5b55ee Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/gui/bundle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/gui/crafting_table.png b/src/main/resources/assets/squidcoder/textures/gui/crafting_table.png new file mode 100644 index 0000000..38c05c0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/gui/crafting_table.png differ diff --git a/src/main/resources/assets/squidcoder/textures/gui/dispenser.png b/src/main/resources/assets/squidcoder/textures/gui/dispenser.png new file mode 100644 index 0000000..f840ee7 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/gui/dispenser.png differ diff --git a/src/main/resources/assets/squidcoder/textures/gui/frozen_gui.png b/src/main/resources/assets/squidcoder/textures/gui/frozen_gui.png new file mode 100644 index 0000000..8afa4f9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/gui/frozen_gui.png differ diff --git a/src/main/resources/assets/squidcoder/textures/gui/furnace.png b/src/main/resources/assets/squidcoder/textures/gui/furnace.png new file mode 100644 index 0000000..f40de39 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/gui/furnace.png differ diff --git a/src/main/resources/assets/squidcoder/textures/gui/generic_54.png b/src/main/resources/assets/squidcoder/textures/gui/generic_54.png new file mode 100644 index 0000000..3efcb90 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/gui/generic_54.png differ diff --git a/src/main/resources/assets/squidcoder/textures/gui/grindstone.png b/src/main/resources/assets/squidcoder/textures/gui/grindstone.png new file mode 100644 index 0000000..e420e05 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/gui/grindstone.png differ diff --git a/src/main/resources/assets/squidcoder/textures/gui/hopper.png b/src/main/resources/assets/squidcoder/textures/gui/hopper.png new file mode 100644 index 0000000..56f4b89 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/gui/hopper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/gui/metal_press.png b/src/main/resources/assets/squidcoder/textures/gui/metal_press.png new file mode 100644 index 0000000..bbccc8c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/gui/metal_press.png differ diff --git a/src/main/resources/assets/squidcoder/textures/gui/shulker_box.png b/src/main/resources/assets/squidcoder/textures/gui/shulker_box.png new file mode 100644 index 0000000..5210658 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/gui/shulker_box.png differ diff --git a/src/main/resources/assets/squidcoder/textures/gui/smithing.png b/src/main/resources/assets/squidcoder/textures/gui/smithing.png new file mode 100644 index 0000000..97a6e6d Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/gui/smithing.png differ diff --git a/src/main/resources/assets/squidcoder/textures/gui/villager2.png b/src/main/resources/assets/squidcoder/textures/gui/villager2.png new file mode 100644 index 0000000..ab25b94 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/gui/villager2.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/amethyst_shard.png b/src/main/resources/assets/squidcoder/textures/item/amethyst_shard.png new file mode 100644 index 0000000..4dce791 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/amethyst_shard.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/axolotl_bucket.png b/src/main/resources/assets/squidcoder/textures/item/axolotl_bucket.png new file mode 100644 index 0000000..6ed17e8 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/axolotl_bucket.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/black_candle.png b/src/main/resources/assets/squidcoder/textures/item/black_candle.png new file mode 100644 index 0000000..2b7ae4c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/black_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/blue_candle.png b/src/main/resources/assets/squidcoder/textures/item/blue_candle.png new file mode 100644 index 0000000..3e38fa3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/blue_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/brown_candle.png b/src/main/resources/assets/squidcoder/textures/item/brown_candle.png new file mode 100644 index 0000000..f34a0a5 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/brown_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/bundle.png b/src/main/resources/assets/squidcoder/textures/item/bundle.png new file mode 100644 index 0000000..991f895 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/bundle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/bundle_filled.png b/src/main/resources/assets/squidcoder/textures/item/bundle_filled.png new file mode 100644 index 0000000..5b29f04 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/bundle_filled.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/candle.png b/src/main/resources/assets/squidcoder/textures/item/candle.png new file mode 100644 index 0000000..246c9e1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/copper_ingot.png b/src/main/resources/assets/squidcoder/textures/item/copper_ingot.png new file mode 100644 index 0000000..bd252f0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/copper_ingot.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/cyan_candle.png b/src/main/resources/assets/squidcoder/textures/item/cyan_candle.png new file mode 100644 index 0000000..6958b65 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/cyan_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/glow_berries.png b/src/main/resources/assets/squidcoder/textures/item/glow_berries.png new file mode 100644 index 0000000..7991899 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/glow_berries.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/glow_ink_sac.png b/src/main/resources/assets/squidcoder/textures/item/glow_ink_sac.png new file mode 100644 index 0000000..210ef56 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/glow_ink_sac.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/glow_item_frame.png b/src/main/resources/assets/squidcoder/textures/item/glow_item_frame.png new file mode 100644 index 0000000..65a1b23 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/glow_item_frame.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/gray_candle.png b/src/main/resources/assets/squidcoder/textures/item/gray_candle.png new file mode 100644 index 0000000..48513ed Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/gray_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/green_candle.png b/src/main/resources/assets/squidcoder/textures/item/green_candle.png new file mode 100644 index 0000000..b562e1b Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/green_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light.png b/src/main/resources/assets/squidcoder/textures/item/light.png new file mode 100644 index 0000000..9204f51 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_00.png b/src/main/resources/assets/squidcoder/textures/item/light_00.png new file mode 100644 index 0000000..7dac321 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_00.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_01.png b/src/main/resources/assets/squidcoder/textures/item/light_01.png new file mode 100644 index 0000000..3561c3c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_01.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_02.png b/src/main/resources/assets/squidcoder/textures/item/light_02.png new file mode 100644 index 0000000..3f717f0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_02.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_03.png b/src/main/resources/assets/squidcoder/textures/item/light_03.png new file mode 100644 index 0000000..adb4b5c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_03.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_04.png b/src/main/resources/assets/squidcoder/textures/item/light_04.png new file mode 100644 index 0000000..1ce4596 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_04.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_05.png b/src/main/resources/assets/squidcoder/textures/item/light_05.png new file mode 100644 index 0000000..ff669e9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_05.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_06.png b/src/main/resources/assets/squidcoder/textures/item/light_06.png new file mode 100644 index 0000000..dcb9ad1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_06.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_07.png b/src/main/resources/assets/squidcoder/textures/item/light_07.png new file mode 100644 index 0000000..5628636 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_07.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_08.png b/src/main/resources/assets/squidcoder/textures/item/light_08.png new file mode 100644 index 0000000..487235c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_08.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_09.png b/src/main/resources/assets/squidcoder/textures/item/light_09.png new file mode 100644 index 0000000..61c6a2b Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_09.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_10.png b/src/main/resources/assets/squidcoder/textures/item/light_10.png new file mode 100644 index 0000000..11b8cd4 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_10.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_11.png b/src/main/resources/assets/squidcoder/textures/item/light_11.png new file mode 100644 index 0000000..f469c57 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_11.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_12.png b/src/main/resources/assets/squidcoder/textures/item/light_12.png new file mode 100644 index 0000000..ddd6886 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_12.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_13.png b/src/main/resources/assets/squidcoder/textures/item/light_13.png new file mode 100644 index 0000000..f8381bb Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_13.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_14.png b/src/main/resources/assets/squidcoder/textures/item/light_14.png new file mode 100644 index 0000000..c298d7f Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_14.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_15.png b/src/main/resources/assets/squidcoder/textures/item/light_15.png new file mode 100644 index 0000000..a42526c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_15.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_blue_candle.png b/src/main/resources/assets/squidcoder/textures/item/light_blue_candle.png new file mode 100644 index 0000000..9fc62b1 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_blue_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/light_gray_candle.png b/src/main/resources/assets/squidcoder/textures/item/light_gray_candle.png new file mode 100644 index 0000000..578eb46 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/light_gray_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/lime_candle.png b/src/main/resources/assets/squidcoder/textures/item/lime_candle.png new file mode 100644 index 0000000..7834ace Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/lime_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/magenta_candle.png b/src/main/resources/assets/squidcoder/textures/item/magenta_candle.png new file mode 100644 index 0000000..c58d586 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/magenta_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/orange_candle.png b/src/main/resources/assets/squidcoder/textures/item/orange_candle.png new file mode 100644 index 0000000..e4529e7 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/orange_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/pink_candle.png b/src/main/resources/assets/squidcoder/textures/item/pink_candle.png new file mode 100644 index 0000000..7a87362 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/pink_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/pointed_dripstone.png b/src/main/resources/assets/squidcoder/textures/item/pointed_dripstone.png new file mode 100644 index 0000000..dcd1090 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/pointed_dripstone.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/potion.png b/src/main/resources/assets/squidcoder/textures/item/potion.png new file mode 100644 index 0000000..b86b4b7 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/potion.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/potion_overlay.png b/src/main/resources/assets/squidcoder/textures/item/potion_overlay.png new file mode 100644 index 0000000..852260d Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/potion_overlay.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/powder_snow_bucket.png b/src/main/resources/assets/squidcoder/textures/item/powder_snow_bucket.png new file mode 100644 index 0000000..3c5522d Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/powder_snow_bucket.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/purple_candle.png b/src/main/resources/assets/squidcoder/textures/item/purple_candle.png new file mode 100644 index 0000000..4e2396e Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/purple_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/raw_copper.png b/src/main/resources/assets/squidcoder/textures/item/raw_copper.png new file mode 100644 index 0000000..c03d959 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/raw_copper.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/raw_gold.png b/src/main/resources/assets/squidcoder/textures/item/raw_gold.png new file mode 100644 index 0000000..4d41e69 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/raw_gold.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/raw_iron.png b/src/main/resources/assets/squidcoder/textures/item/raw_iron.png new file mode 100644 index 0000000..6508fb0 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/raw_iron.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/red_candle.png b/src/main/resources/assets/squidcoder/textures/item/red_candle.png new file mode 100644 index 0000000..b7690c3 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/red_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/silver_dust.png b/src/main/resources/assets/squidcoder/textures/item/silver_dust.png new file mode 100644 index 0000000..205062c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/silver_dust.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/silver_ingot.png b/src/main/resources/assets/squidcoder/textures/item/silver_ingot.png new file mode 100644 index 0000000..6543543 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/silver_ingot.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/silver_nugget.png b/src/main/resources/assets/squidcoder/textures/item/silver_nugget.png new file mode 100644 index 0000000..b08dd6f Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/silver_nugget.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/spawn_egg.png b/src/main/resources/assets/squidcoder/textures/item/spawn_egg.png new file mode 100644 index 0000000..f4c7dee Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/spawn_egg.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/spawn_egg_overlay.png b/src/main/resources/assets/squidcoder/textures/item/spawn_egg_overlay.png new file mode 100644 index 0000000..83ec78f Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/spawn_egg_overlay.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/spyglass.png b/src/main/resources/assets/squidcoder/textures/item/spyglass.png new file mode 100644 index 0000000..e495d82 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/spyglass.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/spyglass_model.png b/src/main/resources/assets/squidcoder/textures/item/spyglass_model.png new file mode 100644 index 0000000..bd56039 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/spyglass_model.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/squidcoder_logo.png b/src/main/resources/assets/squidcoder/textures/item/squidcoder_logo.png new file mode 100644 index 0000000..4d561ab Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/squidcoder_logo.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/white_candle.png b/src/main/resources/assets/squidcoder/textures/item/white_candle.png new file mode 100644 index 0000000..6c768ac Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/white_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/item/yellow_candle.png b/src/main/resources/assets/squidcoder/textures/item/yellow_candle.png new file mode 100644 index 0000000..817a44c Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/item/yellow_candle.png differ diff --git a/src/main/resources/assets/squidcoder/textures/misc/powder_snow_outline.png b/src/main/resources/assets/squidcoder/textures/misc/powder_snow_outline.png new file mode 100644 index 0000000..2b3c026 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/misc/powder_snow_outline.png differ diff --git a/src/main/resources/assets/squidcoder/textures/misc/spyglass_scope.png b/src/main/resources/assets/squidcoder/textures/misc/spyglass_scope.png new file mode 100644 index 0000000..87a81c9 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/misc/spyglass_scope.png differ diff --git a/src/main/resources/assets/squidcoder/textures/particle/glow.png b/src/main/resources/assets/squidcoder/textures/particle/glow.png new file mode 100644 index 0000000..23e4623 Binary files /dev/null and b/src/main/resources/assets/squidcoder/textures/particle/glow.png differ diff --git a/src/main/resources/pack.mcmeta b/src/main/resources/pack.mcmeta new file mode 100644 index 0000000..5b82f2b --- /dev/null +++ b/src/main/resources/pack.mcmeta @@ -0,0 +1,7 @@ +{ + "pack": { + "description": "The SquidCoder Mod 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." + } +}